The Interface I

If you want to use the microdrive, you'll need cartridge files. The emulator can create an empty cartridge file for you. You have to format it before you can use it. Type
 FORMAT "m";1;"name"
to format the cartridge currently in Microdrive 1 giving it the name `name'. Next, type CAT 1 to get a catalogue of the files on it (none of course) and the number of kilobytes free. You can save a file by typing for instance
 SAVE *"m";1;"screen"SCREEN$
Instead of SCREEN$ you can use all other expressions that are permitted also when saving to tape, like LINE nnnn or CODE x,y etcetera. To load a file back from cartridge, you type (you guessed it)
 LOAD *"m";1;"screen"SCREEN$
If the file doesn't exist or is of the wrong type you'll get the appropriate error message. To erase a file, type for instance
 ERASE "m";1;"screen"
Note that no * is needed (or even permitted), and that only the name should be given. There's another way to create a file on a cartridge, and that is by using a command like OPEN #3;"m";1;"name", and printing to that stream. You can use MOVE to move data from stream to stream, but I'll not go into that — it's not very much used anyway.

Instead of to the microdrive, you can also `save to the RS232 link'. For instance, type SAVE *"b"SCREEN$ (note: there's no name!) to save a screen. On the emulator you can send the output to the RS232 channel to a printer (then SAVE *"b" is useless), to a file (can be useful) or to the COM port (very useful if you connect a real Spectrum to the PC's COM port!). You can load the data back by typing LOAD *"b"SCREEN$ and making sure the RS232 channel is fed with the right input (from a COM port or a file). See also paragraph 2.6.

If you want to use the RS232 channel for printing, open stream 3 for output to that channel by typing
 OPEN #3,"b"
or
 OPEN #3,"t"
The first will simply copy everything you send to stream 3 (using for instance LPRINT or LLIST) to the RS232 channel; the second converts CR's into CR/LF's, breaks off lines at 80 characters and translates keywords into character sequences. "t" is useful for LLISTings, but not for anything else.

Useful extra commands: CLS #, to clear the screen and reset the attributes to their reset defaults, and CLEAR # to do a CLS # and close all currently open streams (discarding all data that may still be buffered!)

The Interface I uses its own system variables. At the first error message you make (or RASP, or flashing question mark) and at the first Interface I statement you execute, it inserts them automatically. Some programs will not run when the Interface I has inserted its system variables. So if you load a game from tape, reset the Spectrum first and don't make an error typing LOAD "". With a bit of exercise you should be able to do this.