[Z80 CPU] <-- data/addr/control bus --> [RP2040 (acting as ULA + RAM + ROM)]
|
+---> [Small SPI LCD (ST7789)]
+---> [SD card (for .tap/.z80 files)]
+---> [Beeper amplifier + speaker]
+---> [Li-ion charger + 3.3V LDO]
+---> [USB-C (power + HID)]
A modern portable design should include:
This is where the design of the Spectrum truly evolves. Modern retro engineers have replaced the physical Ferranti ULA with an FPGA (Field-Programmable Gate Array). A modern portable design should include: This is
The ULA is the Spectrum's heart, but its most brilliant trick is handling video. Most computers of the era used dedicated video display controllers (like the C64’s VIC-II). The Spectrum’s ULA generates the video signal directly. [Z80 CPU] <
Because the ULA controls the timing, it can siphon data from the RAM during the blanking intervals (the moments the TV electron gun moves back to the top of the screen). This creates the famous "contended memory" timing—a headache for emulator authors but a genius cost-saving hack that required fewer chips. -- data/addr/control bus -->