PSharp is a scientific algebraic calculator just like my old Sharp 1401 that I use since 1982. I looked for an algebraic calculator for the Palm device but most of the programs were similar to RPN. It's a very mighty calculator but YOU have to parse the expression for RPN because the program can't do it. Therefore I decided to develop an own algebraic calculator. I looked for tools and found GCC and PILRC as development enviroment and MathLib as an double precision library for mathematical functions. After a few weeks of testing the parsing algorithm I think the program is ready for use. Because of the use of MathLib (see section below) PSharp requires PalmOS 2.0 or newer.
If you use the program you will see that all settings including the last input are saved and will be restored at the next start of the program. I think most of the buttons are self explainable, but here is a brief description of the used controls.
The main screen is divided into the input field for entering
the expression and the buttons and lists for input. In addition
you can use graffiti for input.
The buttons labeld 01-04 can be defined by the user. It is
possible to change the label and the value of these buttons.
2.1.1 Buttons |
2.1.2 Lists |
|||||
0-9 | : | 0-9 | Rad/Deg/Gon | : | determine the trigonometric mode: radian, degrees or gon | |
+-/* | : | +-/* | Norm/Arc/Hyp/ArcHyp | : | create prefix for trigonometric functions, | |
sqr | : | square root | - norm : normal trigonometric function, e.g. norm + sin => sin | |||
ln | : | logarithm | - arc : arcus function, e.g. arc + sin => asin | |||
log | : | common logarithm | - hyp : hyberbolic function, e.g hyp + sin => hsin | |||
sin | : | sinus | - archyp : arcushyperbolic function archyp + sin => ahsin | |||
cos | : | cosinus | E/F/S/A | : | toggle between float, exponential, scientific | |
tan | : | tangens | and automatic presentation of the result | |||
Pi | : | the constant Pi ~ 3.14159265 | .0-8 | : | determine the number of digits after the decimal point | |
e | : | used in two ways, - the constant e ~ 2.71828183 - exponatial sign e.g. 1e3 |
||||
^ | : | power, e.g. 2^3 = 8 | ||||
! | : | factorial, e.g. 3! = 1*2*3 = 6 | ||||
Arrow left | : | Backspace | ||||
CLR | : | Clear input field |
Values with leading & sign are interpreted as hex values.
If you like to have cursor buttons you can assign '<' for
cursor left and '>' for cursor right as value to user defined
buttons.
List of additional functions:
abs( x ) | : | absolute value of x |
cur( x ) | : | cube root of x |
exp( x ) | : | power function with base e; e ^ x |
int( x ) | : | convert x to integer value |
rcp( x ) | : | calculate the reciprocal value of x |
sgn( x ) | : | copysign function; returns -1 for x < 0, 0 for x = 0 and 1 for x > 0 |
squ( x ) | : | x squared |
ten( x ) | : | power function with base 10; 10 ^ x |
There are four user defined buttons (01 - 04) which can be used
to store values or formulas. If you use these buttons the
assigned string is inserted at the cursor position in the input
field of the main screen. In that way you can customize PSharp
for your personal needs.
PSharp can handle up to 20 user defined constants. They must be
defined in the edit constants dialog. The minimum number of
constants is one, that means you can't delete the last constant.
You can change an existing constant (name and/or value) by
entering the new information in the two fields and then press the
'Save' button. If you hit the 'New' button a new constant is
defined using the name and value in the two fields. The name of a
constant must contain only letters. The maximum number of letters
is five. The value can be entered using exponential notation. The
'Del' button deletes the selected constant.
Constants are saved in the program's preferences. If PSharp is
deleted, all constants are deleted too.
If you register PSharp you will get a registration code to unlock
the shareware version. After entering the user specific code the
shareware version will automatically turn into the registered
one.
MathLib is a free shared library that can be used by any OS 2.0+ Pilot program that needs IEEE 754 double precision math functions. It's distributed under the terms of the GNU General Public License, and is freely available with full source code and documentation at the MathLib Information web page. It's not a part of PSharp, and you're not paying anything for its use; a copy is simply included in this archive for your convenience. For more information on MathLib, see the MathLib webpage at http://www.radiks.net/~rhuebner/mathlib.html
If you have any suggestions feel free to contact the author under info@thorsten-tietz.de
I make no guarantees to provide technical support, but if you need some feel free to mail to: info@thorsten-tietz.de
For registration please contact me under thorsten.tietz@gmx.de.
Registered user will get a registration code to unlock the
current version. In this way you will get a version without the
nag screen and free updates forever. In addition you can use the
user defined buttons and constants in the registered version.
The author of PSharp is not affiliated with Palm Computing (3Com), and is not liable for any damages caused to the user or the user's computer equipment (including both their home PC and their Pilot). This program has been tested on a PalmPilot Professional/Palm III and to the best of the author's knowledge will not harm similar equipment. However, by installing this product the user dissolves the author of all liabilities related to this program or otherwise.
Version 2.3 | : | Changed the program name from PalmSharp to PSharp to comply fully with Palm trademark provisions :-))) |
Version 2.2 | : | The menu items Cut, Copy, Paste, Copy result and Paste last result now really work :-) |
Version 2.1 | : | Changed the registration model to a user
dependend registration key. Therefore only one program
version has to maintained. Use of NewFloatManager to decrease the program size of 10 %. Added a few new functions found in the manual of my Sharp 1401/1403. |
Version 2.0 | : | Now PSharp works on the actual version
of PalmOS 3.5 |
Version 1.9 | : | Fixed an internal bug to run PSharp on
the PalmOS 3.3 debug rom without any error or warning
message. Now the menu shortcuts in PSharp work. |
Version 1.8 | : | Reworked the documentation as htm file. The values '<' and '>' at user defined buttons a interpreted as buttons to move the cursor left or right. After 4 month of searching for the bug in button definition I found the solution. Added the user defined constants with corresponding dialog. Changed the format of PSharp preferences. *** Please delete any old version of PSharp before installing. *** *** If you don't your Pilot may hang and you have to hard reset it. *** |
Version 1.7 | : | Now PSharp calculates correct again.
Sorry for version 1.6 Removed some debug information which created a memopad record every time PSharp is started. I forgot to remove it in version 1.6 ;-( |
Version 1.6 | : | Moved the main screen one pixel to the
left. Fixed a bug while reading the saved preferences. Added help screen to mention thing not found on buttons. |
Version 1.5 | : | Fixed a bug in the event loop bug of the
shareware version. Did the same to the full version. Fixed a bug in button definition. |
Version 1.4 | : | Fixed some internal bugs. Now PSharp runs on the debug rom version 3.0. Tested PSharp on release versions of PalmOS 2.0, 3.0, 3.3 and 3.5 (Build 25). Runs well on all versions. :-) Changed eventloop so that PSharp now works with MenuHack. Changed data saving from own database to PalmOS preferences. *** Please delete any old version of PSharp before installing. *** *** That's the only way to avoid problems with the saved data. *** |
Version 1.3 | : | Added automatic notation of the result,
which changes the presentation automatically from float
to exponetial if an overflow error occures. Fixed the 0^0 bug. Added support for hex values which means values with leading & are interpreted as hex values. |
Version 1.2 | : | Added scientific notation of the result,
which means in steps of 1e3. A little bit more error checking (ln, log, ahcos) Found a way to fix the overflow bug in power and factorial function. |
Version 1.1 | : | Nearly total new coding of the program
to integrate the new features. Added menu support, e.g. for cut, copy , paste ... New buttons to be customized by the user (registered version only). The result will not longer be copied to the clipboard automatically (Use copy result). *** Please delete any old version of PSharp before installing. *** *** That's the only way to avoid problems with the saved data. *** |
Version 1.0 | : | I think now most of the work is done.
:-) Changed the program status from freeware to shareware to become very, very rich ! (only 5.95$) Now the result is recalculated if the number format or the trigonometric mode is changed. In addition the result is automatically copied to clipboard. Fixed the leading space error with numbers |
Version 0.97 | : | Removed some error handling in solution
to string converter, so that the error '?overflow?'
should be fixed. Float presentation will work up to 2 power 32. |
Version 0.96 | : | Bug with tan(45) fixed Toggle result between float/exp without deleting result Added small icon for Palm III list view |
Version 0.95 | : | Bug in arc-function in degree mode
fixed. Error handling for division, tan, log and ln. |
Version 0.94 | : | First public release |