This is exactly the type of content I come to HN for. Succinctly writen passion project posts like this one that actually inspire me to finish and document my own.
I started a (couple of) very similar project(s) for the VCS/2600 that I'm now motivated to take a second look at. One that used a modern 6502 equivalent, and another that was largely software based, but read and used the physical cartridges and controllers but passed the heavy lifting to software emulation.
That said, I do hope the author posts a follow-up on how the EGA graphics were implemented.
I did end up publishing the libraries I wrote for VCS cart dumping [1] which handles the vast majority of custom bank switching schemes, with instructions on how to wire it to a rpi or Arduino to make a ROM dumper if anyone is curious.
Looks like past-me also posted an earlier/incomplete version of the paddle and joystick handler code as well [2]. I should find the finished one on my old laptop and push.
1. https://github.com/drzaiusx11/WiringVCS
2. https://github.com/drzaiusx11/AtariGamepad