Skip to content

Iamhere345/gb-emu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

95 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gb-emu

Yet another Gameboy (DMG) emulator, written in rust. Has a UI, debugger, and is accurate enough to run most games.


dmg-acid2 Legend of Zelda - Link's Awakening Pokemon Red Super Mario Land Metroid II: Return of Samus Kid Icarus: Of Myths and Monsters Blargg's Test Roms - cpu_instrs.gb
image image image image image image image

Features

  • DMG support
  • MBC1
  • MBC2
  • MBC3
  • MBC5
  • Sound
  • Controller support via gilrs
  • Scanline-based renderer (no pixel FIFO)
  • Egui ui frontend
  • built-in debugger
  • Game saves on battery-backed cartridges
  • CGB (Gameboy Colour) support
  • MBC3 RTC
  • MBC5 controller rumble
  • Cycle-accurate CPU
  • Pixel FIFO
  • Libretro core

Usage

Building

Compile from source using cargo build --release or download a pre-built binary from the releases tab.

Controls

Keyboard:

  • Z: A
  • X: B
  • Arrow keys: Dpad
  • Enter: Start
  • Backspace: Select

Controller:

  • South / X / A: A
  • East / O / B: B
  • Left stick / Dpad: Dpad
  • Start: Start
  • Select / Share: Select

Bootroms

To use your own bootrom, name your bootrom file bootrom.gb and place it in the roms/ folder next to the executable. In the emulator, check the Enable bootrom checkbox.

Resources

Here are some of the resources I used to make this emulator: