With the Sinclair Interface 1 attached, the Spectrum has an RS232 port available, with the possiblity of transferring files back and forth.
The purpose of this project is to write a loader which can load in a snapshot file over the serial cable and resume operation. For the moment Spxfr
wil be used to transfer files from the PC and the loader will be written to accomodate this.
A simple loader which will load in the following snapshot formats:
- PRG (which is a disk dump of a snapshot file from a +D formatted disk, used by my own emulator)
- SNA (the more common multiface format)
- Z80 (very popular format used by one of the first really advanced emulators, supports compression)
- and possibly SZX (Spectaculator and others)
Where possible the loader will try to minimise its memory footprint and retain as much data from the original snapshot as possible. This will be done by checking the printer buffer to see if it contains data and if not the rest of the loader will be relocated to and run from there. If it looks like the printer buffer was used to contain snapshot data, then a portion of screen memory will be used for the stack, loader code and register restore block.