@database ???? @master ???? @width 80 @width 76 @node Main "Table des matières" ============================================================================ ACalc 1.60 Copyright (C) 1993-2002 by Denis GOUNELLE ============================================================================ Summary : @{" Introduction " Link "Introduction"} @{" Legal informations " Link "Diffusion"} @{" Installation " Link "Installation"} @{" Running ACalc " Link "Arguments"} @{" Standard usage " Link "Usage"} @{" Using the keyboard " Link "Keyboard"} @{" Using the AREXX port " Link "ARexx"} @{" Program history " Link "History"} @endnode @node Introduction "Introduction" ACalc is a calculator that may be used both in floating point mode (double precision IEEE) and in based mode (decimal or hexadecimal). It may appear on any screen, and can be installed as a commodity. Criticisms and suggestions will always be welcomed. Contact me at: Denis GOUNELLE 27, rue Jules GUESDE 45400 FLEURY-LES-AUBRAIS FRANCE denis.gounelle@wanadoo.fr http://perso.wanadoo.fr/denis.gounelle/index.html @endnode @node Diffusion "Legal informations" ACalc is a "freeware" software. Any commercial usage or selling without author's written authorization is strictly forbidden. You can copy and spread this program under the following conditions: 1. All the files must be provided 2. No file must be modified 3. You can't charge more than $6 for the copy In spite of several tests, no warranty is made that there are no errors in ACalc. YOU USE THIS PROGRAM AT YOUR OWN RISK. In no event will I be liable for any damage, direct or indirect, resulting of the use of ACalc. Thanks to Stéphane "SADA" Anquetil for the icon. @endnode @node Installation "Installation" Use the Installer script included in the archive. You will probably want to install ACalc as a commodity, so copy it in the "SYS:WBStartup" directory. If you want to use the Euro convertor, you have to set the "EURO" environment variable to the change rate between your locale currency and Euro. As an example, the rate is "6.55957" for French Franc. @endnode @node Arguments "Running ACalc" ACalc detach itself from the Shell. The list of possible arguments is shown below. For each argument, the first line shows the Shell syntax, while the second one shows the Tool Types syntax. CX_PRIORITY/K n CX_PRIORITY=n Set the commodity priority CX_HOTKEY/K key CX_HOTKEY=key Set the commodity hotkey. Default key is "ctrl esc". CX_POPUP/S CX_POPUP Opens the window at startup time. NOCOMM/S NOCOMM Prevent ACalc to install itself as a commodity. The program will terminate as soon as you click on the close gadget. SAVEVAR/S SAVEVAR Ask ACalc to save expression results in an environnement variable, instead of the clipboard. The variable name is "ACalcResult". REXXPORT/K name REXXPORT=name Name of the AREXX port. Default name is "ACalc." PUBSCREEN/K name PUBSCREEN=name Name of the public screen to use. By default, ACalc use the front-most screen. LOCALECUR/K name LOCALESUR=name Name or symbol of your locale currency, for the Euro conversion. Only the 3 first characters are used. Default value is "FRF". Mx/K value Mx=value (x = 0 to 7). Set the initial value of the specified memory. By default, all memories are set to zero at program startup. @endnode @node Usage "Standard usage" When called, ACalc opens a window on the frontmost screen. This window has a display area, and a 36 keys keyboard. Most of these keys are self-explanatory, so this section only describe some of them. Mode key (FLT,DEC,HEX) ACalc has three working modes: floating point mode (FLT), based decimal mode (DEC) and based hexadecimal mode (HEX). In the two based modes, ACalc use 32 bits unsigned integers. Depending on the current mode, some keys may be disabled. EUR In FLT mode, activates the conversion from your locale currency to the Euro currency. The change rate is read in the "EURO" environment variable. FRF In FLT mode, activates the conversion from Euro to your locale currency. The change rate is read in the "EURO" environment variable. The default text for this key is "FRF", but this can be changed with the LOCALECUR argument (see @{" Running ACalc " Link "Arguments"}). d In HEX mode, allow to specify that the immediatly following number is a decimal number. h In DEC mode, allow to specify that the immediatly following number is a hexdecimal number. STO This key allow to store the currently displayed result in one of the 10 available memories. After having selected this key, click on one of the digits (0 - 9) to select the memory number. By default, all memories are set to zero when the program start. It is however possible to set the initial value of memories M0 to M7 (see @{" Running ACalc " Link "Arguments"}). If ACalc is installed as a commodity, memory contents is preserved between two invocations of the program. Note that M8 and M9 memories respectively store the EURO change rate and the last computed result. RCL Recall the content of a memory. After having selected this key, click on one of the digits (0 - 9) to select the memory number. Note that M8 and M9 memories respectively store the EURO change rate and the last computed result. BS Delete the last character of the displayed expression or result. = Start the evaluation of the current expression, and displays either the result or an error message. The result may be immediatly used: if you click on an operator (e.g. "+") ACalc will suppose that the result is the first operand. Otherwise, the result will be deleted because ACalc will suppose you want to compute a new expression. Each time an expression is evaluated, it's result is automatically saved in the clipboard. This allow you to use this result in any program that also use the clipboard. If you want to have the result saved in an environnement variable, rather than the clipboard, you must call ACalc with the "SAVEVAR" argument (see @{" Running ACalc " Link "Arguments"}). ACalc keep in memory the 64 last computed expressions. You can walk through this list using the mouse's right button : a normal click will go up one expression, a click with a SHIFT key down will go down one expression. @endnode @node Keyboard "Using the keyboard" You can use ACalc not only with your mouse, but also with your keyboard. If you want to use the keyboard, you can either click on the display area and edit the expression as in any string gadget, or just press the key of your keyboard corresponding to the window's key label. In this case, you may also close ACalc window by pressing the "ESC" key. Some operators are to be entered and displayed in a different manner (not as the key label): for example, the "NOT" operator is displayed as '~' (tilde). If you use ACalc with the keyboard, you must press the '~' key, and not the 'N', 'O' and 'T' keys. Here is how you must enter the other operators: mode TAB key NOT ~ AND & OR | SHL < SHR > RCL M (followed by a memory number) BS BACKSPACE key convert to Euros d (FLT mode) convert to locale currency h (FLT mode) The STO and CLR keys cannot be selected with the keybord. @endnode @node ARexx "Using the AREXX port" ACalc now has an AREXX port, which name can be specified by the REXXPORT argument (see @{" Running ACalc " Link "Arguments"}). Any string sent to this port will be taken in account as if each character of the string has been entered with the keyboard. This means that the string must be terminated by a "=" in order to compute the result of the expression. The result is then available in the standard RESULT variable. Here is a sample script : /* AREXX */ OPTIONS RESULTS ADDRESS "ACalc" "35/7.2635=" valeur = RESULT SAY valeur As AREXX features a builtin expression evaluator, the most useful usage of ACalc AREXX port is the Euro conversion: /* AREXX */ OPTIONS RESULTS PARSE UPPER ARG montant ADDRESS "ACalc" /* convert local currency into Euros */ montant || "d" valeur = RESULT SAY "Amount in Euros:" valeur /* convert Euros into local currency */ montant || "h" valeur = RESULT SAY montant "Euros make" valeur @endnode @node History "Program history" v1.00, 15-Avr-93, 19904 bytes o First released version. v1.01, 26-May-93, 20140 bytes o Bug fixed: display wasn't good if the screen font was proportionnal v1.02, 29-May-93, 20148 bytes o Supports the "Show" command of the "Exchange" program v1.10, 07-Jun-93, 21012 bytes o Tries to open the window under the mouse pointer o Better support of fonts: use the default text font for the window, and the screen font for string gadget and window's title. o If ACalc is installed as a commodity, running it twice make it appeared instead of terminate. v1.20, 29-Jun-93, 20924 bytes o Modified gadget handling, in order that enabling/disabling them when changing working mode is faster (was terribly slow on an A500/A2000) v1.21, 12-Sep-93, 20864 bytes o Uses new version of the GetDefaultTextFont() function v1.30, 29-Oct-93, 21012 bytes o Read and execute messages from the "Exchange" program even when the window is opened o If you try to wakeup the program twice, the window will come in front of all windows o The window now correctly opens under the mouse pointer, even if the screen is bigger than the display size (take mouse position in the Screen structure, instead of the IntuitionBase structure) v1.31, 30-Dec-93, 20148 bytes o Added CX_POPUP argument o Compiled with SAS/C 6.50 v1.40, 02-Sep-01, 21680 bytes o Added Euro convertion o Compiled with SAS/C 6.58 v1.50, 11-Nov-01, 23304 bytes o Added rounding to Euro conversion o Added the AREXX port o Added the PUBSCREEN argument o Added an Installer script v1.60, 11-May-02, 23632 bytes o The M8 memory now stores the EURO change rate o The M9 memory now stores the last computed result o The initial value of memories M0 to M7 can now be set at program startup o Added navigation through the list of the 64 last computed expression with the mouse's right button o Documentation now in AmigaGuide format @endnode