156 lines
3.7 KiB
Plaintext
156 lines
3.7 KiB
Plaintext
|
||
Turbo Pascal 6.0
|
||
Turbo Calc Information
|
||
|
||
Build Information
|
||
-----------------
|
||
The following files are provided in TCALC.ZIP and are required
|
||
in order to build TCALC.EXE:
|
||
|
||
TCALC PAS
|
||
TCCELL PAS
|
||
TCCELLSP PAS
|
||
TCHASH PAS
|
||
TCINPUT PAS
|
||
TCLSTR PAS
|
||
TCMENU PAS
|
||
TCPARSER PAS
|
||
TCRUN PAS
|
||
TCSCREEN PAS
|
||
TCSHEET PAS
|
||
TCUTIL PAS
|
||
TCCOMPAR OBJ
|
||
TCMVSMEM OBJ
|
||
|
||
In addition, TCALC uses the OBJECTS module, so make sure OBJECTS.TPU
|
||
is available (located in the \TP\TVISION directory) in your unit
|
||
path.
|
||
|
||
Types of Cells
|
||
--------------
|
||
|
||
Value: A number.
|
||
|
||
Text: A string - start it with a space to make sure that it
|
||
doesn't get parsed.
|
||
|
||
Formula: A string that is an expression (see explanation of
|
||
expressions below). This cell will be constantly updated (if
|
||
AutoCalc is on) to the current value of the expression.
|
||
|
||
Repeat: A cell with a character that will repeat indefinitely
|
||
across the spreadsheet. Type in the character that you want
|
||
to repeat with a leading backslash (example: type \_ to get
|
||
an underline across the screen).
|
||
|
||
General Information
|
||
-------------------
|
||
Columns range from A to CRXO (65535), and rows range from 1 to
|
||
65535.
|
||
|
||
The little dot in the upper left of a spreadsheet tells you
|
||
which of the spreadsheets is the current one. The number of the
|
||
spreadsheet is also printed, along with 'F' if formula display
|
||
is on and 'A' if AutoCalc is on.
|
||
|
||
The file that the spreadsheet will be saved to is listed at the
|
||
bottom of each spreadsheet, along with an asterisk if the
|
||
spreadsheet has been updated.
|
||
|
||
Expressions
|
||
-----------
|
||
|
||
Cell names in formulas are typed in with the column followed by
|
||
the row:
|
||
|
||
A1+A2
|
||
B6^5
|
||
|
||
To compute the sum of a group of cells, put a colon between the
|
||
first cell and the last cell in the group:
|
||
|
||
A1:A10 - Sum all of cells from A1 to A10 and puts the
|
||
result in the current cell.
|
||
|
||
A1:C10 - Sum of all of cells from A1 to A10, B1 to B10,
|
||
and C1 to C10 and puts the result in the current
|
||
cell.
|
||
|
||
Available Functions
|
||
-------------------
|
||
|
||
ABS - absolute value
|
||
ACOS - arc cosine
|
||
ASIN - arc sine
|
||
ATAN - arc tangent
|
||
COS - cosine
|
||
COSH - hyperbolic cosine
|
||
EXP - exponential function
|
||
LOG - logarithm
|
||
LOG10 - base 10 logarithm
|
||
POW10 - raise argument to the 10th power
|
||
ROUND - round to the nearest whole number
|
||
SIN - sine
|
||
SINH - hyperbolic sine
|
||
SQR - square
|
||
SQRT - square root
|
||
TAN - tangent
|
||
TANH - hyperbolic tangent
|
||
TRUNC - return the whole part of a number
|
||
|
||
Examples:
|
||
|
||
TRUNC(A1)
|
||
SQRT(SQR(34.5))
|
||
ABS(TRUNC(B16))
|
||
|
||
Shortcut Commands
|
||
-----------------
|
||
|
||
AltX - Quit
|
||
Ins - Turn block on and off
|
||
Del - Delete current cell
|
||
F2 - Save current spreadsheet
|
||
AltF2 - Save as
|
||
F3 - Replace current spreadsheet
|
||
AltF3 - Load new spreadsheet (opens up additional window)
|
||
F4 - Delete current spreadsheet
|
||
F6 - Next spreadsheet
|
||
F7 - Toggle formula display on/off
|
||
F8 - Toggle AutoCalc on/off
|
||
F9 - Recalc
|
||
F10 - Main menu
|
||
ASCII keys - Add cell
|
||
|
||
The Parser
|
||
----------
|
||
|
||
The state and goto information for the parser was created using
|
||
the UNIX YACC utility. The input to YACC was as follows:
|
||
|
||
%token CONST CELL FUNC
|
||
%%
|
||
e : e '+' t
|
||
| e '-' t
|
||
| t
|
||
;
|
||
t : t '*' f
|
||
| t '/' f
|
||
| f
|
||
;
|
||
f : x '^' f
|
||
| x
|
||
;
|
||
x : '-' u
|
||
| u
|
||
;
|
||
u : CELL ':' CELL
|
||
| o
|
||
;
|
||
o : CELL
|
||
| '(' e ')'
|
||
| CONST
|
||
| FUNC '(' e ')'
|
||
;
|
||
%%
|
||
|