Took the 6502 implementation from my NES emulator, added some basic frame timing, and I got the start of an Atari 2600 emulator up and running in about an hour.
"How SNES emulators got a few pixels from complete perfection"
A great article from byuu about the last few inches of SNES emulation
Added mapper 66 to my emulator, so now I get this awesome multi-cart working.
Need to figure out the light gun integration so I can play Duck Hunt.
Ok. Mega Drive emulator progress begins... with a ROM parser.
After that: basic memory map.
Documentation is a lot less available compared to the NES (and Game Boy).
After fixing a couple of super weird hblank timing issues for MMC3 carts, Kirby seems to work without any fuzziness in the HUD
CHIP-8 emulator on its way. Fun little project. First test rom passed. The games I've tested all have problems though.
Happy with the progress for a couple of hours of hacking away.
I rewrote the three blog posts I had about my NES emulator into a single post with more depth.
It goes into some technical details of each of the CPU, graphics, and audio units. And a little reflection on using Rust.
And it has lots of gifs :)
Ok, next emulator project is decided: Sega Mega Drive (Genesis).
I'm probably going to start with the Master System, since it uses a Z80 CPU, which the Mega Drive also uses (although the 68000 is the main CPU), so it'll be a nice milestone on the way to the Mega Drive.
The VDP (graphics) for the Master System is pretty basic too.
Sweet! My APU sounds like shit, but it's generating something that sounds sort of correct at a slight delay from the actual gameplay. I've never been so excited about such terrible sound.
Started working on the APU for my NES emulator. Audio programming feels about as foreign to me as graphics programming did when I started the PPU...
This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!