Skip to content

micaww/ch8-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ch8-rs

A basic CHIP-8 interpreter written in Rust.

Features:

  • All standard CHIP-8 instructions implemented
  • Sound support (via rodio)
  • Hardware accelerated rendering / scaling (via pixels)

Running It

You can run the emulator by either building the source yourself, or choosing a pre-built binary for your platform in Releases.

Building from Source

To build from source, simply run:

cargo build --release

Using the Binary

To use the binary, simply type in the file path to the ROM you want to play as the first argument to the executable.

You can find CHIP-8 ROMs all over the internet. Here is a good source: https://github.com/badlogic/chip8/tree/master/roms

ch8-rs.exe pong.rom

Keyboard Input

CHIP-8 uses a 16-key input with 0-9 buttons as well as A-F.

These keys are mapped to PC keyboards as follows:

|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|

Different ROMs use different keys for different things. You might have to experiment with the keys to figure out how to use each ROM.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages