Bcal

Jul 20, 2023

Storage expression, unit conversion & address offset CLI calculator

bcal Byte CALculator is a REPL CLI utility for storage expressions, unit conversions or address calculations. If you can’t calculate the hex address offset for 512 - 16 MiB, or the value when the 43rd bit of a 64-bit address is set mentally, bcal is for you.

It has a bc mode for general-purpose numerical calculations.

bcal follows Ubuntu’s standard unit conversion and notation policy. Only 64-bit operating systems are supported.

Features

  • evaluate arithmetic expressions involving storage units
  • perform general purpose calculations using bc
  • convert to IEC/SI standard data storage units
  • interactive mode with the last valid result stored for reuse
  • show the address in bytes
  • show address as LBAOFFSET
  • convert CHS to LBA and vice versa
  • base conversion to binary, decimal and hex
  • custom sector size, max heads/cylinder and max sectors/track
  • minimal dependencies


Checkout these related ports:
  • Zn_poly - C library for polynomial arithmetic
  • Zimpl - Language to translate the LP models into .lp or .mps
  • Zegrapher - Software for plotting mathematical objects
  • Zarray - Dynamically typed N-D expression system based on xtensor
  • Z3 - Z3 Theorem Prover
  • Yices - SMT solver
  • Yacas - Yet Another Computer Algebra System
  • Xtensor - Multi-dimensional arrays with broadcasting and lazy computing
  • Xtensor-python - Python bindings for xtensor
  • Xtensor-io - Xtensor plugin to read/write images, audio files, numpy npz and HDF5
  • Xtensor-blas - BLAS extension to xtensor
  • Xspread - Spreadsheet program for X and terminals
  • Xppaut - Graphical tool for solving differential equations, etc
  • Xplot - X11 plotting package
  • Xlife++ - XLiFE++ eXtended Library of Finite Elements in C++