4 ms·
There was a wonderful book called 'The Spectrum ROM disassembly' that gave a full and detailed analysis of the whole thing. A good chunk of the code was cloned
by tragomaskhalos 5y ago
There was a wonderful book called 'The Spectrum ROM disassembly' that gave a full and detailed analysis of the whole thing. A good chunk of the code was cloned from the ZX81, but as you say the tape routines were very nice, as was the stack-based calculator which was invoked via an RST call followed by opcodes for pushing numbers plus all the arithmetic and trig functions. I got knee deep into my own disassembly of the Interface 1 (?) ROM which has all the microdrive code, but never finished it :-/
- belter 5y agohttps://archive.org/details/CompleteSpectrumROMDisassemblyThe https://archive.org/details/CompleteSpectrumROMDisassemblyTh...
- razzio 5y agoAh yes that brings back memories. I knew that book inside-out. I made the ROM writable by soldering a CMOS ram chip across the ROM (was it 16KB?) and any write to the ROM would end up in the RAM. A switch selected either the ROM or RAM to read from. On startup simply copy the ROM to the RAM and flip the switch. After this operation, using 'The Spectrum ROM disassembly' book the world was your oyster. I modified the ROM routines for reading/writing those little tape drives and bypass copy protection, for experimental purposes of course :)
- YZF 5y agoI still have the book...
- mdb31 5y agoYeah, that seems to have been a pretty popular book, but I've literally never seen it. At the time, no library near me had it available, and ordering it from the UK was just too expensive for 13-year-old-me. I did have my own ROM disassembly, in two school notebooks, that I still keep to this day. Mu handwriting was pretty bad already then, though, so I prefer to think of all this as "lost in time" anyway. Decades later, I did (pre-)order and read "The ZX Spectrum ULA", which documents, in painful detail, the inner workings of the custom Ferranti chip that powered most of the Spectrum. This really did drive home the message that, no matter how much I thought I understood the low-level workings of my Speccy, there were still many lower-level layers left to explore. Which, I guess, is the central lesson of IT...
- harry8 5y agohttps://archive.org/details/CompleteSpectrumROMDisassemblyThe https://archive.org/details/CompleteSpectrumROMDisassemblyTh...
- billforsternz 5y agoI had that book and remember learning something from the very first line of code; XOR A. This clears the accumulator (of course) with a one byte instruction, improving on the more obvious LD A,0 two byte instruction I'd always used up until then.