I've got the chip, so how would I add: a clock, RAM, hard drive (maybe EEPROM?), a screen (LCD graphical screen?), input method (keyboard, mouse) ?
|
|
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 unstandable 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. |
|||||
|
|
It's not exactly the best thing to do: the Z80 is a very old 8-bit microprocessor, and it won't support the LCD graphical screen and the hard drive. And it will be very hard, if possible, to make it work with the keyboard or mouse. And for sure it's not everything you need to make a board: what do you need to do exactly? If you want to learn about the z80 (you're about 30 years late for it) you can try one of the old developement boards; they have buttons, LED displays, input/output interfaces, and that's it basically. But if you want to make a microcontroller-based system, try something like Arduino and start playing; it seems you don't have a clear idea about how to make a board, and a computer is out of discussion by now. |
|||||||||||
|
|
You will have a very hard time building your own "computer" based on the Z80 with all the features that you described. However, if you can live without building the hardware yourself, a Z80 computer that you program yourself is completely possible. The old TI-83, TI-84 and similar (pre-TI-89, I believe) are Z80 based calculators. They are still very common calculators, and they can be had for around $100: http://www.amazon.com/s/ref=nb_sb_noss_1?url=search-alias%3Daps&field-keywords=ti-84 The calculator features everything you want except for the mouse, and because the calculators are still common in schools, you will still find good numbers of Z80 developers. StackOverflow can help if you have questions: http://stackoverflow.com/questions/tagged/z80 I'm not sure how easy it will be to reprogram the Z80 with your own code, though. |
|||||||
|
|
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 |
|||||
|
|
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. |
|||
|
|
|
There exist on the web several sites that document how to create Z80 based systems. I'm currently builing on and at the moment I have it set up with a floppy drive a serial keyboard and a VGA monitor and an SD card. The project home : |
|||
|
|
|
The z80 is so out of date, you won't be able to build anything but a novelty retro-computer with it, but that doesn't mean it wouldn't be instructive and fun to attempt. If I just wanted to prove I could make an old z80 run, I'd probably put it with a 32Kx8 static RAM and a UART chip, and burn a modified TRS-80 Model I ROM image into whatever small EPROM/EEPROM is lying around. The entire memory map could be decoded with an MSI chip. It wouldn't take much s/w hacking to scrape out the TRS-80 keyboard matrix decode routines and replace them with a UART input routine, nor to find the character-out routine and replace it with a UART output routine. Then it could be hooked to a PC serial port, and the old BASIC could be brought up and interacted with. That ought to prove you're running a z80, w/o the hassle of trying to implement much I/O for it. |
|||
|
|
|
I've had the chance to build a couple of computers from scratch based on the Z80 microprocessor, namely a Sinclair ZX80 (an improved version) and the Jupiter Ace from the company Jupiter Cantab. Both work just fine and these machines make use of a keyboard and generate black and white pictures (at a resolution of 240 x 192 pixels) onto a TV set. More information on them: http://searle.hostei.com/grant/zx80/zx80.html A successor of the ZX80, the ZX Spectrum, does not only all of this but also has all kind of interfaces like IDE disk interface, floppy disk interface, and also for more modern storage media like USB pen drives or SD cards. My recommendation: go ahead and do it! Research, learn a lot along the way and have fun. Things are a lot easier these days than they were in the 80s, we got the internet, CPLDs, FPGAs, as much static RAM as we want, etc.! Good luck and take care. |
||||
|
|
