Yet another CHIP-8 Interpreter
git submodule update --init --recursive # Update all Submodules
mkdir build && cd build # Create Build Directory
cmake .. # Generate Build
make # Build the Project
# Running in Debug Mode | yac8_interpreter [rom] --debug
yac8_interpreter ./path/to/rom --debug
# Running Regularly | yac8_interpreter [rom]
yac8_interpreter ./path/to/rom
# Disassembling a ROM | yac8_interpreter [rom] [outFile] -d
yac8_interpreter ./path/to/rom ./path/to/asm/output/file -d
The CHIP8 uses a Hex Keyboard (0x0 - 0xF), which is mapped as shown below
SPACE -> 0x0
Z -> 0x1
UP -> 0x2
X -> 0x3
LEFT -> 0x4
C -> 0x5
RIGHT -> 0x6
V -> 0x7
DOWN -> 0x8
LSHIFT -> 0x9
A -> 0xA
S -> 0xB
D -> 0xC
F -> 0xD
Q -> 0xE
W -> 0xF
Space Invaders ROM in Debug Mode
Licensed under MIT.