GameYob DS

From GameBrew

Last Updated2017/02/04
LicenseMIT License

GameYob is an open-source Gameboy and Gameboy Color emulator, developed by Drenn, for the Nintendo DS. It has plenty of features that makes it a very complete application, like save states, mappable buttons, fast forwarding, rumble pak support and much more.

GameYob does not run Gameboy Advance games and never will, see here or here for GBA emulators.


  • Gameboy, Gameboy Color, Super Gameboy emulation.
  • Supports Gameboy Color Bios (boot rom) for custom palettes.
  • Auto SRAM saving.
  • Save States.
  • Cheat Codes.
  • Remappable controls.
  • Custom borders.
  • Scale to fill the screen.
  • Gameboy Printer emulation.
  • GBS music playback.

User guide

How to save

Whenever you save in-game, the save file (or SRAM) must be copied to the SD card. There are a few ways to do this.

  • Method A - After saving in-game, press the X button (by default) to copy the SRAM to your SD. The Exit option also does this before exiting.
  • Method B - Enable autosaving. The SRAM on the SD card will be updated automatically, but this can cause lag in some games which use SRAM as extra memory.

It's highly recommended to at least try autosaving, for a more seamless experience. It's enabled by default as of v0.5.

Save types

Hard saves (like .sav files) can be used between gameyob, lameboy, and most GB/GBC emulators.

Save-states, on the other hand, are unique to each one of them, and could be used on other emulators if they shared the method of creating and loading saves. Lameboy save states are unusable on other emulators because it's source is closed and never was released to anyone.

Please note that there is a bug in the Robopon games which requires you to use save states.

Display modes

GameYob supports scaling (such as fullscreen) and filtering.

  • Go to the Display tab of options and you can select scaling options such as Aspect and Full, and enable or disable the scaling filter.
  • Because it uses both rendering engines to perform scaling, the bottom screen is always off when scaling is enabled.

To use Custom Borders:

  • You need to have scaling off, and Custom Borders on.
  • Then press Select Border in the menu to load the border.
  • Press Save Settings for GameYob to auto-load the border next time.
  • If you want to make your own border, be sure to save it as a 256x192, uncompressed, 15bpp bitmap image.


Gameshark and Game Genie codes are supported.

  • In the Settings tab you can find the option Manage Cheats.
  • Gameyob supports BGB .CHT files, so you need to have them in your SD in order to access the option.
  • They must be named identically to the rom, with the extension .cht.

You can find cheats from the following websites:

GBC Bios

If you have the corresponding gbc_bios.bin file in your ROM directory (you can find it on google), you can turn this option on to get colorized Gameboy games like you you would have if you were playing them on GBC hardware. The file's location can also be specified in gameyob.ini. A prime example is Metroid II: Return of Samus, which gets individual palettes for Samus, enemies and items instead of being monochromatic.

You can also pick different palettes by pressing the directional pad and the AB buttons while the boot up GAME BOY logo is flashing.

This is 100% optional and it has no affect on performance or emulation accuracy.


Q. How's the compatibility? What about Shantae?

The vast majority of Gameboy and Gameboy Color games run at fullspeed, including fan-favorite Shantae, and beta versions of Resident Evil. Sound is also pretty good, with support for Pikachus's cry or Warlocked voiced effects, for example.

Q. How do I set the default rom directory?

Fill in the rompath option in gameyob.ini to the directory of your choosing. For example,


Q. Can I use Cable Link features?

Gameyob can use the ds's local wireless (sometimes called nifi) for multiplayer functions.

This feature is experimental, and only seems to work reliably with Tetris and Dr. Mario. Further improvements can be made, but they may be difficult to implement. Simply enable the "Wireless Link" option on both DS's to use link cable features.

Q. What does Detect GBA mean?

Certain games can detect if they're being played on a GBA: they use lighter palettes which are easier to see on a GBA, the Zelda Oracle games have a special Advanced shop, Shantae has features like a unique NPC in Bandit Town, a new dance and more. This option toggles that.

Q. What does Sound Timing Fix mean?

This option makes sound emulation more accurate, while potentially using more power. Most notably it fixes Pikachu in Pokemon Yellow/Pinball, but it also makes many subtle improvements to other sound effects. Results are optimal when scaling is disabled, but this is not a requirement. It's recommended to leave this option on.

If you experience slowdown when this option is enabled, be sure to disable the Wait for Vblank option in the debug settings.

Q. Is it Sudokuhax compatible?

Yes, you can use the DSi's enhanced capabilities for full-speed in even the most intense games, and some crazy fast-forwarding. An installable CIA is also provided for hacked 3DS's.


gameyob2.png gameyob3.png

Known issues

Having autosaving enabled (as it is by default) can cause lag in some games. You may want to disable this feature; if you do, you will need to exit out of the game before exiting GameYob itself, or you will lose your progress.

When running as a CIA on a New 3DS, the touch input gets spammed automatically. Adjust the Key Config settings to disable touch input.

The screen sometimes goes black after opening the menu or loading from a suspend state. Toggle the menu to fix it.


Version 0.5.2

  • Updated to DevkitARM r46 for better DSi support.
  • Added an installable CIA file to run as DSiWare.
  • Certain 3DS-side launchers such as TWLoader now work again.
  • Added "touch" as a configurable button.
  • When running as a CIA on the New 3DS, the "touch" input gets spammed for no reason. It can now be disabled as a workaround.

Version 0.5.1

  • Savegame management has been modified to prevent corruption as reported by some.
  • Autosaving is laggier due to the above. Consider turning it off.
  • The configuration file has been moved from "gameyob.ini" to "gameyobds.ini" to prevent conflicts with GameYob 3DS.
  • A "single-screen mode" has been added.

Version 0.5

  • Added Gameboy Printer emulation.
  • Added GBS playback feature.
  • Added "scale" button.
  • Semi-overhauled menu: now colorized, and does not interrupt emulation.
  • Improved Super Gameboy emulation.
  • Selectable custom borders.
  • Reduced autosaving lag (results may vary between flashcards and SD cards).
  • Implemented the halt bug (fixes The Smurfs).
  • Wram register has unused bits set (fixes Metal Gear Solid).
  • More fixes to emulation accuracy, sound, etc.
  • Stability fixes (most notably for sleep mode), many other minor bugfixes.

Version 0.4.1

  • Fixed "save" button (which was bugged) and reduced autosaving lag.

Version 0.4

  • New Icon by Corbin Davenport.
  • Implemented Super Gameboy support.
  • Implemented scaling (for those who don't like borders).
  • Implemented custom borders (for those who don't like scaling).
  • Implemented autosaving (causes lag in some games; off by default).
  • Added "Detect GBA" option to access the advance shop in the Oracle games.
  • Added Fast Forward toggle button.
  • Added "Sound Fix" option for very accurate sound timing; it may use more power.
  • Added Rumble Pak Support for Ez-3in1 and Warioware Twisted carts (thanks to windwakr).
  • Added support for Gameshark and Game Genie codes (thanks to LemonBoy).
  • Support for Rockman 8, HuC1/HuC3 mappers and Robopon games (thanks to LemonBoy).
  • Second screen's backlight is disabled when not needed to save power.
  • (partial) Stereo sound emulation.
  • More improvements to emulation & sound accuracy.

Version 0.3

  • Surpasses Lameboy in speed by about 10 FPS, thanks to optimizations by Nebuleon and myself (Drenn).
  • Added fast forward mode (courtesy of Nebuleon).
  • Added support for many exotic graphical effects & fixed screen-change graphical bugs.
  • Added MBC2 support (for Kid Icarus, Final Fantasy Adventure).
  • Added save states and suspending (temporary states).
  • Added option to save settings to gameyob.ini.
  • Added HIGHLY EXPERIMENTAL NiFi link cable emulation (works with Tetris, Dr. Mario, and Pokemon if you're lucky).
  • Fixed various emulation bugs, increasing compatibility.
  • Fixed many causes of crashes (DSi mode works now).
  • Soft resetting works (L+R+Start+Select).
  • 100% remappable controls.
  • Sound bugfixes.

Version 0.2

  • Fixed some sound emulation bugs.
  • Fixed sleep-mode crashes.
  • Fixed window behaviour when modified mid-frame (fixes text in Resident Evil Gaiden).
  • Fixed interrupt behaviour (fixes boss intros in Megaman V & passes blargg's cpu test #2).
  • Fixed crashes in some games without sram (Avenging Spirit).
  • Set default # of ram banks to 4 (workaround for Japanese Crystal).
  • Added GBC Bios support.
  • Added "B/Y" control option.
  • Added a little clock.
  • Capitalized rom extensions are detected properly.

Version 0.1.2

  • Fixed Z flag for sla (hl) and rl (hl) opcodes.

Version 0.1.1

  • Removed limit on number of files per directory.

External links