Skip to content

1b7/CHIP-8-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

(Another!) CHIP-8 Interpreter, in Rust

Summary

(Image of ’Chip8 emulator Logo [Garstyciuks]‘ ROM running on this interpreter).

This repository contains my attempt at a CHIP-8 emulator written in Rust. I decided to do this as a quick, fun project for my own interest and education.

The sdl2 crate is used to handle graphics, keyboard events, and audio; the core interpreter has been written from scratch.

Installation

  • sdl2 must be installed manually, the instructions for which can be found at the linked page. This project does not use the bundled feature, and so SDL2.dll should be added to this repository for it to work correctly.
  • Once this has been set up, the interpreter can be ran with cargo run --release <path/to/rom>.

ROMs are not provided with this repository and must be downloaded separately, but many can easily be found online.

The speed of the interpreter can be adjusted by changing the CPU_TICK_RATE found in main.rs.

Credits

  • Cowgod's Chip-8 Technical Reference provides a very helpful overview of the CHIP-8 system and instruction set.
  • Timendus' CHIP-8 test suite has proven very useful for testing the various parts of the interpreter's functionality.
  • The aforementioned sdl2 crate and its associated documentation made it very easy to focus on implementing the interpreter itself.

About

A rusty CHIP-8 interpreter!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages