Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CHIP-8 Interpreter in Rust

This is a very simple CHIP-8 interpreter implementation in Rust using SDL2 for graphics and input handling. It supports the full CHIP-8 instruction set (as defined at http://devernay.free.fr/hacks/chip8/C8TECH10.HTM).

Usage

You need to have Rust and SDL2 installed on your system.

cargo run --release -- <rom_file_path>

Keyboard Layout

The CHIP-8 uses a 16-key hexadecimal keypad. This emulator maps it to the following keyboard layout:

Original CHIP-8     Keyboard
+-+-+-+-+           +-+-+-+-+
|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|
+-+-+-+-+           +-+-+-+-+

TODOs

  • sound support
  • more accurate timing
  • support for SuperChip and XO-Chip

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages