A CHIP-8 emulator written in C++20. CHIP-8 is an interpreted programming language developed in the 1970s for video games.
- Complete CHIP-8 CPU implementation with all standard opcodes
- 4KB memory layout with proper memory mapping
- 64x32 pixel monochrome graphics with XOR drawing
- Built-in hexadecimal font set (0-F)
- 16-key input system
- Delay and sound timers (60Hz)
- Random number generation for RND instruction
mkdir build
cd build
cmake ..
cmake --build .
chip8.h/cpp
- Main emulator class with CPU, memory, and I/Omain.cpp
- Entry point (implementation pending)games/
- Test ROM filesCLAUDE.md
- Development documentation
The emulator implements the standard CHIP-8 specification:
- 4KB RAM (0x000-0xFFF)
- 16 general-purpose registers (V0-VF)
- 16-level stack for subroutines
- Program counter and index register
- 64x32 monochrome display buffer
- Hexadecimal keypad input
Core emulator components are implemented. Audio backend integration is pending but i dont think I'll ever implement it!