Multi-Year Z80 Build

Posted by: Dave Vandenbout 5 years, 5 months ago


Let's face it: a lot of us buy dev boards but never get around to doing anything with them. We have the attention span of gnats. But not Roger Milne! He's been on a three-year mission to build a Z80 computer in his spare time. And he did it! Take a look at the block diagram for his home build:

There's a load of stuff in there:

  • A Z80 CPU chip as the main processor.
  • An XC9572 CPLD for the address decoder.
  • An FPGA on a XuLA2-LX25 board for generating the audio.
  • An FPGA on another XuLA2-LX25 for generating the video.
  • Another CPLD on a daughter card that functions as a 4096-color video DAC.
  • A dsPIC30 for the BIOS MPU.
  • A PIC18F for the input coprocessor.
  • Two Bluetooth serial-port modules that provide wireless control interfaces to the BIOS and Z80 MPUs.
  • A 128-KByte SRAM chip for the main memory.
  • A handful of 74-series chips for miscellaneous logic.

Most of these components are mounted on a couple of 6" × 6" PCBs (a size he selected to allow etching in a typical Pyrex baking dish):


In addition to constructing the hardware, there's the equally daunting task of developing the firmware for the microcontrollers, HDL for the FPGAs and CPLDs, and software for the Z80. To assist with this, he built a bunch of support tools:

  • Convertors for turning images into sprites, tiles, color maps and palettes.
  • Convertors for sound samples and music files.
  • A compiler for the Copper coprocessor inside the video chip.
  • Testbeds for exercising the hardware.
  • Downloading tools for getting everything from the development system into the various processors, FPGAs and CPLDs of the target system.

Finally, knowing that modifications to the CPLD and FPGA HDL would cause changes to register addresses that would have to be propagated into the firmware of the processors, he created a tool to take a hardware definition in a text database and spit it out as headers for various compilers. That made it much easier to keep all the pieces of his design in sync. His tool even outputs a nice table of register addresses that can be used for documentation.

Now, some will look askance at building a Z80-based computer in an age where a four-core Raspberry Pi running at 900 MHz goes for $35. But there's no denying that Roger mastered a tremendous range of technical subjects during his three-year odyssey that will have a large payback as he continues building stuff. This really is a case where it's the journey and not the destination.

Current rating: 5


  • There are currently no comments

New Comment

required (not published)

Recent Posts






RSS / Atom