2.12 Using the Multiface 128 The following is an excerpt from the original Multiface 128 documentation: MULTIFACE is a registered trademark af RORANTIC ROBOT. Multiface 128 is a true multi-purpose interface with 1) fully universal and 100% automatic back-up facility for tape, microdrive, Discovery, Plus D or Disciple (although the Discovery is not emulated, so that that feature is not usable), 2) 8K RAM extension - suitable for GENIE, LIFEGUARD, or as a buffer, 3) MULTI TOOLKIT to study/modify/develop programs, POKE infinite lives, etc. Multiface 128 works on the Spectrum 48/128. It can be used any time in any mode; it is immaterial what is inside the Spectrum at that moment or how or from what source (tape, disk, cartridge) it has been loaded (or typed in, etc.). Multiface does not save programs, but computer contents (compressed RAM image). Upon returning from the M128 or upon re-loading, the programs continue as if never frozen. To use the M128: 1) Push the NMI key (F5) 2) Select the required option from the menu The MAIN MENU options are: Exit: to abandon the Multiface and exit to BASIC (provided BASIC is present). By using exit, you come out of the Multiface entirely. All efforts are made to preserve the current program in the Spectrum intact. The main condition is the existence of standard system variables - without these the Spectrum crashes. A successful exit gives you full access to the program. To restart it, if needed, you must know the starting line or address. Exit is impossible in the 128K mode when the edit ROM is paged and Spectrum ROM is off; in such cases it does not appear on the menu at all. All in all, you can only exit to BASIC if it exists - it is like jumping into a pool: a joy if it's full of water, a crash if there is none. Return: to continue the program. Save: to proceed to the SAVE routines: a) input the name of the program. Up to 9 characters (or just press ENTER to the input RUN automatically as a default) b) save to: Tape, Microdrive, Opus [does nothing], Disciple (use D for Plus D too). You can save the entire program (including the screen), or the screen only. Programs are compressed to take the minimal room possible and to load faster. Screens saved on their own are left intact as standard Spectrum screens. c) Format microdrive cartridges. Cartridges are automatically named after the programs to be saved. Tool: to access the MULTI TOOLKIT routines. quit - to return to the main menu Enter - to PEEK and scroll through addresses or to POKE Space - to allow you to type in a new address hex - to toggle between hexadecimal and decimal display format reg - to point to the Z80 registers as they were when the program was frozen window - to open a window with full on-screen editing using the cursor keys. The flashing window address corresponds to the address in the bottom edit line. The window display is by default in hex, but you can change it to text - to see the 128 bytes in the window as ASCII text. select - to inspect RAM banks 0-7 in 128K mode. Press s + the bank number Print - to dump screen to printer. For printer interfaces using COPY command. You can POKE address 8200 (decimal) with the following values, if you wish to 113 to turn the line feed on (cr+lf) 112 to turn the line feed off (cr) 17 to dump screen as text with the line feed on 16 to dump screen as text with the line feed off Jump - not to return, but jump to another address. Strictly for machine code users only. Enter the address to jump at 8192/3 (low/hi). You can jump to Spectrum ROM/RAM and to M128 8K RAM. As the M128 overshadows the ZX ROM (8192-16383), address 8194 determines the paging status: if it is 0, the M128 RAM remains paged, 1 pages out the RAM and any other value disables the jump command completely. [Note: if it is 0, also the M128 ROM (0-8191) remains paged.] You can jump from the main menu, and you can also pre-program M128 to jump directly upon NMI (F5) and by-pass the M128 ROM software entirely. To program the direct jump, POKE 8192-3 with the jump address, and then also 8195-7 with a special identification word RUN (i.e. 82,85,87). Whenever you press NMI now, you will jump to the predefined address and not see the M128 menu. To return from your program to the program you stopped, use RST 0. To revert back to the Multiface normal operation, press NMI and BREAK (shift+space) simultaneously. This also cancels the code word RUN. In standard mode M128 uses 8192-11144 as a buffer (8192-13496 once you proceed to SAVE) and overwrites anything in there. Using direct jump, you have 8257-16338 available. Clear - to clear the extra 64K RAM bank (in 128K mode only!). You can clear any time, but it is only useful with 48K programs in 128K mode. However, you should save 48K programs in 48K mode anyway. Also, for obvious reasons, clearing the banks in 128K programs is not a good idea. The actual M128 has a software on/off switch, so that it could be made completely invisible to programs until the NMI switch was pressed. This software switch is not emulated. The M128 could be turned off by pressing 'O' in the main menu; this does not work on the emulator. You can turn off the M128 in the Select Hardware (F9) menu. Using the extra 8K RAM - M128 has an 8K Rom containing its own software, and an 8K RAM used as a buffer. You can use the 8K RAM for your own mcode routines or for data (but not for BASIC). The RAM must be paged in machine code to be accessed: use IN A,(191) to page in, and IN A,(63) to page out. The BASIC In and Out commands can not be used here (they work, but result in a crash). The 8K RAM overshadows the Spectrum ROM and thus anything contained in the M128 RAM cannot make any calls to the Spectrum ROM, as they both occupy the same area. The M128 RAM routines should therefore be self-contained, independent of the Spectrum ROM. Poking infinite lives - To POKE, say 31000,0, first load the program as usual. When it's loaded, press NMI (F5) and select the tool by pressing T. When the toolkit menu appears, press SPACE and type 31000. Once you type 5 digits the cursor automatically moves to the value field (no need to press ENTER), so type 0 (value is 1-3 digits long) and this time press ENTER. Finally press Q to quit the toolkit and R to return to the program. The Multiface 128 was designed by Romantic Robot UK Ltd, 54 Deanscroft Avenue, London NW9 8EN, tel. 081-200 8870.