Not sure if this overlaps with another project by someone here (e.g. the timing seems to match @cngsoft (https://www.cpcwiki.eu/forum/index.php?action=profile;u=191)'s latest post), but I spotted this on https://news.ycombinator.com/item?id=29602223 (https://news.ycombinator.com/item?id=29602223)
https://floooh.github.io/2021/12/17/cycle-stepped-z80.html (https://floooh.github.io/2021/12/17/cycle-stepped-z80.html)
Haven't looked into it much, but the post looks interesting if you want to learn more about how emulators are implemented.
Speed of the Z80 is different in different computers - even a the same crystal frequency.
I'm actively using flooh's existing z80 emulator for a project I still haven't announced (here) yet, so this is extremely interesting news.
Edit: the previous implementation is better for my specific use case, but this is still quite nice. Note that both are fully cycle accurate, it just changes how and when the cpu emulation is invoked.
Hi
To test if the Z80A emulation is correct for the CPC, it is possible to use test 1 of the SHAKER 1.9 benchmark program, available here:
http://logonsystem.fr/html/engdownloadlogon.htm
The document is accompanied by the results of SHAKER 1.9 on each type of CRTC (for test 1, all CPCs do the same)
And...Merry Christmas!!