chip-8 is a CHIP-8 emulator/interpreter written using the Rust programming language.
- Rust
- Cargo - Rust's package manager, necessary for building and running the program
- SDL2 - library/crate used for organizing the UI
- Any CHIP-8 ROM that you can find on the Internet (example)
- The one and only chip-8 interpreter (downloaded by
git clone
'ing this repo)
All installation guides are provided in respective links.
To run a ROM, pass the location of the ROM file as a command line argument on cargo run
.
cargo run [path-to-ROM]
Alternatively, you can build the release version with cargo build --release
and then launch the executable from target directory; method of passing the ROM is still the same.
cargo build --release
cd /target/release
./chip-8 [path-to-ROM]
- Wikipedia article - https://en.wikipedia.org/wiki/CHIP-8
- mattmik : Mastering CHIP-8
- Cowgod's Chip-8 Technical Reference
- Laurence Muller's guide on how to write a CHIP-8 interpreter
- The Rust Programming Language 'book' - https://doc.rust-lang.org/book/index.html
- Cargo docs - https://doc.rust-lang.org/cargo/
- SDL2 docs - https://rust-sdl2.github.io/rust-sdl2/sdl2/