How do I build a computer with a Z80 microprocessor?

Don't listen to the others saying that the z80 is too old or too hard. The z80 was designed for this task. It's the oldest continually produced CPU around for a reason, it's easy to build computer systems with it. It's an excellent choice for your project.

There are some great books like "z80 microcomputer design projects" and "the z80 handbook" that will really help you out. Also, look at z80.info, they have a ton of information you'll want.

Your design goals are realistic. The hardest part will be the LCD screen, assuming you want to drive a VGA or NTSC display. But even that, once you get into it, is not that hard. That'll be a recurring theme you'll encounter in this project, things are much easier than you expected. Early microcomputers were remarkably simple machines, expecting you can duplicate them to some degree in 2012 is a very realistic goal. Aside from the custom sound and video chips, the rest of the machine is still available as off the shelf parts and easily understandable even as a newbie.

The simplest usable z80 system will have the z80 CPU, some flash memory or EEPROM you can get for free from old motherboards, ram and a uart for serial communication (plus a max232 for level shifting). All of this is available at any electronics distributor, are through hole components and can be built on a breadboard. The only special equipment you'll need is the flash/EEPROM programmer (which I built myself from an Arduino). Oh, and a few other things like some 74 series logic chips for address decoding, reset circuit, etc and a crystal oscillator.

Alternatively, you can replace the uart with a z80 pio chip to communicate with a modern parallel mode LCD character display. It won't really do graphics, but it's easy to use and your z80 can print things early on. A ps/2 keyboard will be rather simple to interface.

But anyway, the z80 is a good choice for your project. This might sound complicated, but in the end its just not all that bad. Build incrementally, start with the z80 test circuit, wire up a EEPROM so it can run some code and just build from there.


Luckily there's a book - "Build your own Z80 Computer" and although it's now out of print, the author Steve Ciarcia has generously allowed it to be distributed freely as a PDF: http://retro.hansotten.nl/index.php?page=z80-sbc

You might also want to take a look at the N8VEM Home Brew Computer project. It's a Z80 SBC (single board computer) that can run CP/M and can be built very cheaply - the PCBs are $20 plus shipping. There are now a variety of expansion boards available (S100 bus!) and there is knowledgeable & helpful community behind it all.

But first of all, why not grab a handful of components and build up the minimal Z80 tester to make sure your CPU works - http://www.z80.info/z80test0.htm This just hardwire's the data and address lines to continually execute the same instruction (NOP) to demonstrate fundamentally, the heart of a working Z80 based computer.


Indeed the Z-80 is an old chip, but it can be a nice challenge to build a computer with it. Unlike all modern microcontrollers it does not have many built-in features so you will have to add RAM, EPROM and address decoding hardware yourself. And this is exactly what they did many years ago when Tandy built the TRS-80. Just take a look at the original Model-1 schematics : http://electrickery.xs4all.nl/comp/trs80/doc/westHWBook.pdf