Not quite sure what Chip-8 even is? Don’t worry, there’s quite a nice description at https://en.wikipedia.org/wiki/CHIP-8 which should tell you more than you ever wanted to know.
This is my attempt at writing a Chip-8 / SuperChip emulator in C. I think every programmer should at least attempt to create a Chip8 emulator as it serves as the perfect introduction to how computers work at a low level.
It should be fairly easy to convert the emulator code itself to a different platform as the only thing that’s platform specific is the Windows File browser and some optional Windows console code but that should be easy to remove or replace.
You can download both the code and executable from my GitHub page.
The Emulator is using the cross platform Tigr Graphics Library https://github.com/erkkah/tigr to handle the Window creation and process key-presses. It’s single C file which makes it very easy to use and debug and it’s perfect if you just want to get something on screen quickly!
There’s no sound emulated at the moment but given the limited sound of the Chip-8 it’s not really a problem and it’s probably something I’ll address in the future.
In addition to the normal CHIP8 movement keys of:
You can also use the following keys:
O – Open a new ROM image.
L – Reload the current ROM Image.
I’ve tried the emulator with quite a few games and most seem to work without problem.