Live data from Hacker News

Zilog Z80 CPU – Modern, free and open source silicon clone

github.com

71–75 of 75 posts

Re: Zilog Z80 CPU – Modern, free and open source silicon clone

#71
I think the real joy of these old 8-bit CPU's is the simplicity and how a single person can wire up a computer by hand.

In uni we built an 8088 board in microprocessor class and it was the best class I ever took; it demystified drivers and hardware for me. I attempted a redesign using KiCAD which added an IO expansion port and better layout with an LCD port for a 2x16 character LCD. I had a prototype made by Futurlec but made a massive mistake in footprint assignment that required an interposer. Furthest I got was soldering in the 8284 and the IC sockets then got distracted by life and its sitting in a box still.

Microcontrollers are great, everything in one package but there's something enormously satisfying about being able to design and build a computer by hand. FPGAs sort of bring this back but the tooling is byzantine dog shit.

Re: Zilog Z80 CPU – Modern, free and open source silicon clone

#72
post #38

Earlier quoted context omitted.

eBay says a Chinese Z80 clone is less than $4 with free shipping. This isn’t even going to be competitive with lower end FPGAs. It’s more of a fun “why not” type of project.

How do those clones work? Are they asics, or microcontrollers/fpga's which do emulation?

They're ASICs. Likely a direct copy of Zilog's design but I'm sure re-implementations also exist.

I've never received a counterfeit Z80 that outright didn't work, but one thing to be keep in mind is that despite often being branded as CMOS 20Mhz (aka Z84C0020), half the time the chips I've received were lower grade or even worse, NMOS.

Re: Zilog Z80 CPU – Modern, free and open source silicon clone

#73
post #66
post #58

Earlier quoted context omitted.

IIRC this is what the people making swap-in accelerators for 6502 chess computers are doing

Because it’s easy to ‘cache’ the entire memory of the host system, it’s better described as a new computer that only slows down to access the memory locations that affect I/O (video, audio, keyboard, I/O ports, etc.) https://www.e-basteln.de/computing/65f02/65f02/ : “The idea is to use this as a “universal” accelerator for 6502 and 65C02-based host computers – just plug it into the CPU socket. The only thing the FPGA…

Speaking of new computers slowing down to access IO, someone managed to add an ISA slot to new PCs by using pin headers normally used by TPM devices. It's called the "dISAppointment".

Re: Zilog Z80 CPU – Modern, free and open source silicon clone

#74

I think the real joy of these old 8-bit CPU's is the simplicity and how a single person can wire up a computer by hand. In uni we built an 8088 board in microprocessor class and it was the best class I ever took; it demystified drivers and hardware for me. I attempted a redesign using KiCAD which added an IO expansion port and better layout with an LCD port for a 2x16 character LCD. I had a prototype made by Futurlec…

The open source tooling isn’t perfect but it’s growing fast! I work in this space and recommend checking out the OpenROAD[1] project, which has full synthesis and pnr for select FPGAs.

[1] https://theopenroadproject.org/

Re: Zilog Z80 CPU – Modern, free and open source silicon clone

#75

Earlier quoted context omitted.

Cycle counting was key on the Spectrum - for obvious things like the tape load routines but also for advanced techniques like the ‘Rainbow processor’ - updating the attribute bytes (those responsible for the infamous color clash) as each scan line progressed you could get different colors on each scan line.

Once made a tape-loading like pattern, and tried to get it as stable (not moving up or down on screen) as possible. Managed to produce a program where with key presses, you could change delay in the loop in +/- 1 clockcycle increments. Mind you: fastest Z80 opcodes take 4 cycles. How then? Well, there's also opcodes that take 5 cycles. Or 6. Or 7. And 8=2*4, 9=4+5, etc. Program just automated the insertion/removal of…

There was some game (and I think a program in a book) where the border color would be changed at a specific scan line to get a horizon that would span the entire screen.

I pretty much knew all the clock cycle counts for the instructions as a teenager, and you would code assembler with them always in mind.

Post reply on HN