Simple CHIP-8 emulator written in C++ using SDL2 for monochrome graphics. This emulator is not perfect in terms of code or working, but it can run simple games and programs.
- Full CHIP-8 CPU instructions
- 64x32 pixel display
- Keypad input mapped to PC
- Load ROMs
- Debug output for opcode execution
Requirements: CMake (>=3.31), SDL2, development libs
git clone https://github.com/Doonort3/CHIP-8-emulator/
cd CHIP-8-emulator
mkdir build && cd build
cmake ..
makeFor Windows, replace usleep (posix) with sleep (chrono) in main.cpp (114) or just use wsl
./CHIP_8_emulator ../programs/<ROM>| CHIP-8 Key | PC Key |
|---|---|
| 0 | X |
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
| 4 | Q |
| 5 | W |
| 6 | E |
| 7 | A |
| 8 | S |
| 9 | D |
| A | Z |
| B | C |
| C | 4 |
| D | R |
| E | F |
| F | V |
with games from 1970s or explore the code, which I have endeavored to write as simply as possible <3
https://github.com/JamesGriffin/CHIP-8-Emulator (ROMs)
https://github.com/wernsey/chip8 (Assembler)
https://en.wikipedia.org/wiki/CHIP-8 (Opcodes, logic, specs)