In the first instance it seemed that this might be a useful games language
being integer only and hence hopefully fast. Also you should have lots
of spare memory. However it is not tokenized, the text is stored in
full which makes it neither very fast nor very economical on memory.
The Basic occupies $1200 to $1C00 and the keywords start at $12E5.
Cold start is at $1200 and warm start at $1202.
Only integer arithmetic over the range +32767 is allowed and the line
number limit is similarly 32767. Only single letter variable names.
LIST |
Listing is stopped by holding down the Break key and restarts
on release. LIST 100 starts listing at line 100 and then continues. |
OLD
|
restores a NEWed program although if subsequent entries have been
made this will be more or less corrupted. |
SAVE |
No inverted commas needed for file name. File type 6. |
VERIFY |
Returns to ready with no comment if OK. Checksum errors on fault. |
LET |
seems to be optional. |
THEN |
Functions only. Must GOTO a line number. |
PEEK and POKE |
more or less as normal. Decimal addresses only up to 32767 but
hex over full range. Full 4 digit hex numbers preceded by $ are
required for both addresses and the argument of POKE although the
latter can be decimal |
USR(Z) |
As normal but again decimal only up to 32767. Hex over full range.
Use full 4 digits and $. |
INPUT |
Always generates a prompt even if a message is included, a comma
must be included as a separator e.g. INPUT “WHAT IS THE VALUE
OF A“, A |
PRINT |
Also uses a comma as separator. PRINT £Z, A prints out the
value of A in a field of width Z. Default is a field of 8. Overflow
is left adjusted. |
CLEAR |
Initializes all variables to 0. |
STOP |
Instead of END. No CONT. |
RND(Z) |
Random number from 1 to Z inclusive. |
SIZE |
As usual but SIZE above 32767 gives negative complement. |
CHR Z |
Prints character with ASCII Z ( hex or dec ). Like FORTH EMIT.
No carriage return output. |
SPC Z |
Prints Z spaces without carriage return e.g. like FORTH SPACES. |
TONE Z |
Switches on sound generator with tone defined by Z. Z from 256
to around 25000, when nothing was audible. 256 for highest note. |
QUIET |
Switches off sound. |
KBD |
Like GET. Z = KBD. Repeats, zero for no key presses. |
Logic |
As for SP5025 with "+" and "*". Also "-"
for XOR. |
The following are as normal:
RUN‚ NEW, BYE, NEXT, IF, GOTO, RETURN, GOSUB, REM, FOR, MUSIC,
TEMPO, LOAD, ABS(, SGN(, TO, STEP.
Arithmetic and equalities and inequalities seem as normal for the integer
arithmetic. There is no power function and apparently neither printer
output nor access to the clock. No string handling.
ERROR MESSAGES
|
These are rather terse: |
HOW? |
for data error, |
WHAT? |
for syntax error and |
SORRY |
for return stack overflow. |
A subroutine depth of 20 seems to be allowed. Did not find a limit
on FOR..NEXT. At run time the whole error line is listed with the
message and ‘?' at the stop point.
|
OTHER POINTS |
The ‘?' as abbreviation for PRINT is not converted
when listed. This will save memory since there are no tokens. Input
accepts capital letters but not graphics or lower case as numeric
= 0, without error.
|
On the whole a rather disappointing package but perhaps of some use
for the children to learn an.
Go to the download section.
|