Freedom report

One barScore 5.5

  • Free tierNo free tier on record
  • Open codeNo open-source code on record
  • Runs widely1 of 6 device platforms
  • DocumentedPlans, terms and facts published

ZOT is a free, open-source emulator for the Z80 CPU, the ZX Spectrum 48K, and CP/M 2.2, built around a shared Z80 core. Written in C, its core components have no dependencies beyond the C standard library. The project README says the core passes documented and undocumented Z80 tests in ZEXALL and is small enough to run on microcontrollers such as the RP2040. Spectrum emulation includes 16KB of ROM, 48KB of RAM, ULA video, keyboard and beeper support, memory contention, and PAL frame timing. Its tape player loads TZX and TAP files, and it supports 48K .z80 snapshots in versions 1, 2, and 3. The SDL desktop frontend maps a PC keyboard to the Spectrum keyboard, accepts Kempston joystick input, and supports snapshot loading and tape playback through command-line arguments and drag-and-drop. CP/M 2.2 implements 39 listed BDOS functions and includes a C-based command processor with commands such as DIR, ERA, TYPE, REN, USER, and SAVE. CP/M drives A: through P: map to host directories, with an emulated disk capacity of 8MB. Makefile targets build the full project, a Spectrum SDL frontend, or a CP/M terminal frontend; SDL2 is required only for the Spectrum frontend. ZOT is MIT licensed, while files in z80-specs use a different license.

Who it is for

ZOT suits people who want to run ZX Spectrum 48K or CP/M 2.2 software through an open-source Z80 emulator. Its microcontroller-sized core may also interest developers working with RP2040-based devices, including Raspberry Pi Pico, Pimoroni Tufty 2040, and PicoCalc.

What is good

  • One shared core supports Z80, ZX Spectrum 48K, and CP/M 2.2 emulation.
  • Core components depend only on the C standard library.
  • Loads TZX and TAP tapes and .z80 snapshots in versions 1, 2, and 3.
  • CP/M maps drives A: through P: to host directories.
  • Makefile targets build a Spectrum SDL frontend or CP/M terminal frontend.

What to know first

  • The listed desktop platform is Linux.
  • SDL2 is required for the Spectrum frontend.
  • The included ZX Spectrum ROM is copyrighted.

Verdict

Choose ZOT if you want a free, MIT-licensed project covering Z80, Spectrum 48K, and CP/M emulation, with tape and snapshot support. Look elsewhere if you need a listed host platform beyond Linux or want the Spectrum frontend without SDL2.

Get started with ZOT

  1. Visit the ZOT project on GitHub.
  2. Choose a Makefile target for the full project, Spectrum SDL frontend, or CP/M terminal frontend.
  3. Install SDL2 if you are building the Spectrum frontend.
  4. Build the selected target with its Makefile.
  5. For the desktop Spectrum frontend, load a snapshot or play a tape through command-line arguments or drag-and-drop.

Limits to know first

The project supports the ZX Spectrum 48K model and lists Linux as its platform. The Spectrum SDL frontend requires SDL2; the CP/M terminal frontend does not have that stated requirement.

Questions about ZOT

Is ZOT free and open source?

Yes. ZOT is free and MIT licensed. Files in the z80-specs directory use a different license.

Which systems does ZOT emulate?

It emulates the Z80 CPU, ZX Spectrum 48K, and CP/M 2.2 using a shared Z80 core.

What platforms can it run on?

Linux is listed as a platform. The README also describes the core as small enough for microcontrollers such as RP2040 and lists Raspberry Pi Pico, Pimoroni Tufty 2040, and PicoCalc as host platforms.

Which Spectrum tape and snapshot formats does it support?

The tape player loads TZX and TAP files. The emulator loads 48K .z80 snapshots in versions 1, 2, and 3.

Does ZOT need SDL2?

SDL2 is required for the Spectrum frontend. The project also provides a CP/M terminal frontend.

Who makes ZOT?

The GitHub profile identifies antirez as Salvatore Sanfilippo, a computer programmer based in Sicily, Italy, who mostly writes open-source software.

Compared on ZX spectrum emulators

Free plan
Yes
Supported Spectrum models
48k
Host platforms
Raspberry Pi Pico RP2040; Pimoroni Tufty 2040; PicoCalc
Tape formats
TAP, TZX
Snapshot formats
Z80 versions 1, 2, and 3
Open source
Yes
Peripheral support
PC keyboard, Kempston joystick, tape input, beeper audio

Best ZOT alternatives

See all 20