SuperChip8 Emulator

This Chip8/SuperChip8 emulator will play chunky retro games.

I’ve always had a fascination with how things worked – including computers, so I wrote an emulator for a vintage game system called Chip8.

Wikipedia describes what it is nicely: http://en.wikipedia.org/wiki/CHIP-8

I had to use the documentation for the system to implement all opcodes that the Chip8 supports.

This taught me a lot about how opcodes are handled, datatypes at the bit level and also bit-wise operators/bit shifting.

After I had implemented the base Chip8 functionality, I went on to extend the emulator to support SuperChip8.

This adds higher resolution graphics and more opcodes to the system.

It supports a lot of Chip8/SuperChip8 games but some don’t work.

There’s also a built in step-through debugger which I used to debug the emulator, but I guess it could debug games too 😉

Coded in C++ and SFML.

Also uses threads and the Win32 API.