Skip to content

tendstofortytwo/chip8-rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

chip8-rust

An implementation of the CHIP-8 programming language in Rust.

Prerequisites

The sound library requires you to install a package on Linux to build successfully:

sudo apt-get install libsdl2-dev

Running a ROM

Given a CHIP-8 ROM, you can start the ROM in the emulator like so:

cargo run romfile.ch8

Here is a large set of ROMs I found.

Information on the emulator

The emulator runs at 480 Hz and updates the delay and sound timers (and the screen) once every 8 cycles, so at 60 Hz. The input is mapped similarly to most other CHIP-8 emulators I have come across:

Row 1 Row 2 Row 3 Row 4
1 - 1 2 - 2 3 - 3 C - 4
4 - Q 5 - W 6 - E D - R
7 - A 8 - S 9 - D F - 4
A - Z 0 - X B - C F - V

The screen runs at the default resolution of 64x32, scaled up 8x for better visibility.

References

License

Code is provided under the MIT license; see LICENSE.md.

About

CHIP-8 interpreter in Rust.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages