home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Simtel MSDOS - Coast to Coast
/
simteldosarchivecoasttocoast2.iso
/
calculat
/
rpc102.zip
/
HP.DOC
next >
Wrap
Text File
|
1990-11-13
|
4KB
|
92 lines
REVERSE POLISH CALCULATOR (v 1.02)
This calculator is a close emulation of the HP21, one of the first hand-
held calculators made (circa 1974). That's pretty old and it doesn't have
all the bells and whistles that one can get now. But it's quick and dirty
and gets the job done. If you are not a RPN fan I'm not going to try to
convert you but if you are new to RPN and want to try it this implementation
may help you because all the registers are always visible and are updated
in real time. This should help you keep track of what is going on.
Basically, one uses this type of calculator doing the following:
Type number, hit enter, type number, do operation, type number,
do operation,...
the result of your last operation is always in X. If you are working with
a parenthesised equation you start with the inner most parentheses and work
outward. For example,
5*(3*(2+4))
would go like this
2
<ENTER>
4
+
3
*
5
* (at this point X contains 90).
This calculator has one extra and at least one fault. First the extra.
To the right of the stack is a table of constants. The table is accessed
with the <SPACE> bar. Each time the <SPACE> bar is pressed another page
of constants is shown. When you find the constant you want it is selected
with the up or down arrow -- then hit <RETURN>. The constant will now be
in the X register ready to use. (This is just like the constant Pi which
is accessed by <ESC>-F2). A couple of comments about the constant table.
A label with parentheses such as N(A) is meant to indicate a subscript.
N sub A is Avogadro's number. I'm not going to give a complete list
of what the constants are since if you need them you are undoubtedly
familiar with them to begin with. However, I must point out that there
does not seem to be a l.c. lambda character in DOS so I have used l instead.
So, for example, l(C) is lambda sub C which is the Compton wavelength of
the electron and l(C,p) is the Compton wavelength of the proton and so on.
The fault I find most irritating. Due to the limitations of Turbo Pascal
(this was written in TP 3.0 and compiled with TP 5.5) reals cannot exceed
1e+/-37 or so. Therefore, if an operation results in a number outside this
range a fatal error occurs and you are rudely dumped out of the program.
This is a BAD THING and will be corrected in future releases (if there are
any, depends on interest).
Now for the beggarware pitch. I actually use this calculator on a
daily basis (when my 15 year old HP21 is somewhere else). So I know it
is useful and I like it, too. If you like it and find it useful a $10
contribution to my kids' college education will be greatly appreciated.
Whether you contribute or not my e-mail address is on the main screen so if
you have any questions or gripes feel free. If there is enough interest
(i.e. dollars) I plan to consider the following improvements:
1) Fix the 1e+\-37 limitation
2) Tables of constants of interest to others (I'm a physicist)
chemistry, math, various fields of engineering, etc
3) User definable tables of constants
4) Make it TSR w/hot key -- Though I find, nowdays, most times
when I need the calculator I'm in an application that can
shell to DOS
5) Full blown operation manual
6) Other stuff: Suggestions welcome
not much more though as I am opposed to creeping featuritus.
Registered users will get complete source code and free upgrades plus that
rewarding feeling of knowing you have done a GOOD THING.
Mark North
1826 Galveston St.
San Diego, CA 92110
(619) 553 2800 -- north@manta.nosc.mil