Not retrocomputing, but interesting. Looking at the implementation of a cycle-stepped 6502 CPU emulator. Might be useful as a starting point for your own emulation projects.
I wrote a new version of my 6502/6510 emulator in the last weeks which can be stepped forward in clock cycles instead of full instructions.
Very interesting! Andre Weissflog aka floooh is very much one to watch: great to see both development out in the open, and clear explanations of what’s happening and why. To get pixel-perfect games, demos, and software protection routines, you need surprisingly intricate emulation of all the complex chips in a system.
Andre has a showcase of 8 bit emulators here, to run in your browser: https://floooh.github.io/tiny8bit/
(Robotron, Commodore, Sinclair, Acorn, Amstrad)
In the same vein, Matt Godbolt has written up some of his adventures in writing JSBeeb, and has also got a couple of talks up online: https://xania.org/Emulation
Perhaps a little OT but I notice a couple of previous technical articles by Andre about emulation tactics: Z80 Emu Evolution (2017) The Amazing Zilog Z80 (2016)
Over the last couple of days I’ve added AtoMMC file system support to Andre’s Atom emulator, so you can now access the whole of the Atom Software Archive (almost 1000 titles) on the web.
Andre has done an amazing job with these emulators. This is by far the best Javascript 6502 Emulation I have come across, both in terms of accuracy and speed.
(and yes, it passes the Dormann and the Clark BCD tests, which are included in Chapter B of the archive)