  FuncCalc Ver.1.12
=====================
                                                            2002.8.11

  Thank you very much for downloading FuncCalc.

  This is a palmware that emulates functional calculator.
  This palmware is free for the basic features, but extended features are
  shareware.  (FuncCalc for High-resolution machine of SONY is shareware.)
  However, you can use extended features for twenty (20) days by free.
  Please try to use this palmware and enjoy it!

  Extended features that are used after registeration are following.
  1. You can change number of lines of the screen that is showed the
     equation by pushing Kz button on screen.
  2. You can define the equation using BASIC like language.
     This is the similar as programmable calculator.
  3. You can change how to recall/store from/to the memory. Popup form
     or not. 
  4. You can also select the FSE/TAB/DRG by popup form.

[[Abstract]]
  This is functional calculator that is input the same sequence as equation.
    - Display and Edit the equation that you input.

    - It can operate on Palm OS 3.1 or later. (I checked Visor
      Deluxe/Prism/Edge, PalmIIIc,PalmV and CLIE (include N700,T series))
      I was reported that it operates on Palm m505.

<< Getting start >>
  At first, install FuncCalc_en.prc.
  Note: It is necessary to MathLib.prc even if you are NOT a user of
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Visor. Please install it.
  ~~~~~~~~~~~~~~~~~~~~~~~~~
  FuncCalc archive file has MathLib.prc. If you already download from
  below site, it is also OK. And it is not necessary to install it.
  http://www.radiks.net/~rhuebner/mathlib.html

<< Basic operating method >>
  You use it with feeling normal calculator, you input as equation.
  The only difference is input sequence is same as mathematics.

<< Features >>
  - 10 digits and exponent +/-99
    -9.999999999e+99 ~ -1e-99, 0, 1e-99 ~ 9.999999999e+99
  - The four rules of arithmetic: +, -, *, /
  - Operation with "(" and ")".
  - Trigonometric function: sin,cos,tan, arcSin,arcCos, arcTan,
    sinh,cosh,tanh, arcSinh,arcCosh,arcTanh
  - Others: Log, Ln, x^-1,x^2,y^x, 10^x, e^x, Root,Cubic root,xRoot,
    n!, nCr (Combination), nPr (Permutation), MOD (modulo), % (percent).
  - Translate to Binary/Octal/Decimal/Hexagonal and operation
    (NOT, AND, OR, XOR, XNOR, MOD).
  - 13 Memories (A, B, C, D, E, F, G, H, I, M, X, Y, Z) are available.
  - Pi is able to use as constant value.
  - The result is displayed by four types (Normal/Fix/Science/Engineer).
  - Capable to change under dot digit (TAB+0~9)(only for FIX, SCI and
    ENG mode).
  - Capable to select three types (DEG/RAD/GRAD) on angle setting.
  - View and display the equation.
    You can select 1/3/5 lines of screen, and can move cursor by button
    on the screen or hard key or tap on screen.
  - Capable to copy or paste the numeric of the result or the equation.
    Capable to write to memo pad after copying equation, or paste equation
    after copying equation on memo pad.
  - Go back previous formula up to 10 times by using up/down button or JOG.
    And also you can see on "Menu->View Formula".
  - Capable to display history up to 2000 characters.
  - The areas of 10 programmable functions are ready for you.
    You can define the equation, and also use control instruction such
    as "if", "loop" and so on.
  - Capable to input "Graffiti" instead of pushing the button on the screen.
  - The equation (including user defined equation) has up to 128 bytes.
    1 byte means the one button pushing by you.

<< ESCAPE CLAUSE >>
  - The accuracy of this palmware is depending on MathLib. Please remember
    that there is an error of calculation because of calculating by
    binary code internally. And it may occur some errors during use this
    by bug, however I checked this palmware carefully.
  - I CANNOT compensate any damages by using this palmware. Please
    remember it.

<< More detail usage >>
  - The four rules of arithmetic are calculated as follows equation.
      If you input 2+3*4=, then result is 14 not 20.
      It is different from normal calculator.

     Prior sequence of operators
     1. (-) sign of minus
     2. Single operator that has the number before operator.
         (Example: x^2,x^-1,n!)
     3. Binominal operator (Example: Y^X, x Root, nCr, nPr, etc.)
     4. The multiply operation that has no "x" (multiply operator)
        like 2Pi, 2A and so on.
        The multiply omit "x" in single operator that has the number
        after operator like 2log3 instead of 2xlog3.
     5. Single operator that has the number after operator.
         (Example: Root, e^x, 10^x, Cubic root, Ln, Log, sin, cos, tan,
          NOT, etc.)
     6. x, /
     7. +, -
     8. AND, MOD
     9. OR, XOR, XNOR
    10. =, M+, M-, STO A~I,M,X~Z, ->BIN, ->OCT, ->HEX, ->DEC, >, >=

  - 2ndF: If you push this key, exchange key top and small characters
    above key.
      Example: Push 2ndF and sin key is arcsin (=sin^-1).
  - ALPHA: If you push this key, key top changes to Alphabet.
    Alphabet keys shows each of memories. You can use A to I, M and X to
    Z as variable.
    Also see STO.
  - STO: If you push this key, key top changes to alphabet mode, and
    store the result to the memory that you push one key of alphabet
    keys. (Key mode)  You can select one of thirteen memories (A-I,M,X-Z).
      When window mode, popup windows asks which memory do you want to
    store. Then you push the one of memories you want to store.
      Example: After you input equation, push STO and HYP button
        instead of "=" button, then the result of equation stored A of
        memories.
  - FSE: You can select the display format of the result of
    calculation. You can see the current status on the upper left
    screen.
        In case of popup mode, please select one of the items in popup
    window.
      Display mode:
         none: If it is not necessary to display exponent, then
              display normally. The other case, use exponent and full
              digit is used.
         FIX: Fixed mode. If the result is under 1e-10, the result is
              showed 0. The other case, display the number of TAB
              under dot.
         SCI: Science mode. Always, integer range is 1 digit.
         ENG: Engineer mode. Exponent is the number of 3
              times. You can recognize m (milli), k (kilo) and so on.
  - TAB: You can set the number of under dot. After push the TAB button,
         0 to 9 button is decided the number of digit. (Key mode)
         It is available in FIX,SCI and ENG mode. And you can change during
        displaying the result or after pushing CL button. You can see
        that TAB button is reversed, this mode is avail.
          In case of popup mode, please select one of the items in popup
        window.
  - DRG: You can set the mode of angle for trigonometric functions. You
        can see the status under FSE status location.
          In case of popup mode, please select one of the items in popup
        window.
        DEG: Degree mode.
        RAD: Radian mode.
        GRA: Gradian mode.
  - Decimal/Binary/Octal/Hexagonal
      Normally is similar as decimal mode. The other mode, the mode is
        displayed the following character in the exponent area.
      B: Binary mode
      O: Octal mode
      H: Hexadecimal mode
     If you want to translate the numerical number, push 2ndF and one of
    the key of four rules of arithmetic (+: to decimal, -: to octal, *: to
    hexagonal, /: to binary). These combination behaves as push "=" key,
    so you input equation and push 2ndF + one of four rules of
    arithmetic key, then display the result after calculate and
    translate.

<< Menus >>
  ("^" in parenthesis indicates / of Graffiti (move left lower to right top).)
  # Edit Menu
  - Copy Num (^C): Copy numeric of result to clipboard.
  - Paste Num (^P): Paste the numeric of clipboard.
  - Copy Eq. (^E): Copy equation and result to clipboard.
  - Paste Eq. (^Q): Paste equation from clipboard.
      Basically copy text to clipboard is almost same as ascii character.
    But some of operators uses special format, please look carefully the
    result of pasting the equation to memo pad. It is necessary to
    distinguish the operator by using space.
  # View Menu
  - Memory (^M): Show contents of all memories.
  - Formula (^F): Show equation. If you push the button below the
    window, you can see the equation that is 10 equations before. And
    you can select it and go back to main window.
  - History (^H): Show the history.
  - Func (^U): Show the user defined functions.
  # Options Menu
  - User func (^S): Call the dialog that is set the user defined
    function.
  - Preferences (^R): You can set various setting.
      Set how to access to Memories, how to change FSE/TAB/DRG, the
    number of lines on the screen, use hard key for moving cursor or
    not, recall user defined function by 2ndF and Num-key or not.
      You can select to display comma or not.
  - Reset: Initialize the FuncCalc.
  # Help Menu
  - Graffiti Help (^G): Show the help for Graffiti.
  - About (^A): Show the version and Copyright.
  - Regist: Input license key for registration.

<< How to define/use the user defined function>>
@Main flow
  1. Select "User Function" from Menu->Options..., you will see the
    lists.  Select by tapping one of lists on the screen, and then once
    again you tap it or push "Edit" button, move to "Edit" mode. Another
    case you push "Act" button, move to "ACT" mode.
    When FuncCalc is in Edit mode, "AER" (Algebraic Equation Reserve)
    mark is showed upper right corner on the screen.

    In other case, you push "Detail" button after selecting one of
    lists, you will see the name of function and the contents of the
    function in dialog box. Also you will be able to change the name
    of the defined function. And if you push "Clear" button, the
    contents of function would be clear.

  2. If you push "=" button, the definition will be finished, and
    automatically move to "ACT" mode. If you want to quit, push "CL"
    key.

  3. If you want to start calculation, there are two ways.
    One is that you recall the function by pushing "Act" button after
    Menu->"User Function" and select function.
    The another is that push 2ndF and 0~9 of ten keys. In this case, you
    have to set to be enabling it by "Preferences".

@Format of user defined function
  - The format of defining equation is basically same as normal
    calculation. When you define the function, you should use variable
    string, because of no advantage without variable.
  - In this case, you can use "fx()" for input variable. The memory
    character (A-I, M, X-Z) within parenthesis asks you to input
    numerical value.
    It is all right that you may write plural characters in parenthesis.
    FuncCalc processes them sequentially. If you know BASIC language,
    it is easy to understand that this "fx()" is like "Input".
    Ex. If you set "fx(ACB)=", you will input in order of A, C and B.
        It isn't necessary input ";" between the memory character.

    After starting "Act", you can see "Input A=" (However, the portion of
    "A" is the variable specified within the parenthesis of "fx") and
    the contents of the variable character. If you don't want to change
    the numerical value, you push "=" button. If you want to change it,
    you input numerical value and push "=" button.

  - If "2ndF" is pushed during user definition function, you will see
    additional operators on ten key portions, . 12 (twelve) sign is added.
  - "if(", ")then{", "}else{", "}" are for controlling condition statement.
    The last one of "}" shows the end of statement for "if", please add
    even if you will use only "then". Of course, add "}" in the case of
    "else".
  - ">", ">=", "=/=" (last two is different from actual one) is for
    condition in "if" statement. You can't use "=" in "if", please note
    it. And there is no "<", please change the order.
                  _
  - The sign of "| ", "_|" shows loop. If FuncCalc finds the "_|",
             _
    search "| " backward. In this case, it is OK that the loop is nest.
  - ";" and "p;" shows a pause of statement. The "p;" prints out the
    result of calculation just before. The ";" do nothing.
  - These definitions are based on BASIC language. I think it is not
    difficult to use it.

  Example 1: Twice the number that you input.
      Please define fx(A)=A*2p; . At first, you select one of the
      functions (0-9) from list, and start to edit.
      You push as follows.
      "2ndF", "7", "ALPHA", "A", "2ndF", "7", "ALPHA", "A", "x", "2",
      "2ndF", "9", "=".
      After you push "=", you will see "Input A=". You input numeric
      value and push "=". Then you will see the value of twice that you
      input.
      If you find strange result, move to edit mode by tapping the
      screen or pushing cursor button, and check again.

  Example 2: Calculate average that you input. (The number of inputting
        numeric isn't care.)
        You have to input the following. This time, the method which is
        not inputted personally is taken.
        0->mY;0->mZ;[fx(X)=mZ+mX->mZ;mY+1->mY;mZ/mY->mX;]
        You select and copy above sentence, and paste memo pad of
        PalmDesktop, and do Hotsync. After that, you select and copy
        them once again on memo pad, then you set user definition status
        on FuncCalc, and select Paste Eq. (^Q) from menu. Then you will
        see following.
                   _
        0->Y;0->Z;| fx(X)=Z+X->Z;Y+1->Y;Z/Y->X;_|
        Then you push "=" for finishing.
        FuncCalc shows "Input X=", you input numeric value and push "=".
        The next input is started. The display number is the same as the
        first input numeric value. You input second numeric number and
        push "=". The third input is started. The display number is the
        average of first and second numeric value of inputting.
        If you quit to input, push "CL" button. If you look the value of
        memories, you find that "X" is average number, "Y" is the number
        of inputting, "Z" is sum of inputting value. Please check them.

Appendix
  # You can input by Graffiti instead of push the button on the screen.
    You can use the following keys,
    0~9,+,-,*,/,(,),=,.,A-I,M,X-Z (Button of function is corresponding
    to the alphabet of left side of button.), Return is =, BS (Back
    space) is DEL button, left, and right as cursor, space is same as CL
    button. STO is assigned 's', RCL is assigned'r'.
    And the other assignment is ALPHA:'l' (el), FSE:'n', TAB:'t',
    DRG:'k', EXP:'p', +/-:'%'.
    2ndF is assigned shift action, but button of 2ndF doesn't show
    reverse.
  # JOG dial has the capability of up and down key and = key by pushing
    the JOG. This palmware handles the JOG of SONY and HandEra.

I have a plan to make a more detail explanation, please wait it.

>>> CAUTION <<<
Known bugs:
  - The result of sin n*Pi (n is integer) isn't always 0 (zero). This is
    depend on MathLib accuracy. This palmware changes 0 if the result
    under 1e-15.
    The other case, this palmware can calculate tan(Pi/2) (Actually this
    is infinite). Please note that there is some error especially in
    trigonometric functions. This is same situation as Calculator of
    Handspring's and Parens.
  - You can input 2-F in binary mode, 8-F in octal mode. But calculation
    is performed correctly. (I don't think this is a bug, it is no
    problem in theory.)
    Example.
      33 in binary mode, calculate 3*2^1 + 3*2^0 = 9 = 1001 b
      A8 in octal mode, calculate 10*8^1 + 8*8^0 = 88 = 130 o
  - In user defined function mode, you input "fx(" and ")=" by same key.
    FuncCalc changes internally "fx(" and ")=" each other, if you push
    "fx(" key and quit this mode, next time you enter this mode and push
    "fx(" key then you will see ")=". Please delete it and once more
    push "fx(".

<< Registration >>
  You can register FuncCalc in PalmGear and Handango as following.

  PalmGear
  http://store.yahoo.com/pilotgearsw/kazukiohno.html
  Please contact you to PalmGear by the phone number 817.640.6558 or the
  fax number 817.640.6614 .

  Handango
  https://www.handango.com/PlatformSoftware.jsp?siteId=1&platformId=1

[History]
Ver.1.12  2002.8.11
  - Fix bug that the up/down button on the side of edit screen that
    appears when equation is over 5 lines on the wide Hi-Res of CLie NR
    did not act correctly.
  - Fix memory leaks.
Ver.1.11  2002.6.15
  - Add new feature that is capable to display comma.
  - Fix bug that the form of FuncCalc isn't displayed when you switch
    from the application of wide Hi-Res on CLie NR.
Ver.1.1   2002.5.4
  - Made to corresponde to wide Hi-Res of Sony Clie NR70.
  - Fix that incorrect functional key is displayed when push left cursor
    button after changing base number.
Ver.1.01a 2002.2.21  Fix spell miss and Add how to register to this file.
Ver.1.01  2002.2.16  First release of English version.
  - Same features as Japanese version.

[Request]
If there is a point that is difficult to understand or strange
English. Please let me know.


Kazuki Ohno (kazuki_ohno@hotmail.com)
http://www5b.biglobe.ne.jp/~kaz-hat/
However this WEB page is basically Japanese, if you push "English page"
of menu, this page is automatically translated.

If you find any bugs, please let me know.
And if my English is strange, please point out.

Thank you.
