Skip to content

Setup · Docker toolchains

Start coding
in 60 seconds.

One command takes you from a fresh laptop to a working toolchain — cross-assemblers and build tools for every system, in a container. No dependency management, no version conflicts. Just code.

Three commands

Quick start

1

Install Docker Desktop

Free from docker.com for Mac, Windows, and Linux

2

Download the toolchain

docker pull ghcr.io/code198x/commodore-64
3

Build your code

docker run -v ./code:/code ghcr.io/code198x/commodore-64 acme game.asm -o game.prg

Done — your compiled program is ready. Run it in a native emulator (Fuse for Spectrum, VICE for C64), or in Emu198x, our own.

One per machine

Available toolchains

Each toolchain is tailored to its system, with the right assembler, emulator, and development tools.

Commodore 64

ghcr.io/code198x/commodore-64
Assembler: ACME
Recommended emulator: VICE (x64sc)
Output: .prg files
Also includes:
  • petcat for BASIC
  • Screenshot capture
View full setup guide

Sinclair ZX Spectrum

ghcr.io/code198x/sinclair-zx-spectrum
Assembler: pasmonext
Recommended emulator: Fuse
Output: .tap / .sna files
Also includes:
  • zmakebas for BASIC
  • Screenshot capture
View full setup guide

Nintendo Entertainment System

ghcr.io/code198x/nintendo-nes
Assembler: ca65 / ld65
Recommended emulator: FCEUX
Output: .nes ROM files
Also includes:
  • cc65 C compiler
  • Screenshot capture
View full setup guide

Commodore Amiga

ghcr.io/code198x/commodore-amiga
Assembler: vasm (68000)
Recommended emulator: FS-UAE
Output: Executables / .adf disks
Also includes:
  • amitools (xdftool)
  • Video capture
  • NDK 3.2
View full setup guide

Atari ST

Assembler:
Recommended emulator:
Output:
Also includes:
View full setup guide

BBC Micro

Assembler:
Recommended emulator:
Output:
Also includes:
View full setup guide

MSX

Assembler:
Recommended emulator:
Output:
Also includes:
View full setup guide

Amstrad CPC

Assembler:
Recommended emulator:
Output:
Also includes:
View full setup guide

Commodore VIC-20

Assembler:
Recommended emulator:
Output:
Also includes:
View full setup guide

Sega Master System

Assembler:
Recommended emulator:
Output:
Also includes:
View full setup guide

Build · test · ship

The workflow

Build in Docker

Cross-assemblers run in containers — consistent builds across macOS, Windows, and Linux with zero setup.

Test in an emulator

Run your compiled program in Fuse, VICE, FS-UAE or FCEUX — or in Emu198x, our own. Native emulators give the smoothest experience today.

Automated screenshots

The toolchains capture screenshots headlessly — the same images you see in the lessons, regenerated on every build.

VS Code integration

Dev Container support drops you into a ready IDE, syntax highlighting and all.

Our own emulator

Emu198x

Cycle-accurate · built in the open

ZX SpectrumC64NESAmigaGame BoyDragon 32
On GitHub →

Most emulators are black boxes you trust and forget. Emu198x is ours, and it's built in the open — a Rust project growing cycle-accurate cores that model each machine directly, down to the pins and the timing. When a hardware path isn't modelled well enough yet, it stays honestly incomplete rather than faking it — the same bar we hold the lessons to.

Today it runs headless and scriptable: boot a machine, run a build, grab a screenshot, inspect memory. A polished desktop app and in-browser play — embedded right in the lessons — are on the way. Until then, your code runs on Fuse, VICE and the other native emulators.

Prefer native tools? You can install assemblers directly instead of using Docker. You'll manage dependencies yourself, but it's fully documented.

One more thing — ROMs. The C64 and Amiga need their original system ROMs to run. They're not ours to give away, so you bring your own — free where you can, or a few pounds via Forever.