MrZ80

MrZ80

MrZ80 Prototype on the bench

Development prototype on the bench. More blinkenlights than an IMSAI!

MrZ80 is a Z-80 microcomputer that lives entirely inside the FPGA on a MiSTer board. Descended from Grant Searle's MultiComp, it has been rebuilt around two goals: hosting RomWBW — Wayne Warthen's ROM firmware and HBIOS environment that multi-boots CP/M 2.2/3.0, ZSDOS, Z-System, CamelFORTH and friends from a single ROM image — and taking the IMSAI 8080 control panel to its "Maximum Blinkenlights" conclusion. Because the CPU lives in the fabric, every internal signal is observable: 256 addressable RGB LEDs display the live state of both buses and all 192 bits of the T80's registers, shadow banks included.

Around that sits a complete, practical machine: 128 MB of banked SDRAM behind a RomWBW Z2-compatible MMU, an 80×25 color ANSI VGA terminal, hardware serial, SD-card and hot-mountable disk-image storage, a DS12887 clock, and monotonic microsecond-resolution benchmark timers. Forth is a first-class citizen here: CamelFORTH runs standalone on bare metal or under CP/M, and the CPU itself was modified — seven custom instructions in undefined ED opcode slots — to run it about 30% faster (see below). An embedded RISC-V "System Support Processor" running Forth completes the picture with a PDP-11 ODT-style examine/deposit/step debug console that can park the Z80 mid-flight without disturbing its state.

Documentation

  • OVERVIEW — a technical tour for users: the hardware, RomWBW/CP/M, the OSD, the front panel, CamelFORTH, and the SSP monitor
  • Custom Z80 Instructions for the FORTH Inner Interpreter — the custom Z-80 instructions (F_NEXT, PUSHIX, POPIX) added for CamelFORTH: why the ED page, how they're built in the T80's microcode, and the measured results (~30% faster Forth, 36.8% on a real-world workload)

Source