Use the Spectrum 128 style menu below to navigate to the various sections concerning the ROM disassemblies.
|Spanish Spectrum 128 ROM|
The Spanish Spectrum 128 was released in September 1985 at the Sonimag Fair in Barcelona. The launch in Spain ahead of the UK was, according to Sinclair User magazine (No. 47, February 1986), down to three reasons:
- A deal with the UK retailer Dixons which prevented the launch of a Spectrum rival in the UK before the end of December 1985.
- The Spanish government provided production facilities at minimal cost so as to build up its electronics industry prior entry into the EEC.
- A law due to be introduced in Spain at the end of November 1985 which would have effectively banned Sinclair from exporting Spectrums to Spain, its biggest market after the UK.
It was not until March 1986 that the UK would get the launch of its Spectrum 128.
The Spanish Spectrum 128 contains 32K of ROM, divided into two banks of 16K referred to as ROM 0 (Editor ROM) and ROM 1 (BASIC ROM). At power on, ROM 0 is active and contains the 128 BASIC editor, the new 128 BASIC commands and the integrated calculator. ROM 1 contains a slightly modified version of the standard Spectrum ROM, and includes the keypad scanning routine in the previously unused area at the end of the ROM.
Many of the features of the Spanish Spectrum 128 ROM survived with very little modification into the UK Spectrum 128 ROM, as summarised in the following list:
- RAM disk commands and routines
- RS232 and MIDI commands and routines.
- PLAY and SPECTRUM commands.
- Keypad scanning routine.
- Command interpretation routines.
However, the Spanish Spectrum 128 ROM has some significant differences to the UK Spectrum 128:
- There are no menus.
- The 128 BASIC editor is completely different.
- The error messages are in Spanish.
- There is no Tape Tester facility.
- There is no Tape Loader option.
- New 128 BASIC commands EDIT, RENUMBER, DELETE and WIDTH.
Those routines that are still present in the Spectrum 128 ROM 0 are relocated to different addresses within the ROM, as shown in the following table:
The Spanish Spectrum 128 ROM 0 disassembly is based upon the work I performed on the Spectrum 128 ROM 0 disassembly, and was initially created using a Windows conversion utility I produced. following a detailed comparison of the contents of the two ROMs. All subsequent enhancements have been made manually due to the significant differences in the two ROMs. The Spanish Spectrum 128 ROM 1 disassembly is based heavily upon the Spectrum 128 ROM 1 disassembly.
|Click here to download the Spanish Spectrum 128 ROM 0 Disassembly (dated 16th July 2014).|
|Click here to download the Spanish Spectrum 128 ROM 1 Disassembly (dated 24th May 2009).|
|Click here to download a dump of the Spanish Spectrum 128 ROM 0.|
|Click here to download a dump of the Spanish Spectrum 128 ROM 1.|
The Editor ROM of the Spanish Spectrum 128 contains at least 23 bugs, although some of these never actually manifest themselves to cause problems.
|Click here to view the Spanish Spectrum 128 ROM 0 Bug List (dated 3rd September 2010).|
I have used what little spare space there is in the Spanish Spectrum 128 ROM 0 to include fixes for as many of the bugs as possible. The only bugs not fixed are as follows:
- $152E - Fixing this bug would break compatibility with 48 BASIC mode, which also contains this bug.
- $1ADF - After using the SPECTRUM command to switch to 48 BASIC mode, the ZX Printer still cannot be used.
- $22E4 - If a parameter of one of the new Editor command is out of range then an error report is not produced.
|Click here to download the Bug Fixed Spanish Spectrum 128 ROM 0 Disassembly (dated 1st September 2010).|
|Click here to download a dump of the Bug Fixed Spanish Spectrum 128 ROM 0.|
I have ported the Spanish Spectrum 128 ROM to work on my ZXC2, ZXC3 and ZXC4 Interface 2 PCBs, thereby creating a Spanish Spectrum 128 Emulator ROM cartridge. Screenshots of the Spanish Spectrum 128's 128 BASIC mode and a detailed description of its features can also be seen on this page.