Modifications To Tiny BASIC For NAS-SYS
By Buxton
This article is intended to show how the Tiny Basic Interpreter –V2, published the
Merseyside Nascom Users Group program book, can be changed to run under Nas-Sys 1/3,
rather than under monitor T4 for which it was originally intended. In addition,
the modification provide full screen editing of the source text. Assuming that a copy
of the interpreter is in store, all that is required is to change the locations specified
below to the new code, replace the old editor routine at £17C5 with the GETLN
routine given in the full assembler listing, then save the new version of Tiny Basic on
tape. Please note that old programs written for TBI-V2 will have to be altered, since
the end of line marker is now £0D, rather than the £1F used by T4 and the earlier
monitors. Other changes are:
-
The command separator is now ‘:’ rather than ‘ ;’
-
Format control in print now takes the form [5 if you wish the number to be
printed in 5 spaces
-
‘CLEAR’ is no longer active
-
The ‘DUMP’ command is replaced by ‘SAVE’
-
Any number preceded by £ is now hexadecimal which makes POKEs
very much easier. This may be used anywhere,
e.g. FOR X = £C to £FF
-
When reading a tape you must first poke the ASCII code for the letter R,
£52 or 82 decimal, into ARGX in the workspace (£C0B, 3083), or the
tape will be verified, not Read
-
If you are using Nas-Sys 3 you must also poke a zero into location ARGN
(£C2B, 3115), or the program may be loaded at the wrong location.
-
The input function X = IN (port no.) becomes X=CODE(£14AC)(port no.)
I hope that these notes and the list of modifications will prove useful to everyone
who has asked for an updated version of TBI-V2.
Address | Old Code | New Code | Comments |
|
1014 | 1E | 0C | Clear screen |
1019 | 56 | 53 | Change V2 to S2 |
103C | 1F | 18 | |
103F | 1F | 0D | |
1142 | 3B | 3A | Command separator : not ; |
1145 | 1F | 0D | |
114C | 1F | 0D | |
114F | 1F | 0D | |
1156 | 23 | 5B | [ replaces £ for formatting |
1175 | 1F | 0D | |
11C4 | CD0C07 | DF5200 | Read tape |
11D8 | CD0004 | DF5700 | Write tape |
11DE | Change to DF6421210C7E23C9 | £ denotes hex. Not Clear |
1343 | 1F | 0D | |
150E | 3B | 3A | Command separator : not ; |
1517 | 1F | 0D | |
1529 | 1F | 0D | |
152D | 1F | 18 | |
1533 | 1F | 0D | |
1558 | 1F | 18 | |