Skip to content

lorenzosim/goodboy

Repository files navigation

Good Boy

Good Boy is a Game Boy (DMG) emulator written in Go. Mostly a work in progress, but good enough to play some popular games (Tetris, Super Mario Land, Donkey Kong, ...).

goodboy screenshot

Usage

From source:

go run . [rom file]

Using a pre-built binary:

goodboy [rom file]

Play with , , , , A, S, Enter, R Shift.

The emulator has a built-in textual debugger and tracer (use -debug and -trace).

Features & TODOs

  • CPU, timer, interrupt, graphics, joypad, sound
  • Cartridge types: ROM-only, MBC1
  • Built-in debugger
  • Pass Blargg's cpu_instrs, instr_timing, mem_timing, mem_timing-2
  • Pass dmg-acid2 test
  • Serial
  • PPU timing (currently rendering any line takes 172 dots)
  • Support more cartridge types (MBC2, MBC3, MBC5, ...)
  • Pass more Blargg tests, Mooneye, etc
  • Game save/restore

About

Yet another Game Boy emulator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages