Skip to content

hvsg/chip8

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chip-8 Interpreter

Screenshot of the interpreter running the Cavern ROM.

Written in Rust, no emulator specific tutorials were used. Supports regular 64x32 Chip-8 programs and some HiRes 64x64 Chip-8 programs. The 1-bit color palette is from here.

Usage

Requires Rust to be installed. Many ROMs available on GitHub.

  1. Clone or download and extract repository.
  2. cd path_to_repo
  3. cargo run path_to_rom_file

Controls

Valid keys are 0-9 (row or numpad) and A-F. Press ESC or close window to exit. To reset, press R.

Known Issues

  • Some test ROMs expect different behaviour from the technical reference

Library

The package can be built as a library. To view documentation run cargo doc --open.

Tests

Tests are implemented for instructions with most significant 4-bits in range 0-C (up to Cxnn). Run tests with cargo test.

ROMs

References

  • Cowgod's Chip-8 Technical Reference
  • Chip-8 Opcode table on Wikipedia
  • User discussion for behaviour of some instructions like Fx0A

About

Chip-8 Interpreter

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages