Calc - Java Calculator for cell-phones and
MIDP devices
Changelog:
- Fixed financial ir% solving for difficult input data
- Fixed display of "9.99", FIX 0 (displayed "11")
- Fixed NullPointerException on exit
- Fixed lockup when selecting monitor size of "0"
- Fixed display of "0.01" (displayed "0")
- Added unit arithmetic
- Added the matrix operations "rowx", "colx",
"amax", "amin", "->row", "->col", "->M" and
"break up".
- Added the stack operations "move dn#" and "move up#"
- Implemented factorization of numbers up to 263 and the
operations "gcd", "prime?" and "→prime".
- Displaying more than 16 digits for integers less than 263
- Number, menu and monitor fonts can be chosen independently from both
built-in and system fonts.
- Updated scientific constants to the CODATA internationally recommended
values of 2006
- Fixed numerous bugs
- Added grads as measure of angles, in addition to radians and degrees
- Added program flow operations LBL, GTO, GSB, RTN, STOP, ISG and DSE
- Long-running programs get a "screen saver" view with an option to
halt execution
- The old comparison operations x<y?, x<0?, etc. have been
reimplemented for more traditional usage. Instead of pushing 0 or 1 on the
stack, these operations now skip the next line if the result of the
comparison is false. Programs written for a previous verision of Calc that
use these operations will not work as intended in this
version.
- The source code has been reorganized into a directory structure more
suitable for a Java IDE. Project files for the Eclipse Java IDE have been
added, enabling development in Windows.
- Extra extra large fonts for some devices with big screens
- Fixed HEX mode input for phones without keyRepeated events
- Fixed bug with graph stop/run and zooming
- Program editing monitor mode
- 2D surface graph drawing
- Graph drawing stop/run and graph zooming
- Workaround for serious bug in phones from Nokia and Siemens
- Cx,y and Px,y for negative numbers
- Added erfc-1, phi and phi-1 (not very accurate)
- Complex integration and differentiation
- Complex matrices
- Implemented a modified version of the "guess" function from
http://sourceforge.net/projects/easycalc
- Help messages for many non-obvious error conditions
- Patches for Nokia and MIDP2
- Optimized floating point library, speedup almost 2x
- Fixed bug where "30 mod 3 = 3" and
"30 div 3 = 9"
- Solved some compatibility problems, especially for phones with
64kB limit on class size
- Implemented "yx" for square matrix Y and integer x
- Numbered axes in graphs
- Added parametric and polar graphs
- Added matrix size query and aij element access
- Several minor bugs removed
- Matrix arithmetic and matrix monitoring
- Coord/cplx menu moved to trig/more to make room for matrix menu
- Monitor "editing" mode
- More command key mappings in setup to switch sides of "ENTER"
and "+"
- Moved "%" to math/simple and made this menu entry a "repeat" of last
command. "int" submenu moved to math/misc
- Fixed "double keypress bug" on Motorola, LG and Sharp phones
- Fixed bug storing complex values in mem
- Added extra large font (I have K700i now...)
- Enabled menu navigation by pointer/stylus input
- First release on SourceForge
- Integration, differentiation, solving and min/max of macro program
- Numbers entered in macro program are stored atomically, not as
keyclicks (improves speed and fixes problem with HEX/OCT/BIN mode during
programming)
- Fixed programming function "select" to copy the number instead
of calculating it when selection criterion x equals 0 or 1. This
enables selecting away inf's and nan's.
- Fixed wrong label order in mode/monitor/stat
- Fixed "x↔y" bug when y is empty
- Upgraded compiler tools and cleanup of Real.java
- Added programming utility function "sgn"
- Added room for a total of 9 programs
- Reinstated "date" and "time" on a lower level menu
- Application can be exited from the system menu (problem on
K700i)
- Setup settings are reversible by the "reset" command in the
system menu
- State is not lost if application is interrupted by incoming
phone call
- Simple programmability in the form of command macro
- Extra operations to improve programming
- Graph drawing of macro program
- Added operations for converting between DH.MS format and unix
time, Julian Days and Modified Julian Days.
- LASTx remembers its imaginary part on clear stack and exit
- Memory module will no longer be cleared on exit if it contains
only pure imaginary numbers
- Statistical results do not inherit imaginary parts from
top of stack
- Correct display of largest/smallest number, i.e. 4.197e323228496
and 2.383e-323228497
- x√y bug fixed
- 280 mod 4 correctly returns 0 instead of 1.806e-35
- Fixed mixup bug between percentage function and statistics drawing
- Added "conversions and constants" module containing the old
"time" module, US/metric conversion constants and scientific constants
Version 1.17
- Added mod and div, rearranged menus slightly to fit
- Added complementary error function, erfc. At worst only 44 bits
accurate (i.e. 13 digits, for x=5.44), mostly much better
- Added stack roll-up, roll-down and x↔st#
- More accurate sin, cos, tan for values » 2π
- Fixed accuracy problem of yx
- Complex versions of trigonometric and power operations
- Bypassing setup dialog (that does not work) on the Z1010
Version 1.15
- Bypassing setup dialogs on known devices (so far: T610, T630 and
Z600)
- Support for sub-pixel antialiased fonts when display order is BGR
instead of RGB (e.g. Ericsson T630)
- Correct rounding in addition and subtraction routine
- Fixed accuracy problem of ex and 10x
- More accurate display of extremely large/small numbers due to
accurate 10x
- 50-70% speedup of all operations due to inlining of small functions
Version 1.13
- Correct rounding in multiplication routine
- More accurate exponential functions due to better multiplications
- atan2 result correctly converted in DEG mode
- Changed exponent marker from "E" to "e", and hex digits from
"abcdef" to "ABCDEF" to improve visibility of complex numbers
- Removed "+" sign from positive exponents
- Basic complex math works for +, -, *, /, +/-, √x, 1/x,
x², cplx→r, abs, arg, conj and STO/RCL
- sqrt(-0) correctly returns 0
Version 1.11
- Made "int" submenu accessible in hex/oct/bin mode
- Hex number "1.fffffffffffffffc" correctly displays "2"
- Faster and correctly rounded division routine
- Statistics log (used in "draw") now stores 64 x/y pairs and
removes correctly on Σ-
- Using CRC rather than linear congruential generators in random
number generator. RNG now passes ent test
- Released Real.java class under GPL
Version 1.08
- Added percent command to basic menu
- Added undo command to stack menu (removed x↔st#)
- atan2(0,0) correctly returns 0
Version 1.02
- yx faster and more accurate if x is integer
- Added financial functions y%*x and y%/x
- Added financial mode for beginning and end of month payments
- Financial solving works properly with ir% = 0
- Setup dialog to query about keyboard layout
Version 1.00
Todo-list:
- Fix bugs
- Different font for monitor items
- More than one column visible in matrix monitor
- Root finding when f(a)*f(b)>0
- Calling other programs and doing solve, integration and min/max in
program