48K to +3, one emulator, one Z80 core underneath
A ZX Spectrum emulator in Go, built on the zen80 Z80 CPU core. Emulates the 48K, 128K, +2, and +3 models (including the +3 floppy disc controller), with tape and snapshot support.
In action
Articles
All 5 articles →Documentation
ZenZX Manual
A reference for building, running, and driving ZenZX -- a ZX Spectrum emulator in Go, built on the zen80 Z80 CPU core. This manual is the organised reference; README.md…
Hardware accuracy — 2026-08-25/26 changes
Hardware accuracy — 2026-08-25/26 changes
Timex SCLD extended video modes
Reference notes for -ns-graphics mode-timex-NNN-. The Timex Sinclair 2068 / Timex Computer 2048 replaced the standard Spectrum ULA with the Timex SCLD ("Standard Cell…
Pluggable video rendering
How -ns-graphics modes plug into ZenZX's display, in both the live (GUI) and headless builds. Landed 2026-08-17, replacing a design where the standard bitmap+attribute…
ZenZX — known limits and dormant guards
Intentional limits, invariant boundaries, and recorded decisions. Defects and gaps that are meant to be fixed belong in TRACKING.md, not here.
zenscript (.zen) reference
zenscript is a small, line-oriented automation format for driving ZenZX. A .zen file is a timed list of actions performed on the virtual Spectrum, modelled loosely on a…