diicellman/chipz-8
CHIP-8 emulator written in zig + raylib
master
ELECTROCHEMISTRY [Medium]: The phosphor glow of forgotten technology burns in your mind. These primitive pixels, this rudimentary sound—they call to something primal in you. The machines may be simple, but the experience was pure.
A minimal Chip-8 emulator implemented in Zig using raylib.
zig build run -- path/to/rom.ch8
The original Chip-8 had a 16-key hexadecimal keypad. This emulator maps them to modern keyboards as follows:
Chip-8 Keypad Keyboard Mapping
+-+-+-+-+ +-+-+-+-+
|1|2|3|C| |1|2|3|4|
+-+-+-+-+ +-+-+-+-+
|4|5|6|D| |Q|W|E|R|
+-+-+-+-+ => +-+-+-+-+
|7|8|9|E| |A|S|D|F|
+-+-+-+-+ +-+-+-+-+
|A|0|B|F| |Z|X|C|V|
+-+-+-+-+ +-+-+-+-+
The test-roms
directory contains several ROMs to test your emulator:
tetris.ch8
- Classic Tetris gamespace_invaders.ch8
- Space Invaders cloneIBM_logo.ch8
- Displays the IBM logoBMP_viewer.ch8
- Simple image viewerkeypad_test.ch8
- Tests keyboard inputtest_opcode.ch8
- Tests Chip-8 opcodesgit clone https://github.com/yourusername/CHIPZ-8.git
cd CHIPZ-8
zig build