C566
to C574 |
Executes the IF command. C566 calls
C70C, which is a truth test that puts a zero on the
workspace stack (at 16,x where X = ?0) if false. |
C575
to C5BB |
Executes the REM command by incrementing
(5),Y until a <CR> is encountered. |
C5B9 to C607 |
A subroutine which prints the lowest
level of the workspace stack (i.e. 16,25,34,43) as a
signed decimal number in field size @. A, X, Y are
spoiled. |
C608
to C620 |
Data tables for the above routine. |
C62E
to C660 |
A subroutine which uses the vector a
(58) to search through a BASIC program looking for a line
number match, or a line number greater than that recently
input. The inputted line number is assumed to be on the
16,X workspace stack one level down from the workspace
pointer (?4). The routine returns with (58),Y pointing at
the character immediately after the matching line number,
and the carry is clear. If the carry is set, then no line
number match was found. |
C661
to C688 |
A suboutine called by the C80B multiply
routine. |
C689
to C6D9 |
A subroutine of C661. |
C70C
to C713 |
A subroutine which is the truth test
used by the IF and UNTIL commands. It evaluates an
arbitrarily complex statement or equation [pointed at by
(5),(73)] and places zero on the workspace stack at 16,X
if false. |
C714
to C721 |
The logical AND truth test (you use
C70C). |
C722
to C72B |
The logical OR truth test (you use
C70C). |
C731
to C79C |
String comparison truth test used by the
above truth test. |
C79D
to C7B6 |
deals with adding together two adjacent
4-byte numbers on the workspace stack, viz:
14
23
32
41, X |
= |
14
23
32
41, X |
+ |
15
24
33
42, X |
|
C7B7
to C7D2 |
As above, but subtraction. |
C7D3
to C7E0 |
As above, but bitwise logical OR. |
C7EF
to C80A |
As above, but EOR. |
C80B
to C87A |
Deals with multiplication. |
C87B
to C89B |
Similar to C79D, but bitwise AND based
on 16,X. |
C8?C to C8DB |
As for C3C8, but increments workspace
pointer, and does not copy the result to 52,53, etc. |