![]() |
Routines |
Prev: 1C6C | Up: Map |
There is a series of short subroutines that are used to fetch the result of evaluating the next expression. The result from a single expression is returned as a 'last value' on the calculator stack.
|
||||||||
This entry point is used when CH-ADD needs updating to point to the start of the first expression.
|
||||||||
NEXT_2NUM | 1C79 | RST $20 | Advance CH-ADD. | |||||
This entry point is used by the routine at CLASS_09.
The address of this entry point is derived from an offset found in the command class table.
This entry point allows for two numeric expressions, separated by a comma, to be evaluated.
|
||||||||
CLASS_08 | 1C7A | CALL CLASS_06 | Evaluate each expression in turn - so evaluate the first. | |||||
1C7D | CP "," | Give an error report if the separator is not a comma. | ||||||
1C7F | JR NZ,REPORT_C | |||||||
1C81 | RST $20 | Advance CH-ADD. | ||||||
This entry point is used by the routines at SAVE_ETC, LIST, FETCH_NUM, FOR, PR_ITEM_1, STR_ALTER, CO_TEMP_1, CIRCLE, DRAW and INT_EXP1.
The address of this entry point is derived from an offset found in the command class table.
This entry point allows for a single numeric expression to be evaluated.
|
||||||||
CLASS_06 | 1C82 | CALL SCANNING | Evaluate the next expression. | |||||
1C85 | BIT 6,(IY+$01) | Return as long as the result was numeric (bit 6 of FLAGS set); otherwise it is an error. | ||||||
1C89 | RET NZ | |||||||
REPORT_C | 1C8A | RST $08 | Call the error handling routine. | |||||
1C8B | DEFB $0B | |||||||
This entry point is used by the routine at SAVE_ETC.
The address of this entry point is derived from an offset found in the command class table.
This entry point allows for a single string expression to be evaluated.
|
||||||||
CLASS_0A | 1C8C | CALL SCANNING | Evaluate the next expression. | |||||
1C8F | BIT 6,(IY+$01) | This time return if the result indicates a string (bit 6 of FLAGS reset); otherwise give an error report. | ||||||
1C93 | RET Z | |||||||
1C94 | JR REPORT_C |
Prev: 1C6C | Up: Map |