Skip to content

Latest commit

 

History

History
38 lines (21 loc) · 1.4 KB

File metadata and controls

38 lines (21 loc) · 1.4 KB

Chip-8 Emulator

This is a basic CHIP-8 emulator written in Rust.

There are 2 crates in here:

  1. chip8-core: This builds the core VM and components to execute instructions, including instruction decoding/execution, keypad, and memory management.
  2. chip8: Uses the VM in the core crate to execute instructions. Uses a mix of the winit and pixels crates to render the display and handle keyboard input.

Tests

Corax+ Opcode Test

Flags Test

Space Invaders

Tetris

Notes

  • Most instructions are based on the guidance on this guide
  • This is my first real project in Rust so there's likely plenty of improvements to make on the codebase. Feedback welcome!
  • There are a few sample roms included in here but most things were tested again the chip8 test suite.

TODO

  • Support the Beep sound
  • Support various quirks