Skip to content

CHIP-8 interpreter written in Rust that runs on a micro:bit board

Notifications You must be signed in to change notification settings

kattouf/chip8-microbit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Embedded CHIP-8 Interpreter

This is a CHIP-8 interpreter written in Rust that runs on a micro:bit board.
Programs are not embedded in the interpreter binary and are instead loaded at runtime via a serial interface.

Project Structure

  • chip8 - interpreter itself
  • rom-transfer - CLI tool for uploading CHIP-8 ROM to micro:bit via serial interface
  • scp - Simple(Stupid) Communication Protocol, used for communication between micro:bit and PC

Sources

Demo

IMG_3497.mov

TODO

  • To avoid flickering when moving objects, draw one frame late and compare it with the previous frame to only draw the difference.
  • Save the last loaded program (Hardware support is available but not implemented in the board crate).
  • Implement execution ticks via interrupts.
  • Replace timers with RTIC for improved energy efficiency.
  • Add the ability to select programs via UI.
  • Implement error handling via UI.

About

CHIP-8 interpreter written in Rust that runs on a micro:bit board

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published