Skip to content
This repository has been archived by the owner on Apr 24, 2023. It is now read-only.
/ ZX-ESPectrum Public archive

A ZX spectrum 48K/128K emulator running on ESP32 with bitluni ESP32 VGA Board (also in TTG VGA32)

Notifications You must be signed in to change notification settings

rampa069/ZX-ESPectrum

Repository files navigation

We've Moved! Our Emulator has a New Home

Greetings fellow retro gaming enthusiasts!

We have some exciting news to share - our beloved emulator has packed its bags and moved to a new home at EremusOne/ZX-ESPectrum-IDF. (IDF - Incredible Digital Fun!)

We know it's a little sad to say goodbye to the old repository, but trust us, the new one is so much better. It's like upgrading from a rubber-keyed Spectrum to a 128k, but without the disappointment of finding out you still can't load anything on tape.

We've added some great new features and improved performance, so you can spend less time waiting for games to load and more time actually playing them. And, of course, we've kept all the classic features that you know and love.

So, what are you waiting for? Come join us in our new home at EremusOne/ZX-ESPectrum-IDF, and experience the joy of retro gaming like never before.

Thanks for all the good times, rampa069/ZX-ESPectrum repository. You were a faithful companion during many late-night gaming sessions, but it's time to move on to bigger and better things.

See you at the new repository!

Yours in retro gaming,

The Dev Team


ZX-ESPectrum (old readme for the history)

An emulation of the ZX-Spectrum computer on an ESP32 chip with VGA output based on bitluni's driver.

Features

  • VGA output, 8 or 16 bits.
  • Beeper digital output.
  • Accurate Z80 emulation.
  • Spectrum 16/48 achitecture emulation without PSRAM.
  • Spectrum 128/+2/+3 architecture emulation with PSRAM.
  • PS/2 Keyboard.
  • VGA OSD menu: Configuration, and architecture selection, ROM and SNA.
  • Tape save and loading.
  • SNA snapshot loading.
  • Internal SPIFFS support.

Work in progress

  • AY-3-8910 emulation and sound output with dedicated chip.
  • SD card support.
  • DivIDE emulation.
  • Dedicated motherboard design.
  • Joystick support.
  • USB keyboard.
  • OTA: Over the Air updates.

Compiling and installing

GNU/Linux, MacOS/X and Windows supported.

Install platformIO:

  • They have an extension for Atom and VSCode, and this is the webpage.
  • Select you board.
  • Install Bitluni's ESP32Lib (use version 0.2.1, newer versions such as 0.3.3 will lead to compile errors)

Softlink and customize platformio.ini

ln -s platformio.ini.linux platformio.ini
# or in osx
ln -s platformio.ini.osx platformio.ini

Copy boot.cfg

cp data/boot.cfg.orig boot.cfg

Upload the data filesystem

PlatformIO > Project Tasks > Upload File System Image

Compile and flash it

Right arrow at the bottom icon bar or PlatformIO > Project Tasks > Build and PlatformIO > Project Tasks > Upload.

Hardware configuration and pinout

See pin assignment in include/def/hardware.h or change it to your own preference.

Thanks to

And all the involved people from the golden age

And all the writters, hobbist and documenters

A lot of programmers, especially

  • GreenWebSevilla for its Fantasy Zone game and others.
  • Julián Urbano Muñoz for Speccy Pong.
  • Others who have donated distribution rights for this project.

About

A ZX spectrum 48K/128K emulator running on ESP32 with bitluni ESP32 VGA Board (also in TTG VGA32)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published