This is a Chip 8 emulator I wrote to learn C#. The core is decoupled from the UI, so it's possible to implement it using any UI library. For this project I implemented using SFML.
To run, cd into src/Sharp8.UI and run dotnet run [chip 8 rom file]. You
need Dotnet 7 SDK.
- You can set (multiple) breaking points using
-dor--debug-at-address - You can pause or resume the execution with F5.
- Once paused, either by breaking points or
F5, you can useF10to run the next instruction
- You can use
-vto show debug information (PC, registers) - You can use
--ipsto set number of instructions per second - Run the program with
--helpfor more information
This emulator has sound implementation as well. The program will try to load the
file assets/beep.wav. You can generate the file by running the C# script
CreateBeepSound.csx in the src/Sharp8.UI/ folder, or you can just paste
any other wav file.