Skip to content

gaballard/rust-chip8

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wow! Another CHIP-8 Emulator!

Rust implementation of the CHIP-8 virtual machine.

NOTE: This emulator uses the original CHIP-8 instruction set. Games that use the S-CHIP 1.1 specification may not work correctly.

Usage

Games are added to the roms/ folder and referenced by filename. Filenames should include extensions.

Via cargo run:

$ cargo run ROM_FILENAME

Via binary:

$ cargo build
$ ./target/debug/rust-chip8 ROM_FILENAME

Logging

Set the RUST_LOG env var to debug to see log messages in the console.

Compatibility

The following is a list of games that have been tested with this emulator (far more to come):

Game Year Author Status Notes
8CE Attorney - Disc 1 2016 SystemLogoff Haven't tested full game
8CE Attorney - Disc 2 2016 SystemLogoff Haven't tested full game
8CE Attorney - Disc 3 2016 SystemLogoff Haven't tested full game
Br8kout 2014 SharpenedSpoon Stuck in draw loop
Breakout 1979 Carmelo Cortez
Coin Flipping 1978 Carmelo Cortez
Craps 1978 Carmelo Cortez
Flight Runner 2014 TodPunk Plays for a while then freezes
Hi-Lo 1978 Jef Winsor
Kaleidoscope 1978 Joseph Weisbecker Starts, but nothing else happens
Lunar Lander 1979 Udo Pernisz
Mastermind FourRow 1978 Robert Lindley
Nim 1978 Carmelo Cortez
Outlaw 2014 John Earnest
Pong 1990 Paul Vervalin
Pong (1-player) 1990? Paul Vervalin? Paul Vervalin's Pong w/CPU opponent
RPS 2015 SystemLogoff Can't get past title screen
Snek 2021 John Earnest
Tetris 1991 Fran Dachille

Roadmap

  • Eliminate flickering
  • Add compiler/decompiler
  • Improve debugging
  • Add SCHIP support

About

Wow! Another CHIP-8 Emulator!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages