A collection of Claude Skills for developing on 8‑bit Sinclair machines — the ZX Spectrum (48K/128K) and Timex (TC2048/TS2068) — and for driving the ZEsarUX emulator. BASIC, C, Z80 assembly, graphics, sound, the exotic screen modes, and a hands‑on emulator control + debugging skill — designed to compose: write in BASIC/C/asm, build graphics and music assets, then load, run and debug in ZEsarUX.
| Skill | What it does |
|---|---|
zx-spectrum-basic |
Write, enter, run and debug Sinclair BASIC — the keyword‑token editor, graphics & colour clash, sound, machine differences, full key→token map. |
z88dk |
Compile C (and Z80 asm) with the z88dk cross‑compiler (zcc, +zx/+zxn/+ts2068) into a runnable .tap/.sna; the ZX C library, sprites, banking, pragmas. |
z80-assembly |
Hand‑written Z80 machine code: instruction set, Spectrum hardware (screen/attrs, ULA, IM2 interrupts, keyboard/joystick), assemblers (sjasmplus/pasmo). |
zx-graphics-assets |
Turn images into .scr screens, UDGs and sprites; tame colour clash. Bundles a Python converter + sprite extractor and a zero‑dep in‑browser canvas renderer (clash on/off). |
zx-ay-music |
Music & sound FX on the AY‑3‑8912 and 48K beeper: registers, trackers (Vortex/PT3, Arkos), 50 Hz player routines. |
zx-special-screen-modes |
The exotic display modes: 128K shadow screen, Timex hi‑res 512×192 & hi‑colour 8×1, software multicolour, gigascreen, ULAplus. |
zesarux-control |
Drive ZEsarUX over MCP: pick the machine, load_file, screenshot, and debug Z80 (registers, breakpoints, step, disassembly, memory, ports). |
They reference each other by name, so e.g. z80-assembly → zesarux-control for
debugging, and zx-graphics-assets feeds sprite data to z88dk.
ZX development is full of details that trip up an LLM: BASIC's single‑key
keyword editor (you press P, not P‑R‑I‑N‑T), the bottom‑up PLOT Y
axis, the non‑linear screen layout, per‑8×8‑cell colour clash, the
inverted AY mixer, the Timex port‑255 video modes, z88dk's flag soup. These skills
package that knowledge — plus a reliable build → load → run → verify loop against
ZEsarUX — so what Claude produces actually assembles, loads and runs.
/plugin marketplace add dtz-labs/zx-skills
/plugin install zx-skills@dtz-labs
This installs the zx-skills plugin (marketplace dtz-labs), which bundles all
seven skills — they then trigger automatically (in English or Polish).
git clone https://github.com/dtz-labs/zx-skills.git
cp -r zx-skills/skills/* ~/.claude/skills/The skills are useful as references on their own; to actually build and run things you'll want (each is optional, per task):
- ZEsarUX + a ZEsarUX MCP server —
to load, run, screenshot and debug anything (used by
zesarux-control). zmakebas/bas2tap— turn a BASIC listing into a.tap.- z88dk — the C/asm toolchain (
zcc,z88dk-appmake). - sjasmplus / pasmo — Z80 assemblers.
- Python 3 + Pillow — for the graphics converter scripts.
- Vortex Tracker II / Arkos Tracker 2 — to compose AY music (optional).
zx-skills/
├── .claude-plugin/ plugin + marketplace manifests
├── skills/
│ ├── zx-spectrum-basic/ SKILL.md + references (editor, language, graphics,
│ │ sound, machines, key→token map, examples, loading)
│ ├── z88dk/ SKILL.md + references (toolchain, zx-library,
│ │ c-on-z80, examples)
│ ├── z80-assembly/ SKILL.md + references (instruction-set, hardware,
│ │ assemblers, examples)
│ ├── zx-graphics-assets/ SKILL.md + references + scripts/ (png2scr.py,
│ │ sprite_extract.py) + assets/ (zxscreen.js, viewer.html)
│ ├── zx-ay-music/ SKILL.md + references (ay-chip, trackers, playback,
│ │ examples)
│ ├── zx-special-screen-modes/ SKILL.md + references (timex-modes, 128k-shadow,
│ │ multicolour-and-tricks)
│ └── zesarux-control/ SKILL.md + references (tools, debugging, loading)
├── LICENSE
└── README.md
More ZX‑family skills are welcome — add a folder under skills/ with its own
SKILL.md (the plugin auto‑discovers it). Corrections to the hardware/toolchain
references are appreciated; cite a source where it helps. Skills should reference
each other by name and keep a single owner for each piece of shared knowledge.
MIT © 2026 Michał Pasternak