I decided I’d learn a bit more on how emulators work, and what better way to do so than to write one.
So I wrote a CHIP8 Emulator, it took about 3 evenings of coding to get it all working 100%, I had a few mix ups along the way but in the end I managed to get all of the standard CHIP8 games working, with blinky being the last and maze being the first.
If you are planning to make your own chip8 emulator I recommend you read the documentation included with David Winters CHIP8 Emulator: http://www.pong-story.com/chip8/
The first game you are likely to get running correctly is maze, it definitely requires the least working opcodes.
I’ve used SDL to implement my emulator, it provides easy to use framebuffer access and input.
And lets round off with a pic:
Oh yeah, if anyone wants the code I could upload it, bit of a mess tho 🙂