Two versions of this utility program are on the cassette, one which occupies
the Hi-res screen from &H4800 to &H54CB and precludes its use, and one at the bottom of the Basic RAM from &H5800 to &H64CB. Loaded with the SYSTEM command,
the start of Basic is adjusted respectively to 21709 and 25805.
A number of functions are provided; full-screen editing, copy lines of Basic
into new lines, keypad numeric entry for those with the keypads (the red keys
act as RETURN), write areas of ROM/RAM into Basic DATA statements lines, full
error messages (but alas, no beep), and write SYSTEM format tapes using SAVE.
Other commands provided are as follows:
CMD ... Display Basic program start and end addresses and length
KILL ... Compress Basic program by removing unncessary spaces
LOAD ... Identify cassette tapes as to type, name length, and if SYSTEM format,
start and end addresses and length
MERGE ... Append program from cassette to one already in memory.
PUT and FN ... Two-byte POKE and PEEK, the same as the DOKE and DEEK commands in other versions of Basic.
I have discovered two errors, one in the program and the other in the generally clear program instructions provided.
The format of the GETLINE command which converts areas of RAM/ROM to DATA lines is GETLINE etc. The instructions oomit the , and if used as shown, it gives a Syntax Error message.
The SAVE command writes one byte less than the end address entered, it seems that the length is determined by subtracting the start address from the end address, forgetting that they are inclusive. Add one to the end address to solve the problem.
The program works with new ROM Colour Genies, those having the SWAP command, and according to Algray, some or all the functions will not work with the older ROMs.
In conclusion, in my view, this is a utility program which every programmer should have to hand.