/Geebly

A Gameboy/Color Emulator written in C++

Primary LanguageC++GNU Lesser General Public License v3.0LGPL-3.0

Geebly

A Game Boy/Color (DMG/GBC) emulator written in C++


Geebly running Dangan GBGeebly running the Gejmbåj demoGeebly running Super Mario Bros. DeluxeGeebly running Donkey Kong Country

Usage

Linux

geebly <settings> <file>

Windows

./geebly <settings> <file> or geebly <settings> <file>

Settings

There are different settings for every part of the emulation engine, Boot ROM/BIOS related settings are prefixed with a B, general emulation settings are prefixed with a E, etc. Common settings' shorthands usually are just one letter long though.

Here's all the settings currently present in the CLI:

Setting Shorthand Description Default
--master-volume -v Set the master volume (float or int)
  • 0.0 = Silence
  • 1.0 = Max
  • > 1.0 = Clipping
1.0
--mono -m Disable stereo sound No
--debug -d Enable the Geebly Debugger Disabled
--boot -b Specify a boot ROM "dmg_boot.bin"
--scale -s Set the display scale 1
--no-patch-bios-checks/--patch-bios-checks -Bchecks/-Bno-checks Patch Boot ROM checks No patches
--no-skip-bootrom/--skip-bootrom -Bno-skip/-Bskip Skip the scrolling boot logo No skip
--vram-access-emulation/--no-vram-access-emulation Evram-access/-Eno-vram-access Enable/Disable VRAM/OAM mode 2 & 3 inaccessibility emulation Disabled
--cgb-mode -Ecgb Switches to CGB (Game Boy Color) mode Disabled
--enable-joyp-irq-delay/--disable-joyp-irq-delay -Ejoyp-irq-delay/-Eno-joyp-irq-delay Enable/disable JOYP IRQ delay Enabled

Tests

  • cpu_instrs.gb passes all tests
  • dmg-acid2.gb passes both DMG and CGB tests

Building

So many things have changed in this last version that the build process is just not the same anymore, I'll fix that in upcoming commits