Some people never get over their first computer. Mine was an Amstrad CPC, and apparently I’m still not over it. There are plenty of CPC emulators out there, but I wanted something that does more than just run games: I wanted the whole workshop. So I built one, and it runs right in your browser. No install, no plugin, nothing.

It emulates the CPC 464, 664 and 6128, the 464/6128 Plus and even the GX4000. The Z80 core is written in C and compiled to WebAssembly, it passes ZEXALL, and all four CRTC types are modelled. Yes, demo coders, I’m looking at you. :)

The workshop part

  • A Maxam-style Z80 assembler and a BASIC editor: assemble, run, save to disk
  • Sprite, palette (all 4096 colours of the Plus) and font editors, live while your program runs
  • Image conversion to Mode 0/1/2 screens, with dithering and overscan
  • A cartridge builder for Plus/GX4000 .cpr files
  • Disk tools: AMSDOS file browser and a sector-level hex editor (protected disks welcome)
  • A debugger and profiler: conditional breakpoints, watches, frame-by-frame stepping, memory heat map, and a memory search to find that infinite lives POKE
  • WebM video and WAV recording, with the boring loading times cut out

There’s also Multiface II, light pen, printer capture, RAM expansions up to 576K, a ROM board and save states. The usual bells and whistles, basically.

If you’d rather have it on your desktop, there are builds for Windows, macOS, Linux (AppImage) and Debian/Ubuntu (.deb). They’re unsigned, so your OS will grumble the first time you launch them. Ignore it, it’ll get over it.

And bam, there it is: https://cpcworkbench.gradew.net. Have fun!