A software-emulated Z80 homebrew computer with a 256×192 mono framebuffer, ANSI terminal, square-wave beeper, and a built-in Nascom BASIC interpreter. By Decadev.
Everything you need to write, run, and debug Z80 assembly programs.
All documented instructions including CB/ED/DD/FD prefixes, shadow registers, interrupt modes 0/1/2, and accurate flag behaviour.
Monochrome 1bpp bitmap at $C000. MSB-first, row-major layout. Write pixels directly from Z80 code—no GPU, no restrictions.
Full escape-sequence support with 16-colour CGA palette, cursor control, and scrolling. Wired through a 6850 ACIA at ports $80/$81.
15-bit frequency control via ports $40/$41 with on/off gate. Play tones, music, or sound effects from your Z80 programs.
Intel HEX or raw binary files, loaded at any base address. Runs the classic Nascom BASIC ROM out of the box.
Step, breakpoints, disassembly, memory & stack dumps, register editing, and I/O tracing in the console build.
| Port | Dir | Build | Function |
|---|---|---|---|
$00 | R | Both | Key ready ($FF if char waiting) |
$01 | R/W | Both | Character in/out (simple port) |
$40 | W | GUI | Beeper frequency low byte |
$41 | W | GUI | Beeper frequency high byte; bit 7 = on/off gate |
$42 | W | GUI | Border colour (palette index 0..15) |
$43 | W | GUI | Video mode select (reserved) |
$80 | R/W | Both | 6850 ACIA status / control |
$81 | R/W | Both | 6850 ACIA data |
The GUI build runs at 60 FPS with a blue-bordered framebuffer panel and a full ANSI terminal below.
Up and running in under a minute.
Grab the Windows release ZIP and extract it anywhere.
Double-click z80emu_gui.exe to launch with the built-in default ROM. Or drag a .hex / .bin file onto the executable.
Run z80emu_gui ROM_32K.HEX from a terminal to boot Nascom BASIC. Press C at the prompt for a cold start, then type BASIC commands.
Use any standard Z80 assembler (pasmo, z80asm, zmac, sjasm) to write programs. Assemble to Intel HEX or raw binary and load them directly. See the Programming Manual for the full I/O port map, memory layout, and code examples.