DIY Z80 Computing

Feel like posting Off Topic? Do it here.

Moderator: MaxCoderz Staff

User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

DIY Z80 Computing

Post by benryves »

I've posted about this on IRC and a little on here before switching host, but I thought I'd post a proper thread here as it seems to have got some GameDev members interested in Electronics. :)

I'm currently working on a Z80 computer built from electronic components soldered to stripboard, so not very high tech stuff. It's running the Z80 BBC BASIC, and has simple hardware specs:
  • 10MHz Z80 CPU running at 2MHz.
  • 128KB Flash ROM to store the OS.
  • 32KB SRAM.
  • 128x64 graphical monochrome LCD.
  • Two PS/2 ports (keyboard and mouse).
  • I2C bus to add further components.
  • DS1307 real-time clock (I2C) for time-keeping functions.
Image
I haven't worked out what I'm going to do for storage yet (I have some 32KB I2C EEPROMs that may do the trick for removable storage, and they can be programmed externally for transferring files between a modern PC and this computer). The system only runs at 2MHz as the LCD requires at least 900nS when reading or writing data, and running the Z80 slowly seemed easier than designing a circuit that would force the Z80 to wait for a few extra clock cycles. I had planned on being able to switch between a 2MHz and a 10MHz clock by a multiplexer, but the changover from one signal to another is a bit noisy and generates several > 10MHz clock cycles which cause the system to crash.

More information and links to journal posts here.

I'm hoping that maybe some other people may have an interest in building computers; it's really not tricky to do and is great fun! My reference is my A Level textbook, Electronics Explained by M. W. Brimicombe. (You can preview the book on Google Books).
User avatar
tr1p1ea
Maxcoderz Staff
Posts: 4141
Joined: Thu 16 Dec, 2004 10:06 pm
Location: I cant seem to get out of this cryogenic chamber!
Contact:

Re: DIY Z80 Computing

Post by tr1p1ea »

Amazing work ben, you've built your own computer! Is there any end to your genius?
"My world is Black & White. But if I blink fast enough, I see it in Grayscale."
Image
Image
User avatar
driesguldolf
Extreme Poster
Posts: 395
Joined: Thu 17 May, 2007 4:49 pm
Location: $4080
Contact:

Re: DIY Z80 Computing

Post by driesguldolf »

Whoa, that's pretty slick ;)
Great work!
User avatar
Art_of_camelot
Regular Member
Posts: 124
Joined: Sun 09 Sep, 2007 8:50 pm
Location: The dark side of the moon
Contact:

Re: DIY Z80 Computing

Post by Art_of_camelot »

Omg! That looks ghetto as hell, but I'll be damned if it doesnt get my nerd sense tingling. Great stuff Ben!
*Edit* I'd love to take a shot a building something like this.
Projects:
Projects:TBA-Soonish. :)
Updated 5/3/12
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Re: DIY Z80 Computing

Post by benryves »

Cheers for the comments, chaps!
Art_of_camelot wrote:*Edit* I'd love to take a shot a building something like this.
This is the sort of thing I was hoping to hear. :D Most of the work is in reading the datasheets for each component so you can work out how to connect them all together into a working system. If you take your Z80 and connect the eight bits of the address bus to 0V via some 10K resistors it will execute NOPs ($00 = NOP) and you can use a logic probe to see the various control pins (in this case, RD and MREQ) toggling high and low and see the address bus lines counting up. :) From there you can add bits to the computer until you've got something with useful ROM, RAM, input and output devices. You can keep it quite simple, for example I'm using SRAMs as they don't need to be refreshed (as long as they have power they'll remember what they're told).

I remember another ticalc.org member building their own Z80 computer some years ago, but sadly have lost the link. :(
User avatar
kalan_vod
Calc King
Posts: 2932
Joined: Sat 18 Dec, 2004 6:46 am
Contact:

Re: DIY Z80 Computing

Post by kalan_vod »

That last reply, is a foreign language...Haha, great work ben hope you make more out of it!
User avatar
Dwedit
Maxcoderz Staff
Posts: 579
Joined: Wed 15 Dec, 2004 6:06 am
Location: Chicago!
Contact:

Re: DIY Z80 Computing

Post by Dwedit »

Look around you.

Look around you.

Look around you.
You know your hexadecimal output routine is broken when it displays the character 'G'.
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Re: DIY Z80 Computing

Post by benryves »

User avatar
Art_of_camelot
Regular Member
Posts: 124
Joined: Sun 09 Sep, 2007 8:50 pm
Location: The dark side of the moon
Contact:

Re: DIY Z80 Computing

Post by Art_of_camelot »

That was hilarious. I couldn't stop laughing! :lol: :lol: :lol:
Projects:
Projects:TBA-Soonish. :)
Updated 5/3/12
User avatar
DigiTan
Calc Master
Posts: 1069
Joined: Fri 04 Mar, 2005 12:52 am
Location: NW Wisconsin
Contact:

Re: DIY Z80 Computing

Post by DigiTan »

Pretty cool stuff. Especially the screen. 8) For what it's worth, Maxim-Dallas makes a non-volatile RAM that gets 10+ years of data retention. And totally pin compatible with most SRAMs in the 32kB neighborhood. I'm really diggin the screen though!
My diet consists of nails, code-stealers, and HP fans.
Projects:

Robot War [TI-82, TI Flash App]
Sonic the Hedgehog [Multiplatform]
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Re: DIY Z80 Computing

Post by benryves »

That 32K RAM sounds interesting, I may well check it out. :)

The screen was cheap, only £16! The part number is PG12864LRS-ANN-H if you're interested.
User avatar
waeV
New Member
Posts: 74
Joined: Wed 23 Apr, 2008 12:52 am
Location: Maine

Re: DIY Z80 Computing

Post by waeV »

This looks very interesting. Do you think you could get SymbOS to run on it? I'm thinking of buying an old ti-83 and completely ripping it apart to see if i can get SymbOS on it. I'd need a new screen, and definitely more RAm, but it would be sooo cool.

Image

Image

Image

Image
My ethicator machine must have had a built-in moral compromise spectral release phantasmatron! I'm a genius!
Image
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Re: DIY Z80 Computing

Post by benryves »

I'm running BBC BASIC on it; the hardware is fairly primitive so I wasn't trying to do anything extraordinary with it. The low-resolution (128x64) screen is not very suitable for GUIs, either.
User avatar
waeV
New Member
Posts: 74
Joined: Wed 23 Apr, 2008 12:52 am
Location: Maine

Re: DIY Z80 Computing

Post by waeV »

How do you power it?
My ethicator machine must have had a built-in moral compromise spectral release phantasmatron! I'm a genius!
Image
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Re: DIY Z80 Computing

Post by benryves »

Cheap wall-wart PSU and a 5V regulator rated at 1A.
Post Reply