These have the same functions as LIST and PRINT in 8k ROM BASIC, but
output is directed to the printer. If a program halts for no obvious reason and
LPRINT has been used, check that the printer is switched on and ‘on-line’!
This has the function of defining the starting addresses of assembly
language subroutines; up to 10 such subroutines can be used. The format is:
DEFUSR <digit>=<X> where X is the starting address.
The arrays or vectors specified are deleted and may be redimensioned if
required. The format is:
ERASE <array name 1>, ....... “array name n>
The format of these statements is:
(L)PRINT USING <string>;<list>
These print (on screen or printer) the values of the expressions in the <list> in
a manner dictated by the <string>; the <list> contains constants, variables or
expressions to be printed, separated by punctuation as in the PRINT statement.
ON ERROR GOTO:
The format for this statement is:
ON ERROR GOTO <line number>
When an error occurs, it diverts to the specified line; sets the variable ERR to
the error code and ERL to the offending line number. ON ERROR GOTO O is used to
disable error trapping.
This is used to restart program execution after error trapping. Normally,
a line number is specified but if it is omitted or set to zero, then the program
resumes at the statement where the error occurred. RESUME NEXT causes program
execution to resume at the statement after the one where the error occurred.
A facility which allows the values of two variables to be exchanged. They
must be of the same type – e.g. strings, integers or reals. The format is: SWAP
<variable 1>,<variable 2>.
Enables the trace flag; this prints the line numbers of statements as
they are executed and is useful for debugging. It can be used both as a command
and as a statement.
Disables TRON; TRON is also automatically disabled by the ‘NEW’ command.
Operators are used to add, subtract, multiply etc. in statements; there
is an established order of precedence as follows: parentheses – ‘brackets’ have
the highest precedence and the rest follow in decreasing order; exponentiation
(^), negation (-), multiplication (*) and division (/), integer division (\),
modulo (MOD), addition (+) and subtraction (-) (subtraction is not the same as
negation!), then the relational operators = , <> , < , > , <= , =< , >= , =>. The
logical operators which follow are also in decreasing order of precedence: NOT,
AND, OR, XOR, EQV and
IMP. (XOR is exclusive OR, EQV is Equivalence and IMP is
Implication.) All the logical operators are ‘bitwise’.