$0000 · cold boot
The Debug80 Library
Books on small-computer programming — a debugger, an assembler, languages and the machines they serve.
Atom
Using Atom
Choose the Node guide for desktop builds or the CP/M guide for your own computer and the Triptych emulator.
Book 1 — Assembler Reference
Source syntax, symbols, expressions, instructions and directives, with the language reference tables alongside the chapters.
Book 2 — Z80 Programming
An introduction to the processor followed by loops, routines and algorithms. Register, addressing and instruction tables accompany the book.
Source: Atom on GitHub
Basie
Programming Basie
A tutorial on writing memory-safe Z80 programs for CP/M, one complete program per chapter. It starts with three numbers and a total and works up through records, ownership of pool records and changing collections to a small command-processing utility. Every example checks its own results as it runs.
For programmers who know variables, conditions and loops and want to write safe programs for a small machine.
About Basie
Basie is BASIC with the C dropped, and a nod to Count Basie, who played few notes and made every one of them count. It is a statically typed language for Z80 machines, compiled in one pass to native code by a compiler that itself runs under CP/M. Indexes, conversions and lifetimes are all checked, without a garbage collector: records passed to routines can't escape the call, pool records have exactly one owner and are released automatically, and a stale reference traps instead of reading the wrong record.
Source: Basie on GitHub
Debug80
Debug80 Book 1 — Getting Started
A guided Debug80 book that starts from installation and walks through creating a TEC-1G project, building and stepping code, inspecting the machine, using the panel, reading artifacts, and sending HEX to hardware.
For readers who want a book-shaped route through the Debug80 workflow.
About Debug80
Debug80 is a VS Code debugger extension for Z80 assembly programs targeting the TEC-1, TEC-1G, and compatible hardware. It turns an assembly project into a source-level debugging session: build the active target, run it in an emulated machine, set breakpoints, step through instructions, inspect registers and memory, and watch platform hardware update as the program runs.
For TEC-1G work, Debug80 includes a MON-3-oriented project path and an emulator panel for the machine's displays, keypad, serial behaviour and memory state. The same build artifacts can be used with real hardware: assemble in VS Code, debug the program, then send the generated HEX file to a board when you are ready to test outside the emulator.
Source: github.com/jhlagado/debug80
Skate
Programming Skate
A course in Scheme on Z80 CP/M, starting with editing and running a small program. The introduction and first chapter are drafts. Later lessons develop lists, recursion, closures and an interactive adventure.
Skate overview · CP/M essentials
AZM
AZM Book 1 — Assembler Manual
The definitive reference for AZM, an enhanced Z80 assembler with modern programming features. Covers AZM source format, syntax, directives, layout types, ops, diagnostics, and output formats.
For programmers who want the exact assembler rules and the supported programming features in one place.
AZM Book 2 — Z80 Fundamentals
A teaching book that starts from no prior knowledge and covers the Z80 from bare machine code through assembly language, ops, layout types, and register contracts.
For readers learning Z80 assembly programming with AZM.
AZM Book 3 — Algorithms and Data Structures
A follow-on AZM book about sorting, searching, recursion, composition, pointer structures, and larger assembly program design.
For readers who know the Z80 basics and want to build more substantial AZM programs.
About AZM
AZM is an enhanced Z80 assembler with modern programming features. It keeps the generated machine code explicit, while adding assembler-time structure for larger programs: layout types, register contracts, op declarations, directive aliases, diagnostics, listings, Intel HEX output and Debug80 source maps.
You can use AZM directly from the terminal with @jhlagado/azm, or through Debug80 when you build and debug .asm files in VS Code. The assembler output is meant to serve both paths: readable listings for the programmer, binary and HEX artifacts for machines, and .d8.json metadata for source-level debugging.
Glimmer
Glimmer Book 1 — Reactive Programming for Z80 Games
The guided introduction to Glimmer. Focused programs develop the reactive model, frame phases, timing, drawing, structured state, source organisation and cards before those ideas meet in Canvas.
For readers who can read Z80 assembly and want to understand the Glimmer language.
Glimmer Book 2 — Building Complete Z80 Games
The application book. It builds Skyfall, studies the larger Tetro codebase, introduces the TMS9918 display profile and then builds Rushlight.
For readers ready to apply Glimmer to complete games.
About Glimmer
Glimmer is a reactive game language that compiles to readable Z80 assembly, built as a thin layer in front of the assembler. You declare a program's state, inputs, and rules; you write the behaviour in small blocks of real Z80 assembly; and Glimmer generates the running program around them as one readable AZM source file: the main loop, the input polling, the change tracking and the display glue.
Glimmer programs build with @jhlagado/glimmer and run under Debug80's TEC-1G emulation, with breakpoints and stepping landing in .glim source.
About TEC-1G
The TEC-1G is a modern Z80 single-board learning computer designed by Mark Jelic. It is a direct descendant of the original Talking Electronics TEC-1, a 1980s Australian kit computer created to teach how microprocessors work from the machine-code level upward.
The TEC-1G keeps that educational purpose and TEC-1 compatibility, while expanding the machine with a 4 MHz Z80A, more RAM and ROM, a 20x4 LCD, keypad and keyboard options, serial transfer, expansion connectors, and modern add-on hardware. Debug80 includes TEC-1G emulation so you can assemble and debug programs in VS Code, then send the same HEX output to real hardware.
To learn about the hardware, see Mark Jelic's TEC-1G project page on Hackaday and the TEC-1G source and assembly documentation on GitHub. Kits and add-ons are available from TEC-1 Inc. on Tindie when stock is available.