Skip to content
This repository has been archived by the owner on Nov 16, 2023. It is now read-only.
/ rip8 Public archive

A Blazingly Fast™ CHIP-8 interpreter

License

Notifications You must be signed in to change notification settings

snprajwal/rip8

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RIP-8 - The Rust CHIP-8 interpreter

Everyone's gotta write a CHIP-8 interpreter. And in my case, it's gotta be in Rust ;)

Usage

You can run a CHIP-8 ROM on the interpreter by passing it as an argument on the command line:

cargo run -- /path/to/rom
# or
cargo build --release
target/rip8 /path/to/rom

For starters, there are some fun games present in the roms folder, along with the classic IBM logo program. Personal recommendation - play Tetris :D

CHIP-8 keypad

The interpreter uses the standard CHIP-8 keypad mapping on a modern keyboard. It also provides the colemak feature flag (use cargo run --features colemak) to emulate the CHIP-8 keypad correctly on the Colemak layout.

CHIP-8 QWERTY Colemak
1 2 3 C
4 5 6 D
7 8 9 E
A 0 B F
1 2 3 4
Q W E R
A S D F
Z X C V
1 2 3 4
Q W F P
A R S T
Z X C V

Testing

The tests directory contains this CHIP-8 test suite, which can be used to verify the correctness of the implementation.

License

This project is licensed under the MIT License. Do whatever you want with it.

About

A Blazingly Fast™ CHIP-8 interpreter

Resources

License

Stars

Watchers

Forks

Languages