IMPORTANT:
Calc-O-Matic Version 0.01 is prototype software. This means it is
NOT complete. There are known defects, listed below,
and it is very likely to have serious unknown bugs as well.
Use this software at your own risk.
Lost Alternative assumes no liability for damages arising from
or related to the use of this software.
Calc-O-Matic is yet another calculator application. And as you are probably already aware, this is a prototype version which is in a pretty sorry state. Who can use this version? Someone with a very good sense of humor that only needs to perform simple functions on 32-bit integers. Someone who can resist the temptation of exotic Floating Point operations.
We decided to toss this sucker out there and see what we get back. So if you think you might be interested in such a beast at some point in the future, let us know. Everyone who sends us their comments, questions, feedback, flames, checks, money orders, CD's, or their first born male child will be eligible for a 50% discount when the real version becomes available. (No letter bombs please!)
About the only useful functions that are working in this version are the integer functions. You can enter values in Decimal, Hexadecimal, Octal or Binary and convert between them. Most of the operators (add, subtract, multiply, divide, modulus, and, or, exclusive or, shift left or right, rotate left or right, setting or clearing a bit are working on the integer values.
A few of the other conversions will work, for example: an integer can also be displayed as ascii characters, an ip address, a fixed point number (currently hardwired to 2 decimal digits), or as the floating point number that the 32 bit value represents. For example the hexadecimal number 456789AB can be entered in hex mode and displayed in floating point as 3704.604248.
Note: X is number currently displayed by the calculator and Y is the number above it in the stack. For example if you clicked on the following buttons: 5 ENTR 8, Y would be 5 and X would be 8.
+ -- Add X and Y
- -- Subtract X from Y
* -- Multiply X by Y
/ -- Divide Y by X
% -- Modulus Y with X
| -- Bitwise Or X with Y
& -- Bitwise And X with Y
<< -- Shift Y left X number of bits.
>> -- Shift Y right X number of bits.
^ -- Bitwise Exclusive Or X with Y.
CBIT -- Clear bit X in Y.
ROTL -- Rotate Y left X number of bits.
ROTR -- Rotate Y right X number of bits.
SBIT -- Set bit X in Y.
SQRT -- Square Root of X.
ANGL -- Display an integer as if it were an Angle
(7FFFFFFF Hex = 179.99... Degrees)
BIN -- Display an integer in Binary format.
CHAR -- Display an integer as if it were ASCII Characters.
[Currently cannot do UTF-8] :<
DEC -- Display an integer in Decimal format.
FIX -- Display an integer as if it were a Fixed Point Number
[Currently set to 2 decimal digits].
FLT -- Set Floating Point mode.
FRAC -- Display an integer as if it were a Fraction
(FFFFFFFF Hex = 0.999...)
HEX -- Display an integer in Hexadecimal format.
IEEE -- Display a Floating Point number in sign, mantissa
and fractional parts.
IP -- Display an integer as if it were an IP address
OCT -- Display an integer in Octal format.
TIME -- Display an integer as if it were a Time value
(0 = January 1, 1970 00:00)
BSP -- Backspace if entering, otherwise same as CLx.
[Typing 1 2 3 BSP leaves 12 in the X register]
CLx -- Clear X (0 -> X).
ENTR -- Push the stack up (X -> Y, Y -> Z, Z -> Q).
LSTx -- Recall the last X value.
R^ -- Roll the stack up (X -> Y, Y -> Z, Z -> Q, Q -> X).
Rv -- Roll the stack down (Y -> X, Z -> Y, Q -> Z, X -> Q).
RECL -- Recall a number from memory into X.
STOR -- Store X into memory.
X:Y -- Exchange X and Y (X -> Y, Y -> X).
32/64 -- Toggle between 32 Bit and 64 Bit word size.
SN/UN -- Toggle between Signed and Unsigned formats.
DG/RA -- Toggle between Degrees and Radians.
There are many known problems which have not been fixed yet. Please be wary of these nasty bugs:
If you experience problems installing or running Calc-O-Matic, or if you would like to send us your comments, please send e-mail us at calc-o-matic@lostalternative.com or via regular mail at:
Lost Alternative
P.O. Box 27511
Salt Lake City, UT 84127-0511
This program was written in the programming language Eiffel using the SEBL library, and compiled with the SmallEiffel compiler. SmallEiffel is the official GNU Eiffel compiler and is available (including the source) from the following website:
http://SmallEiffel.loria.frThe SEBL library of routines to allow SmallEiffel programs to access the BeOS API are available for download.