• Please review our updated Terms and Rules here

Interested in a home brew Z80 computer project?

NobodyIsHere

Veteran Member
Joined
Dec 21, 2006
Messages
2,404
Hi,

Is anyone interested in a home brew Z80 computer project? I have built them in the past and are a lot of fun to do. There are some others on this forum who have built their own machines but I am curious to see if there are others who would be interested in a group project. Please reply here or PM me if interested.

My latest Z80 machine is an updated design that tries to keep it simple while retaining the "feel" of vintage machines. It is a blend of technologies to address some of the major frustrating things which I faced as a home brew builder.

The first issue is parts availability; if you can't get the parts you can't build the machine. For this project, I am selecting only rather common and readily available 74LSxxx chips and LSI components like Z80 CPU, 16550 UART, 8255 PPI. All parts are readily available from vendors such as Jameco.com, etc. Custom programmable devices (except for boot EPROM) such as GALs, PALs, FPGAs, etc are out as those devices are difficult for many hobbyists to get without the special tools required to program them.

The second issue is the technology needed to build the unit; many of the advanced PCB techniques require special tools and processes which are beyond the typical hobbyist. As a result, I selected plain "through hole" (i.e. generic DIP packaging with 0.10" pin spacing) technology which is fairly simple and only requires a 25 watt soldering iron and related tools to produce. Any of the various SMT techniques are out even though they are much more dense they are too difficult.

The third issue is the PCB itself; there are a variety of techniques to make your home brew computer on such as breadboarding, wire wrap, and point to point protoboards. I have used those techniques and they do work fine although I think they tend to be for "one off" and temporary projects. The tend to devolve into a "rats nest" over time or develop other issues with reliability. For this project, I am going to try the custom manufactured PCB approach. Although initially more expensive, it promises to make for a much more reliable product and tremendously reduce the work necessary to build the device. In addition, with recent developments in free software tools and low cost PCB manufacturing, the cost associated with this approach has come down dramatically.

Finally, there has to be software for the machine. My goal for this project is standard CP/M 2.2 booted from a ROM drive and using a RAM drive for storage. This is doable since I have a custom CP/M build with CBIOS for my previous Z80 home brew project. This machine would be similar to the existing design and require some changes to the code. Most generic CP/M applications should run unmodified. As with any CP/M platform, some hardware specific programs are required such as debugger, format utility, RTC application, etc.

Please let me know if there is any interest. Thanks and have a nice day!

Andrew Lynch
 
I would be interested a project like that.... granted it would take a LOT of learning on my part to contribute anything usefull =) which I am willing to do....
 
I would be interested a project like that.... granted it would take a LOT of learning on my part to contribute anything usefull =) which I am willing to do....

Hi,

I would not let inexperience limit your participation assuming you have some basic electronic familarity and the tools necessary. Primarily this should be building and debugging a home brew computer. I am proposing to re-use the design already in place and tested as part of my "Test Prototype" project from last year.

The only significant difference in this project versus the previous one would be the manufactured PCB rather than point to point prototype board, addition of a 1Mx8 EPROM with configuration latch, and some minor corrections to the RTC circuit. The CP/M software would have some small changes as well but the CBIOS should be similar. CCP and BDOS would be unchanged of course.

My planned approach is to finish reviewing the schematic to find any errors. The basic circuit is already entered from my original notes and it passes all the "ERC" tests. Still, there are subtlies which may have slipped through such as connector layouts, etc.

The next step finish the PCB layout. Actually part of that is done now already. The PCB has the parts layout done and the autorouter has completed laying the traces. The optimizer is still running to reduce trace length and via count down to more acceptable levels.

I'll order some PCBs when the design is ready and start the build up/debug procedure. It should be a standard assembly then. First, start with adding the passive components, sockets, and connectors to the PCB, add power/gnd, and start tracing lines to verify everything is where it should be. Then add as small a subset of chips as possible to start assembling subsystems. Typically that means starting with the clock circuits and then moving on to reset circuits, so on and so forth until the full computer checks out.

Thanks and have a nice day.

Andrew Lynch
 
I would love to build a Z60 or 6502 computer, and have been trying to do so for a while but the lack of writeups my complete beginners such as myself, my short attention span and my inexperience let me get as far as deciding and the 74XX series and designing a PSU.

I also stopped after I realised to make it do anything useful, I would need detailed knowledge of machine language to use it and to blow an EPROM to make it do anything really useful.

I still derive pleasure from reading about and seeing other people attempts, wistfully wishing I could build my own.

Keep us informed, Andrew!
 
Yes - certainly interested. In fact interested enough that I registered!

I have recently been thinking about building a z80 machine - purely to get back to the times when computing was more fun. I have to admit that my assembler and hardware knowledge is somewhat rusty having worked in Software for the past ten years - but I could probably contribute something.

I don't have a lot of experience with the z80 - I cut my teeth on the 8088 but they aren't all that different.

Would be interested to know what you have in mind lynchaj.
 
I would love to build a Z60 or 6502 computer, and have been trying to do so for a while but the lack of writeups my complete beginners such as myself, my short attention span and my inexperience let me get as far as deciding and the 74XX series and designing a PSU.

BBC,

If you spent as much time DOING the project as you have coming up with reasons why you CAN'T do it, it would be done by now.

Fine, you have a problem with attention span? Build it one chip per day, at the same time every day and make it part of your routine.

You don't have experience in this type of thing? So what? I wasn't born with a soldering iron in my hand either, but, when you're done, you'll damn well HAVE experience.

As soon as you decide that you CAN'T do something, then you can't, until then, with some determination and dedication, there is nothing one can't achieve.
 
You don't have experience in this type of thing? So what? I wasn't born with a soldering iron in my hand either, but, when you're done, you'll damn well HAVE experience.

As soon as you decide that you CAN'T do something, then you can't, until then, with some determination and dedication, there is nothing one can't achieve.

Encouraging words. You could say that, but I'm not smart enough to be thrown into the deep end of something I only know the basics about, and construct something as complicated as a computer. - Why I've put this project on long term hold - I'm still reading up on it - Picking up all the books I can find (I've amassed a small collection). Progress is excruciatingly slow but it is there, only in my head.

I just can't see me doing in within the next few years. I have to know what everything does and how it does it in detail.

Building one from a schematic designed by someone else is another story, something else I wouldn't mind doing, hence interest in Andrew's project.

If you spent as much time DOING the project as you have coming up with reasons why you CAN'T do it, it would be done by now.

I am by nature, a pessimist ;)

Although TBH, your words have hit home somewhat.
 
I'm obviously interested in any kits out there. I have the same problem BBC does and will glady buy one but will sit on it while I pretend I can't do it. I think the problem is (one I haven't tried to on a useful level) even when I build a kit I don't necessarily understand what parts are doing and why. That would be the most interesting part.. combining this with a component level description of what we need to build a computer, why, etc and how this works as we go along building it.

That would be awesome. But until then I'm still happy soldering things together and seeing them work but if I made the time to look up each component and the pinouts and programming for it I could probably figure out how to do it myself or improve on things.

- John
 
What are you estimating the complete parts list would cost by the time everything is finished?

Bill, the honest answer is I do not know. The PCB prototype will cost me $53 plus shipping for the initial board. Units ordered after that really drop the price down to around $20+ a piece after 4 units. Most of the components on the board will come out of my junk box as they are pretty common.

I do have a BOM that you could check against Jameco.com. I suspect it'd be less than $100 including the PCB depending on what you have and tools on hand. Personally, I'd buy the parts from a surplus store though. The most expensive parts will be the PCB, 27C080 EPROM, the 512Kx8 SRAM and the DIN 41612 connector. 8255's and 16550's are dirt cheap and the 74LSxxx pieces are really cheap too.

Thanks!

Andrew Lynch
 
I'm obviously interested in any kits out there. I have the same problem BBC does and will glady buy one but will sit on it while I pretend I can't do it. I think the problem is (one I haven't tried to on a useful level) even when I build a kit I don't necessarily understand what parts are doing and why. That would be the most interesting part.. combining this with a component level description of what we need to build a computer, why, etc and how this works as we go along building it.

That would be awesome. But until then I'm still happy soldering things together and seeing them work but if I made the time to look up each component and the pinouts and programming for it I could probably figure out how to do it myself or improve on things.

- John

John,

That's not what I am saying here. This is *NOT* a kit project. I know the basic design works but have not used the manufactured PCB yet.

I have used prototype boards earlier so I know the basic principles work. The new configuration would have to go through a build and debug cycle so this project is probably better for the people with at least *some* basic experience with electronics.

At best it is a pre-made PCB and some help. There are no instructions! You'd have to procure the parts, assemble and test along with me. Very likely the initial versions of the PCB will have errors which will require some cuts and jumpers to fix.

Thanks!

Andrew Lynch
 
John,

That's not what I am saying here. This is *NOT* a kit project. I know the basic design works but have not used the manufactured PCB yet.

I have used prototype boards earlier so I know the basic principles work. The new configuration would have to go through a build and debug cycle so this project is probably better for the people with at least *some* basic experience with electronics.

At best it is a pre-made PCB and some help. There are no instructions! You'd have to procure the parts, assemble and test along with me. Very likely the initial versions of the PCB will have errors which will require some cuts and jumpers to fix.

Thanks!

Andrew Lynch

Kits are no fun anyway. Too easy. Much like "paint-by-numbers" art.

First a question, then a story.

The question is, Andrew, does the PCB include silk-screening of the components?

The story is, when I took electronics, way back in the days when schematics were done with a chisel on a rock, I took it as Adult retraining after 5 years of Arts and Science in high school, therefore, no technical knowledge at ALL.

Walked into the lab and looked into the back of an open TV that they were going to teach me to fix (this was before my lab partners and I designed the digital portion of the course, on the fly, and the retraining was then split into TV and digital) and thought, "Right, they are going to teach me to understand all these wires and glass things and ceramic and metal doo-hickies"

I was ready to quit the course right then and there, but, I didn't. I worked at it. I did the theory part and the lab part and, slowly, things started making sense.

It takes some application and desire and some good hard sweat-of-the-brow. In other words, it takes what it takes to do ANYTHING.

This could be a great sense of accomplishment for the people here that may think they can't do it and if it doesn't work, then you get to figure out why or get to make those cuts and jumps Andrew was talking about.

Lots of people own cars and they only have a slight idea how they work. Build the damn thing and THEN do the theory. It'll all make sense and you'll have something that will teach you WHY it does this and that.

The most that can happen is that you'll fail, which is a hell of a lot better than not trying at all.
 
Have you seen the P112 schematic? It's a z180 (enhanced z80) based cp/m board designed in the mid-90's and the schematic is downloadable. The p112 has some surface mount components (cpu, resistors) but I've thought about re-laying the schematic out on a bigger board and using a dip version of the z180 and other thru-hole components. It might be a good start for a homebrew board design.

the z180 is pretty nice (built in serial ports), see: http://www.zilog.com/products/family.asp?fam=219

P112 info: http://members.iinet.net.au/~daveb/p112/p112.html

I've never done pcb layout before, so a group project would be great in that other eyes could check over the design, and as you say the more boards you order the cheaper they are.

Jeff
 
Have you seen the P112 schematic? It's a z180 (enhanced z80) based cp/m board designed in the mid-90's and the schematic is downloadable. The p112 has some surface mount components (cpu, resistors) but I've thought about re-laying the schematic out on a bigger board and using a dip version of the z180 and other thru-hole components. It might be a good start for a homebrew board design.

the z180 is pretty nice (built in serial ports), see: http://www.zilog.com/products/family.asp?fam=219

P112 info: http://members.iinet.net.au/~daveb/p112/p112.html

I've never done pcb layout before, so a group project would be great in that other eyes could check over the design, and as you say the more boards you order the cheaper they are.

Jeff

Hi Jeff,

Yes, I am familiar with the P112. It is a great design and it gets nothing but respect from me.

However, as you pointed out, it uses SMT components which I consider a show stopper for me and probably the bulk of hobbyists. Yes the P112 could be redesigned but since I already have a working home brew computer sitting on my workbench I built from scratch (mucho props to the good folks at ALPACA for all their help!). I am familiar with the Test Prototype design and it seemed like a logical starting point for me. It will vary depending on your perspective.

I agree that having some other eyes review the design would indeed be very helpful. However, posting on these forums is pretty limited. I am considering starting another Google group to allow posting of files for folks to review. I do not want a formal webpage though as I'd rather spend my time working on the PCB than managing a website. Yahoo Groups and Google Groups are ideal for this sort of collaborative project.

Thanks and have a nice day!

Andrew Lynch
 
The verbal boot up the backside from Druid6900 I've finished building a 5V 1A ps for TTL stuff. I didn't build it myself but used scavenged parts. The odds for it being right for this p'ticular computer are slim, but it's proof to myself that I can do stuff if I want to.

So Andrew, count me in.
 
Good choice.

Druid has never been at a loss for words and he is right, as usual. Take it as wise council and start building your machine. Pick whatever does it for you. There are many examples on the internet. The folks at www.6502.org have some truly excellent examples and there are many 8080/Z80 projects around.

Best of luck! Thanks!

Andrew Lynch
 
request for review

request for review

Hi,

I think I am getting ready for some expert and/or peer reviews prior to manufacturing the PCBs. A good friend with lots of experience is reviewing the design so I am very happy about that.

Last night, I completed my own review of the design and clean up of the schematic. The initial routing has gone well and I am getting ready for a final routing prior to sending it to the prototype PCB manufacturers.

If there are any experienced engineers, circuit designers, or PCB layout experts or anyone who would be so kind as to review the design for errors and/or improvements I would much appreciate it. I'd really like to simplify the circuit a bit to relieve some trace congestion but so far I haven't been able to.

I am mostly interested in finding logic and design flaws and also PCB layout issues. The actual PCB trace routing is all being done by the autorouter.

Just a bit of background information: this SBC is only CPU, RAM, ROM, PPI, UART, RTC, and ECB bus connector. There is no bus backplane, disk, or video subsystem. The target OS (CP/M 2.2 with custom CBIOS) boots on my prototype using ROM (A:) and RAM (B:) drives.

Assuming the core CPU SBC works bus and disk components would be follow on items. I do have a working ECB bus backplane and a disk subsystems on my bench which could also be similarily converted to PCBs depending on how this goes.

Thank you in advance for any help / advice! Please PM me and I will email you the data file for KiCad and the PDFs of the PCB.

Andrew Lynch
 
Hi,

I am getting ready to order some PCBs and have gotten a couple of questions about unit cost. The design is in a review now and will need another autoroute session which will last a few days or so. I am thinking I'll probably order some prototype boards in about a week.

The unit cost on the boards are:

2 $32.34 (I am ordering two regardless)
3 $25.34 (one additional order)
4 $21.84 (two " ")
5 $19.74

I'll be ordering from https://www.barebonespcb.com/!BB1.asp unless someone has a better idea. There is no need for additional orders but this is your opportunity for a PCB if you want one.

Of course, I have *NOT* built the PCB version yet so I do not know if or how well it will work. It should work but there are no guarantees.

This is for the PCB ONLY and you'll have to supply your own components if you intend to build. Your cost will include shipping which will be in addition to the unit cost.

Please contact me if you would like to participate. Thanks!

Andrew Lynch

PS, if anyone cares to see a *preliminary version* you can look at the PDF at: http://groups.google.com/group/n8vem
 
Hi All,
Just a quick update on the progress so far. Things have been going much slower than I planned. There were some late design changes and I had some problems getting the optimizer to complete its run. In fact, it is STILL going strong one week later although in actual run time it is probably closer to 4 or 5 days.

The good news is PCB is continuing to shrink in terms of complexity. The autorouter optimizer has been able to reduce the number of PCB vias from the mid-200's to 91 as of this morning. Also the overall trace length has shrunk from ~67M at start to now ~55M. I am not sure what the units are in the trace length (mils? but even that seems overly large) but what is clear is that there has been a significant ~20% reduction in overall traces.

What this all means there are fewer unnecessary vias and traces. The remaining PCB traces are shorter and generally more direct. Every reduction in via count and trace length usually means a more reliable and easier to debug circuit board.

I suspect the optimizer is getting near the end of its run. It amazed me that it dropped below 100 but it still continues to find simplifications. Its all good in the end but it takes time to grind out the results. I will probably order the PCBs this week assuming the optimizer finishes in the next few days.

Thanks!

Andrew Lynch
 
... There were some late design changes and I had some problems getting the optimizer to complete its run. In fact, it is STILL going strong one week later although in actual run time it is probably closer to 4 or 5 days. ...

Wow, what sort of cpu is the optimizer running on? One week is really long time for a job to run!
 
Back
Top