██████╗██╗ ██╗██╗██╗ ██╗███╗ ███╗ █████╗
██╔════╝██║ ██║╚═╝██║ ██║████╗ ████║██╔══██╗
██║ ███████║██╗██║ ██║██╔████╔██║╚█████╔╝
██║ ██╔══██║██║╚██╗ ██╔╝██║╚██╔╝██║██╔══██╗
╚██████╗██║ ██║██║ ╚████╔╝ ██║ ╚═╝ ██║╚█████╔╝
╚═════╝╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═╝ ╚═╝ ╚════╝
Chivm8 is a lightweight and accurate Chip8 emulator written in C99, utilizing the Raylib library for cross-platform graphics and audio support.
- CMake (version 3.15 or higher)
- Raylib (version 5.5 or higher)
-
Clone the repository:
git clone https://github.com/panzertype/chivm8.git cd chivm8 -
Configure the project with CMake:
cmake -S . -B build -
Build the executable:
cd build make
The chivm8 executable will be created in the build directory.
Run the emulator by providing the path to a Chip8 ROM file:
./chivm8 path/to/your/rom.ch8The Chip8 keypad is mapped to the following keyboard keys:
Chip8 Keypad Keyboard
1 2 3 4 1 2 3 4
Q W E R Q W E R
A S D F A S D F
Z X C V Z X C V
- ESC: Close the emulator window
To build in debug mode with symbols:
cmake -DDEBUG=ON ..
make