The Sinclair ZX Spectrum is, without a doubt, one of the most iconic computers of all time. While it didn’t sell quite as many units as the legendary Commodore 64, it is the best-selling computer in history that is of British origin. It was so important in the United Kingdom that it earned Sir Clive Sinclair his knighthood. While they’re still quite easy to find there at reasonable prices, they’re difficult to find in the United States, because they were never sold here. Fortunately, you can now run a ZX Spectrum emulator on a humble ESP8266.
The ESP8266 is a WiFi-equipped microcontroller, and was never originally intended to do this sort of thing. But the affordability and capability of the ESP8266 has resulted in it gaining enormous popularity in the maker community. You can easily find ESP8266 development boards for less than $10, and they pack a very respectable 80MHz processor. That’s leagues ahead of the 3.5MHz Zilog Z80A processor that was inside of the ZX Spectrum. An emulator almost always needs to run on a machine that is many times faster than the machine to be emulator, and that 80MHz processor is perfect for the job.
In order for this to work, you’ll need a NodeMCU or another kind of ESP8266 development board. That’s paired with an ILI9341 LCD that has a built-in SD card reader. This is intended to be used with a custom-built keyboard, but it may be possible to avoid that if you’re only planning on playing games. The emulator code should be compiled with the Non-WiFi Arduino Core, which disables the WiFi and networking capability. After installation, you’ll be able to load .z80 ROM files from either an SD card or EEPROM storage. You’ll also be able to save .z80 files to the SD card. If you want to build a hardware-based ZX Spectrum emulator, this is a great choice.