The Sea Change ZX Minimal ROM
The Sea Change ROM is a radical re-working of the ZX Spectrum ROM so
none of the ROM routines such as $09F4 and $1601 are where they used to be.
New charts are required.
The amount of Free RAM can be obtained now with the CAT command which has
the main function of cataloging the streams area.
So CAT gives the free RAM which is now 41717 instead of
That's an extra 200 bytes plus a few extra due to the smaller command line.
This has been achieved by moving the System Variables down to address 23296
where the ZX Printer buffer used to be. You can still use COPY to copy the
display to the ZX Printer but LPRINT and LLIST now give an error.
If you want to list to a ZX printer then you must first use
In fact you can have as many as a dozen different streams opened to channel "P"
and each will contain its own printer buffer which, if you terminate items with
a semicolon, could contain uprinted text. All these new channels are created
in the CHANS area following the new system variables.
I have also added the "T", "B", and "N" channels to give the 16K ROM RS232 and
network capabilities. You can now output and input with those channels.
It is now possible to SAVE and LOAD to and from the network and RS232 but the
original 9-byte header format has been abandoned in favour of the standard
17-byte header. These commands are not compatible with Interface 1 and a
filename is required.
e.g. OPEN #7,"b" : SAVE #7 "anyname" : CLOSE #7
You can download a ready built Stage 1 ROM (sco1.rom) from
You can download a list of the re-located System Variables from
STOP PRESS. The Assembly File and ROM now uses the Newton Raphson method of
calculating square roots adapted from a FORTH word written by Steven Vickers
This is the original
that inspired this ROM