Thanks to visit codestin.com
Credit goes to github.com

Skip to content

cterence/chip8-go

Repository files navigation

chip8-go

A Golang CHIP-8 interpreter. Compatible with CHIP-8, SUPER-CHIP and XO-CHIP instruction sets.

Uses go-sdl3 for the UI and audio.

Usage

NAME:
   chip8-go - chip8 interpreter

USAGE:
   chip8-go [arguments...]

OPTIONS:
   --debug, -d                             print debug logs
   --disable-audio                         disable audio beeps
   --speed float, -s float                 interpreter speed (default: 1)
   --scale int                             pixel and window scale factor (default: 4)
   --test-flag uint, -t uint               populate 0x1FF address before run (used by timendus tests) (default: 0)
   --compatibility-mode string, -m string  force compatibility mode (chip8, super, xo)
   --help, -h                              show help
   --pause-after int, -p int               pause execution after t ticks (default: 0)
   --exit-after int, -e int                exit after t ticks (default: 0)
   --headless                              disable ui
   --screenshot                            save screenshot on exit

Test results

Automated screenshots from test runs done with GitHub actions.

Timendus

CHIP-8 test suite

CHIP-8 logo IBM logo Corax+ Flags
chip8-logo ibm-logo corax+ flags
Quirks (CHIP-8) Quirks (SUPER-CHIP) Quirks (XO-CHIP)
quirks-chip8 quirks-super quirks-xo
Scrolling SUPER-CHIP low resolution Scrolling SUPER-CHIP high resolution Scrolling XO-CHIP low resolution Scrolling XO-CHIP high resolution
scrolling-super-lores scrolling-super-hires scrolling-xo-lores scrolling-xo-hires

Improvement ideas

  • Embed SDL3
  • Implement SUPER-CHIP
  • Change window title when game paused
  • Create Nix package
  • Implement XO-CHIP
  • Fix various crashing games (skyward crash when falling to bottom)
  • Fix skyward bug when character goes into wall
  • Adjust speed dynamically
  • Load rom with drag-n-drop if not provided

About

A Golang CHIP-8 interpreter, supports SUPER-CHIP and XO-CHIP.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors 2

  •  
  •