
calctool  -  README  -  November 1989.

This is V2.4 of a simple desktop calculator.
This version works under SunView, XView, X11, NeWS, MGR and for
dumb tty terminals.

It is almost visually identical to V2.1 which was released in August
1988, but internally most of the code has been reworked to include a
level of graphics abstraction, to make porting this code to other
window systems a trivial task.

V2.4 includes display in scientific notation, color icons, a correct
factorial function and fixes for a few minor bugs. It introduces the
new versions for XView, X11, MGR and dumb terminals. New functions
include hyperbolic and inverse hyperbolic trigonometrical functions,
register exchange, constants and the input of numbers in exponential
notation. You can also have a .calctoolrc file in your home directory,
which can define upto ten new values for constants, and ten function
definitions which are used in conjunction with the FUN key.

**IMPORTANT NOTE**

Several of the keyboard equivalents for various calctool functions
have been changed to allow for the new functionality and to be more
intuitive.

See the online help or the manual pages for more details.

This code has been tested on a range of different Sun machines under a
variety of O/Ss. See the beginning of the Makefile for details of what
you might have to tweak in order to get it working under different O/Ss
or on other machines, and also how to compile and link for the different
versions. Note that calctool creates a library before generating the
appropriate calctool binary. By default, this is a normal 'ar' type
library, but with SunOS v4.x it is possible to create a shared library.
In order to do this, you should type 'make shared' before making the
calctool of your choice. It will install this library in the directory
defined by the Makefile macro definition LIBDIR, so you might need root
permission to successfully do this.


Portable maths routines.
------------------------

It is hoped that your system supplies all the mathematical functions
required by calctool. If not then, it is possible to use the needed
ones from the portable math library routines that comes with these
sources.

In mathlib.h, there is one definition for each routine used by calctool.
These are commented out by default to signify that this system has that
routine in it's maths library. If you are missing any, then uncomment
the appropriate definitions.


Todo.
-----

There is a TODO file included, which lists the current known bugs, and
a set of possible enhancements, some relatively trivial, others that
are fairly major enhancements which would make interesting future
projects.


Acknowledgements.
-----------------

Thanks to Ed Falk at Sun Microsystems (Mountain View) for most of the
basic arithmetical algorithms used, to Andrew Nicholson for revising the
previous version of the NeWS code, to Sriram Ramachandran for fixing up
the XView code, to Hala Abdalla for the original implementation of the
popup menu and function keyboard support, to Didier Poirot for the
calctool Imakefiles, and to Sisira Jayasinghe for better error detecting
addition, subtraction, multiplication and division routines for the
maths library.

Thanks go also to James Buster, David Weaver, Steve Damron, Mike Bender,
Charles Tierney, Trevor Watson, Marla Berg, David Hough, Jeff Donsbach,
Mel Melchner, Peter Allott, Skip Gilbrech, Tom Friedel, Keith McNeill
Stephen Frede, Johan Vromans, David Karr, Steve Alexander, Gary Bartlett,
Steve Nahm, Daniel Yang and Rick Stevenson for bug reports and/or bug fixes
plus sugggested enhancements.

Suggestions for furthur improvement would be most welcome, plus bugs,
comments and flames.

Rich Burridge,          DOMAIN: richb@Aus.Sun.COM
Sun Microsystems.       ACSNET: richb@sunaus.sun.oz
PHONE: +61 2 413 2666   UUCP:   {uunet,mcvax,ukc}!munnari!sunaus.oz!richb
