Getting into way too much detail with the Z80 netlist simulation (2021)
floooh.github.io
floooh.github.io
https://floooh.github.io/2021/12/17/cycle-stepped-z80.html
One important note: at the start of the post I'm speculating about why I was seeing some minor differences to a 'real' Z80, it turned out that this speculation was wrong and instead the differences were caused by 'incomplete' netlist simulation code which worked fine for the 6502 but required some tweaks for the Z80, see the comments of this GH issue for details: https://github.com/floooh/v6502r/issues/2.
As far as I'm aware the netlist simulation now behaves correctly like a Zilog Z80 (but note that some reverse engineered Z80 clones like the East German U880 are known to have slightly different undocumented behaviour - which barely matters in practice though). The Z80 and 6502 emulators in https://github.com/floooh/chips are tested against their respective netlist simulations for correct behaviour and timing (all being based on the netlists from http://www.visual6502.org/ and the simulation code from https://github.com/mist64/perfect6502 - which is the simulation from visual6502.org ported from JS to C).
That was very interesting to read. This is a nearly 50-year-old CPU, and yet many people are still discovering things about how it works in detail; or perhaps more precisely, discovering edge-cases in simulation and fixing the latter to more closely correspond with the actual physical processes it models.
Many 'ye olde 8-bitter' threads contain some discussion of the CPU ISA's 'from above' and it's interesting to read a look at the Z80 one 'from below', even if intended as a personal brain dump and reference. I'd encourage anyone curious to give at least the intro a skim, despite you selling it short!
Strictly speaking that undoes the "N" in "Non-Maskable Interrupts".
PS: Firefox's and Chrome's reading mode is probably the best quick workaround. When opening a post in Firefox, I get a Reading Mode button in the navbar, and for Chrome it's in the new sidepanel.
Another thing that's hurting readability is monospace.
I stayed for the content but the colors and the thin monospaced font didn't make it a pleasure. I have returned regularly over the years because I like the content so much.
> I did try a brighter font color but found it too painful on my eyes
Do you have retinal detachment? It can cause high contrast to be unpleasant to the point of being painful.