A Z80 Retrocomputing Development System.

Similar projects worth following

A Z80 design of my own, though with inspiration from multiple sources. Goal was to correct shortcomings of a board I designed in '98 and give me an easily-extensible platform on which to run CP/M and tinker. It's modular in the spirit of an RC2014 but not requiring any modules at all for what I considered to be "core functionality", just omit undesired initial functionality as you populate the board and add it later if needed.

So far runs as expected and I'm coding away on a BIOS as time allows. If everything works to my satisfaction in the end I may offer some kits on Tindie if there's any interest and if I have time to make a Rev 2 board. This board has 2 bugs requiring 2 jumper wires -- a mis-sized footprint for the coaxial power connector, fixed by drilling, and a system clock trace net that got split into 2 separate nets by a KiCAD typo. There's also bit of physical placement tweaking I'd like to do for practicality.

But it runs like a champ! After the docs and BIOS are complete next up is a mass-storage module (CF or SDD) and getting CP/M on the beast.


A listing of the current under-development firmware. Includes boot and memory management, core bios, general utilities, and system monitor. This software is operable, moderately tested, and under an iterative development/bug-fix process. The only known bugs at present stem from memory bounds wraparounds on the D(UMP) command.

lst - 190.98 kB - 02/15/2021 at 23:43



A simple demo of the firmware System Monitor, currently under development. This developmental stage provides me with the interactivity necessary to focus on development of the mass storage hardware necessary to support future plans of porting CP/M 2.2.

MPEG-4 Video - 27.64 MB - 02/15/2021 at 23:39




Adobe Portable Document Format - 484.63 kB - 03/17/2017 at 15:22



Documentation DRAFT (unfinished)

Adobe Portable Document Format - 156.96 kB - 03/17/2017 at 15:21


  • Source Code now on GitHub

    William D. Ezell05/04/2021 at 14:23 0 comments

    OK, got sidetracked a bit back in March picking up my Amateur Radio General Class license and being pulled into a few other side projects.  But the Firefly project will continue.  Next up will be a proper Interrupt Mode 2 handler for the serial console.  Right now everything is polled, which is not going to work very well once I add the planned mass storage and get into filesystem boggery.

    For now, first blog entry is to announce that all source code is publicly available (in a better form) on GitHub:

    Firefly Boot ROM and Monitor

    The code is 

    • Tested to the extent that I have "worked on that area" of the board
    • Meant to be efficient where possible and practical but academic perfection was not allowed to get in the way of what I needed to do -- e.g., plenty of areas exist as "rainy-day" projects to come back and optimize
    • Mostly mine in authorship but several snippets were adapted and leveraged from other sources, the works of Lance Leventhal being a regular Go-To
    • Written in a style and within the constraints of tools appropriate to the era.  At some point I plan to get CP/M running on the board and migrate maintenance and development to legacy tools.  So that's why labels are short and cryptic.
    • Yours to use as you see fit

    Enjoy.  More updates soon (I hope).


View project log

Enjoy this project?



Ed S wrote 07/30/2018 at 12:05 point

Nice one! Perhaps @Lutetium will add it to the list.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates