The Amstrad CPC, in a browser tab, with the workshop attached.
An emulator of the CPC 464, 664, 6128, 464 Plus, 6128 Plus and GX4000, with an assembler, a BASIC editor, a debugger, disk tools and Plus sprite and palette editors around it. Nothing to install.
RUN"EMULATOR Start the emulator →Or boot straight into a 464, 664, 6128, 464 Plus, 6128 Plus or GX4000.
CAT
Drive A: user 0
Most CPC emulators run software. This one is also a place to make it, and it has a few tricks we haven't seen anywhere else.
-
ASSEMBLE.BIN 9K
An assembler and a BASIC editor, built in
Write Z80 in Maxam-style syntax or type a BASIC listing in a proper editor, then assemble into memory, run it, or save it to the disk. No cross-assembler and no disk image juggling.
-
SPRITES .BIN 4K
Edit Plus hardware sprites while they move
The 16 ASIC sprites, live, as the machine holds them. Pencil, fill, flip, shift, zoom and position, with pause so the game can't redraw over you. Export as DEFB lines, BASIC DATA, binary or PNG.
-
PALETTE .BIN 1K
A palette editor that survives ink flashes
All 4096 colours on the Plus, the 27 classic inks elsewhere. Edits also go into the firmware's own ink table, so BASIC doesn't quietly put the old colours back.
-
FONT .BIN 3K
Redraw the character set live
All 256 characters on an 8×8 grid. The ones BASIC keeps in RAM change on the CPC at once; for the rest, Make Room types the SYMBOL AFTER for you. Export as SYMBOL lines, DEFB lines, binary or a PNG sheet.
-
CONVERT .SCR 7K
Turn any picture into a CPC screen
Mode 0, 1 or 2, standard or overscan, 27 inks or the Plus's 4096 colours, with dithering, brightness and contrast. See it on the CPC, then save it to the disk with a loader, or with a display routine your own program carries on from.
-
CARTRIDG.CPR 9K
Build your own Plus and GX4000 cartridges
Turn a program into a .cpr that boots with no firmware, or put a .dsk on a cartridge with the firmware and BASIC: games that load through AMSDOS run from it as they would from the drive. Run it straight away, or download it.
-
KEYBOARD.BAS 3K
A keyboard that reads your ROM
The layout (English, French or Spanish) is read from the ROM's key tables. Play by position, or type by character: KEY DEF, CAPS LOCK and SHIFT LOCK are honoured, text can be pasted, and a clickable CPC keyboard lights up as keys go down.
-
DRIVE .DSK 2K
A floppy drive that behaves like one
The disk spins, the head steps and settles, bytes arrive on time, so fussy loaders load. Turn on the drive sounds for the motor, the seeks and the head clack.
-
FILES .DSK 2K
Look inside your disks
Every file with its AMSDOS header: type, load and exec addresses. Drop files from your computer onto the disk, export them with or without their header, rename, delete.
-
SECTORS .DSK 3K
Edit any sector, protected disks too
A hex editor for every sector on the disk, in the order they pass the head, whatever the format. It says what each sector holds (the directory, which file, free space) and shows CRC errors, deleted data, weak copies and odd sizes; sector IDs can be changed too.
-
DEBUG .BIN 6K
A debugger that shows the beam
Breakpoints on addresses, memory and I/O ports, with conditions like
A==3 && (HL)>&80and hit counts; a watch list; step in and step over (DJNZ and LDIR too); and where the raster beam is on the screen as you step. -
PROFILE .BIN 5K
See where the time goes
A 64K heat map of where the Z80 spends its time and what it reads and writes, with the hot spots listed and the instructions that write the screen picked out. And a memory search that finds where a game keeps its lives by how the number changes, then pokes it or catches whoever writes it.
-
CTM644 .SCR 5K
The monitor you remember
Colour, green or grey screen, then scanlines, the CTM644's shadow mask and glow, or a fuzzy RF television, with phosphor persistence on top.
-
RECORD .VID 2K
Record what you play
Every frame, 50 a second, and the sound, to a WebM video; or the sound alone to a WAV. Time spent paused or fast-loading is left out, so the video skips the wait.
-
CRTC .BIN 8K
Accurate with demos
A hand-written core: the Z80 passes ZEXALL, timing is right to the microsecond, and all four CRTC types are modelled closely enough to match the Shaker test suite's photos of real machines.
-
MACHINES.BAS 4K
Six machines and the extras
464, 664, 6128, both Plus models and the GX4000 console. A Multiface II with its red button, a light pen on the mouse, a printer that captures text, RAM expansions up to 576K.
-
ROMBOARD.ROM 3K
A ROM board for your own ROMs
Put Maxam, Protext, Utopia or Parados in upper ROM slots 1 to 15, on every model including the Plus. Each slot shows the ROM’s name and version and has an on/off switch, and the board is kept in the browser.
-
SLOTS .SNA 2K
Ten save states, with pictures
Save the whole machine into one of ten slots kept in the browser, each with a picture of the screen, the date, the model and the disk in the drive. Quick Save and Quick Load survive a reload. Plus and classic .sna files load and save too.
129K free
|DOWNLOAD
Desktop app
The same emulator as a Windows or Linux app. It works offline, starts with the ROMs already in place, and Save Disk writes straight back to your .dsk file.
-
WINDOWS .ZIP 150M
Windows (64-bit)
Unzip it anywhere and run
CPC Workbench.exe. The app isn't signed, so SmartScreen may ask first: More info > Run anyway. -
LINUX .APP 125M
Linux AppImage (x86-64)
For any distribution:
chmod +xthe file, then run it. -
DEBIAN .DEB 100M
Debian / Ubuntu package (amd64)
Install it with
sudo apt install ./cpc-workbench-linux-amd64.deb; it then appears in the applications menu.
In the browser, bring your own ROMs: the Amstrad ROM images are copyrighted, so the web emulator asks for your own dumps and keeps them in your browser for next time.