A CHIP-8 emulator written in C# (.NET Core)
"CHIP-8 is an interpreted programming language, developed by Joseph Weisbecker. It was initially used on the COSMAC VIP and Telmac 1800 8-bit microcomputers in the mid-1970s. CHIP-8 programs are run on a CHIP-8 virtual machine. It was made to allow video games to be more easily programmed for these computers." — Wikipedia
I wrote this emulator to get a better understanding for how emulators work. The emulator uses OpenTK for rendering and keyboard input. Keyboard keys 0–9, A–F maps to the corresponding chip8 keys.
Compile:
Built with VS2019 and the OpenTK NuGet package.
Run:
Run chip8.exe
and drag and drop the ROM to the main window.
Keyboard shortcuts:
Esc = Exit
Backspace = Reset
P = Pause / Play execution
S = Single step
R = Dump registers to console
G = Dump screen contents to console
M = Print memory contents to console
I used these resources for help and inspiration: