8000 GitHub - maxfierke/gogo-gb: a gameboy emulator for funsies
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

maxfierke/gogo-gb

Repository files navigation

gogo-gb

a gameboy emulator for funsies

Current status

Games are playable at 60 FPS. CPU cycle accuracy, but memory timings not correct. No audio.

Usage

$ gogo-gb --help
gogo-gb is a scrappy Game Boy emulator written in the Go programming language.

This is a side-project for fun with indeterminate goals and not a stable emulator.

Usage:
  gogo-gb [command]

Available Commands:
  completion  Generate the autocompletion script for the specified shell
  help        Help about any command
  inspect     Inspect cartridges, emulator internals, etc.
  run         Run a cartridge

Flags:
  -h, --help         help for gogo-gb
      --log string   Path to log file. Default/empty implies stdout

Use "gogo-gb [command] --help" for more information about a command.

TODO

  • Pass all of Blargg's cpu_instrs ROMs (verified via gameboy-doctor)
  • Implement MBC1
  • Implement MBC5
  • Implement MBC3 (w/o RTC)
  • Implement serial port (w/ option to log to console)
  • Implement timer
  • Pass Blargg's instr_timing.gb ROM (manually verified)
  • Implement a basic interactive debugger
  • Implement LCD
  • Implement PPU, VRAM, OAM, etc.
  • Implement Joypad
  • Implement SRAM save & restore
  • Achieve ~60 FPS
  • Implement watch in debugger for memory & register changes
  • Implement RTC for MBC3
  • Pass dmg-acid2 test ROM
  • Implement PPU registers debugging
  • Implement GBC
  • Implement Sound/APU

Later/Maybe Never?

Just being realistic about my likelihood of getting to these:

  • Pass Blargg's mem_timing ROMs (manually verified)
  • Pass Blargg's mem_timing-2 ROMs (manually verified)
  • FIFO-based rendering PPU (currently scanline)
  • Implement emulation for every known DMG bug
  • Implement SGB mode
  • Implement MBC2
  • Implement MBC6
  • Implement MBC7
  • Implement MBC1M, MMM01, other multicarts, or Hudson carts
  • Implement (any) accessories

Inspiration Material

About

a gameboy emulator for funsies

Topics

Resources

License

Stars

Watchers

Forks

0