Hacker News new | past | comments | ask | show | jobs | submit login
An Easy to Build Real Homemade Computer: Z80-MBC2 (instructables.com)
64 points by AlexeyBrin on Jan 9, 2024 | hide | past | favorite | 33 comments



Having played with a few of these systems, I still feel something like a slightly broken Amstrad CPC6128 or ZX Spectrum offers the better learning experience. You get to understand the minds of the designers back in the 80s.


I know it’s hacked together and cheating a bit, but still love the spirit of the project. Not everyone has the electronics experience to do things “authentically”, and if projects like these serve as a gateway to “the real thing” - I say all the better.


Using an atmega kind of kills the fun, it is many times more powerful than the z80 "cpu"


The suppprt chips would add a few more chips; the most basic z80 setup is 5 or 6 chips, but they are not as easy to find.


For a simple 8-bit system such as this, even if “no GALs” is a requirement, all the chips one would need can still be bought today, brand new, and are still in production in one form or another (e.g Alliance SRAM, SST flash, 74HCT logic etc).

Worth noting that 16V8 and 22V10 GALs are still being made too, and I’d argue that programmers for them aren’t exactly “outdated”.

Not that I have anything against this design, I’m always happy to see a new SBC, though it could be argued that it still “hides” more of the bus inside the MCU than would perhaps be ideal.


how about cplds

are cplds okay

you can get currently-manufactured cplds for under two bucks

https://www.digikey.com/en/products/filter/cplds-complex-pro...

and probably nobody is going to say that an lc4032ze or an atf1502 is faster than a z80 (i mean, it's literally faster, in the same way that a 74hc04 is, but you sure aren't going to emulate a z80 on it)


The trouble with CPLDs in my experience is the software environments and (for some at least) programming hardware.

Especially for the Atmel 15xx parts, the software is windows-only, old and annoyingly crash-prone. The GALs are at least programmable from modern OSes with commodity programmers.

That said, the CPLDs themselves are good chips, and I don’t think especially inappropriate for a vintage project


well, on the plus side, the cplds are thoroughly documented, right? no struggles to reverse-engineer bitstream formats or programming waveforms. so you can write your own software to program them however you like


I think Zilog still makes eZ80 based system-on-chip products, and eZ80 is backwards compatible with Z80. For example: https://www.digikey.com/en/products/detail/zilog/EZ80F92AZ02...


For a more fun approach (if I understood your definition of fun correctly) look into RC2014 Pro, more expensive for sure, but no modern microcontroller on it.


You’d prefer the sweet, sweet pain of authenticity?


I think it’s literally the purpose of the thing like this.


This happens with guitars, cars, houses…any item which has both historical and function value.

The original owner of the item makes numerous small changes and repairs over decades which preserve and improve the functionality.

They finally sell it off to a collector who reverts all the changes, degrading the functionality in order to restore some notion of authenticity. And sometimes they go further, fixing “mistakes” made by the factory.

In this case, the functionality of a Z80 is so ridiculously outdated and obsolete that I suppose authenticity (and nostalgia) is really the only point.


Fair to say that few would build a retro system for convenience.


as this runs cp/m, i have to wonder if the atmega itself could run cp/m faster than the z80?


It's been done before - but apparently the performance is pretty poor - https://spritesmods.com/?art=avrcpm


plausibly you could write a faster z80 emulator


At this point I think it’d be more fun to port CP/M to AVR.


i thought about that but you also have to port the apps, many of which use self-modifying code, which flash program memory is not enthusiastic about


Someone on the blog post linked suggested implementing the BIOS calls in AVR code with some sort of mode switch, I guess you could go further. Port CP/M keeping syscall compatibility but use a CPU emulator for application code.


sounds sensible


the guy you're replying to got linux running on an atmega (but a bigger one)


I wonder if any modern variants of these classic CPUs work on 3.3 TTL I/O voltage.

I'd love to interface z80, 6502, 68k and such, without level shifting, to FPGAs supported by the open stack.


According to their datasheets, the W65C02S and W65C816S, both still in production, can run up to 8MHz at 3.3V. They can also go down to 2MHz on 1.8V, or up to 14MHz on 5V.

https://www.westerndesigncenter.com/wdc/documentation/w65c02...

https://www.westerndesigncenter.com/wdc/documentation/w65c81...


Cool.

I also found digikey stocks some 68k variants that are 3v3. Sadly no 030 or 010 which are the ones I prefer, but 000 and the still expensive 060 :X.


why not just load a 6502 soft core into the fpga

a 6502 is about 1200 gates i think, which is very roughly 400 4-luts

https://github.com/emeb/ulx3s_6502 simulates a 6502 on a lattice ecp5, using yosys, nextpnr, and the well-known (apparently! i'd never heard of it) https://github.com/Arlet/verilog-6502 documented at https://web.archive.org/web/20230604005701/https://c-scape.n...

no word on how much of the fpga it uses

reproducing the undocumented instructions will be more work but still will probably fit


>why not just load a 6502 soft core into the fpga

Because a minimal such system would be a decent starting point for designing modern peripherals (on the same FPGAs, reusing HDL) for the actual classic computers.

Doing everything inside the FPGA doesn't help in this case.


oh, that makes sense


It’s a great project, but it uses a computer several orders of magnitude more powerful than a Z-80 to make the Z-80 run!


You could also run CP/M in an emulator using less resources than the Arduino IDE. I think it's entirely fine to use modern and powerful parts, as long as you learn new things, or inspire others to tinker.


Hot glue and Ali express orders, software by whoever. Yeah, you ‘made’ this.


Please post an article/tutorial next time you assemble a retro computer.


Womp womp, OP made it. Stop gatekeeping




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: