Z80 CPU User Manual (2016)
zany80.github.io
zany80.github.io
In general, if you are interested in old manuals, be sure to visit bitsavers.org. For instance, lots of Z80 manuals at http://www.bitsavers.org/components/zilog/z80
If someone were to ask me how to learn about hardware today, I'd start them with one of the early 8-bit machines, where the concepts are straightforward. I think that many of the features of modern machines can be understood as an evolution of overcoming the shortcomings of the early machines.
http://www.pestingers.net/pdfs/other-computers/the-z80-micro...
Also, in case no one else said it in this thread: the Z80 is one of the easiest chips to build a home brew computer with (the slightly more obscure RCA COSMAC chip might be a little easier.) It's something I'd definitely recommend everyone try (I don't think doing so has any practical application, it's just fun.)
https://www.zilog.com/appnotes_download.php?FromPage=DirectL...
It renders on my Pixel 3 in under half a sec. Seems ok to me.
Here I'm repairing a 5000V power supply that likes to kill itself. One of the recent failure modes shorted some 74 series logic and held down the data bus, causing it to spin through address space.
https://www.eevblog.com/forum/testgear/ps350-5000v-power-sup...
More impressively, other members set up emulators and reverse engineered the calibration routines:
https://www.eevblog.com/forum/repair/quick-repair-standford-...
I mean, it was an earlier time, and it is at least partly marketing. But still, I find that phrase mind-blowing to refer to a Z80.
What were the first three generations, 4004, 8008, and 8080?
Also: The internal CPU registers are repeatedly described as "208 bits". That seems to me to be the least informative way possible to describe them.
The Z80 probably makes as much sense as a fourth-generation microprocessors as it makes sense that there are, what, 11 generations of Intel Core microprocessors.
> What were the first three generations, 4004, 8008, and 8080?
Probably. The 4040 might fit in somewhere (timewise, its a close contemporary of the 8080, I think, not sure if it would fit cocnceptually in the same or early generations; its still 4-bit like the 4004, but otherwise at least somewhat more advanced.)
The fourth generation bit probably refers to some combination of being real CPU with (somewhat famously) "almost parallel" ALU, requiring minimal external support circuitry and not requiring multiple power supplies with complex sequencing requirements.
And 208bits was quite relevant, because for the time it is somewhat large amount of flipflops/SRAM. For context: 16kbit DRAM chips were first introduced in the same year as Z80.
Generations are sort of nonsense, but you could say the first generation microprocessors were PMOS processors like the 4004 and 8008 that were barely usable. Second generation would be the "classic" NMOS microprocessors like the 8080 and 6502. The Z80 is a step more advanced so maybe you could call it a generation, but I don't know how you'd get to fourth generation. Usually 16-bit microprocessors are considered the third generation, which makes more sense.
[1] Second paragraph, http://www.bitsavers.org/components/zilog/z80/03-0027-02_Z80...
I understand wanting to prohibit irresponsible use of your system, especially if it hasn't been built to critical-systems standards, but why single out life-support systems and implants? Would it be meaningfully different if it were used in avionics, or industrial safety systems?
The dmc compiler does something similar to this, but more generally, without singling out life-support and implanted systems: Do not use this software for life critical applications. [0]
[1] https://en.wikipedia.org/wiki/Launch_Vehicle_Digital_Compute...
> why single out life-support systems and implants? Would it be meaningfully different if it were used in avionics, or industrial safety systems?
Or any other "life critical applications"?
I assume that the reason is that there is some US court case where component manufacturer was found liable for bodily harm caused by some kind of (obviously misdesigned) device where root cause was traced to failure of some trivial component made by said manufacturer.
Note that JP takes one byte more but is a bit faster than JR when the condition is met.
Two very common machines from the era were the ZX spectrum and the TRS-80. But there were dozens - Kaypro, Osborne, MSX, the Nintendo Gameboy... the Z80 was used in lots of machines. Chips based on the Z80 are still used in embedded systems today.
I built a retro-computer this year using a Z180, which is a Z80 (minus undocumented behaviours) core with a handful of useful peripherals built in. They're still actively manufactured and sold.
At that time, once launched, it was difficult to increase the clock of a computer because games would become unplayable.
The Z80000 seems to have been a very obscure microprocessor. Even more so than the Z8000. What was the Z80000 system you worked with?
The original TRS-80 ("Model I"), the TRS-80 Model III, and the TRS-80 Model 4 all used a Z80. https://en.wikipedia.org/wiki/TRS-80
The TRS-80 Color Computer ("CoCo") used the 6909. https://en.wikipedia.org/wiki/TRS-80_Color_Computer
The portable TRS-80 Model 100 used an 8085. https://en.wikipedia.org/wiki/TRS-80_Model_100