Difference between revisions of "Game Boy/Game Boy Color emulators"

From Emulation General Wiki
Jump to navigation Jump to search
m (Accuracy tests)
(Refactor)
Line 2: Line 2:
 
The [[wikipedia:Game Boy|Game Boy]] is an 8-bit, fourth-generation handheld console released by Nintendo in 1989. The original model has a monochrome display. A revision called the Game Boy Pocket was released in 1996, offering a more compact body and a better screen. In Japan, a special edition of Game Boy Pocket, called the Game Boy Light, added a front light to the screen. This feature would not be seen in Nintendo handhelds outside Japan until the Game Boy Advance SP.
 
The [[wikipedia:Game Boy|Game Boy]] is an 8-bit, fourth-generation handheld console released by Nintendo in 1989. The original model has a monochrome display. A revision called the Game Boy Pocket was released in 1996, offering a more compact body and a better screen. In Japan, a special edition of Game Boy Pocket, called the Game Boy Light, added a front light to the screen. This feature would not be seen in Nintendo handhelds outside Japan until the Game Boy Advance SP.
  
Many Game Boy emulators offer at least some of the special features of the [[wikipedia:Super Game Boy|Super Game Boy]], a special cartridge for the SNES released in 1994. It allows playback of original Game Boy games with added borders, colorization and custom button mappings. A Japan-exclusive revision called the Super Game Boy 2 would add link cable support, new borders and more accurate CPU timing.
+
Many Game Boy emulators offer at least some of the special features of the [[wikipedia:Super Game Boy|Super Game Boy]], a special cartridge for the SNES released in 1994. It allows playback of original Game Boy games with added borders, colorization, custom button mappings and other features. A Japan-exclusive revision called the Super Game Boy 2 would fix CPU timing (allowing to re-introduce link cable support, the original SGB had the ability to link, but there was no ext. port, as games would desync anyways) and new borders.
  
The Game Boy's successor, the [[wikipedia:Game Boy Color|Game Boy Color]] (GBC), was released in 1998. It features a color screen and a CPU clocked at double the speed of the original. Otherwise, the hardware similarities allow cross-compatibility between the two platforms.
+
The Game Boy's successor, the [[wikipedia:Game Boy Color|Game Boy Color]] (GBC), was released in 1998. It features a color screen, bigger memory and a CPU clocked at double the speed of the original. Otherwise, the hardware similarities allow cross-compatibility between the two platforms and they are often treated as one. The follow up console was the [[Game_Boy_Advance_emulators|Game Boy Advance]].
  
 
==Emulators==
 
==Emulators==
Line 30: Line 30:
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✓
 
|style="text-align:center;"|✓
|style="text-align:center;"|✓
 
|-
 
|style="text-align:center;"|[https://github.com/drhelius/Gearboy Gearboy]
 
|style="text-align:center;"|Multi-platform
 
|style="text-align:center;"|[https://github.com/drhelius/Gearboy/releases 2.3.1]
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
 
|style="text-align:center;"|✓
 
|style="text-align:center;"|✓
 
|-
 
|-
Line 42: Line 35:
 
|style="text-align:center;"|Windows
 
|style="text-align:center;"|Windows
 
|style="text-align:center;"|[http://tasvideos.org/BizHawk/ReleaseHistory.html {{BizHawkVer}}]
 
|style="text-align:center;"|[http://tasvideos.org/BizHawk/ReleaseHistory.html {{BizHawkVer}}]
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|-
 
|style="text-align:center;"|[https://github.com/davideberra/emu-pizza Emu-pizza]
 
|style="text-align:center;"|Linux
 
|style="text-align:center;"|
 
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
Line 64: Line 50:
 
|style="text-align:center;"|[http://byuu.org/emulation/higan/ {{higanVer}}]
 
|style="text-align:center;"|[http://byuu.org/emulation/higan/ {{higanVer}}]
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|-
 
|style="text-align:center;"|KiGB
 
|style="text-align:center;"|Windows, Linux, OS X
 
|style="text-align:center;"|[http://kigb.emuunlim.com/kigb_win.zip 2.05]
 
|style="text-align:center;"|✓
 
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
Line 86: Line 65:
 
|style="text-align:center;"|?
 
|style="text-align:center;"|?
 
|style="text-align:center;"|✓
 
|style="text-align:center;"|✓
|style="text-align:center;"|✗
 
|-
 
|style="text-align:center;"|[https://github.com/Xyene/Nitrous-Emulator Nitrous-Emulator]
 
|style="text-align:center;"|Multi-platform
 
|style="text-align:center;"|[https://github.com/Xyene/Nitrous-Emulator/releases 1.0.0]
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|-
 
|-
Line 109: Line 81:
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|-
 
|-
|style="text-align:center;"|GiiBiiAdvance
+
|style="text-align:center;"|[http://hhug.me/ hhugboy]
|style="text-align:center;"|Windows, Linux
+
|style="text-align:center;"|Windows
|style="text-align:center;"|[https://github.com/AntonioND/giibiiadvance/releases 0.2.0]
+
|style="text-align:center;"|[https://github.com/tzlion/hhugboy/releases/tag/v1.2.1 1.2.1]
 +
|style="text-align:center;"|✗
 +
|style="text-align:center;"|✗
 +
|style="text-align:center;"|✗
 +
|-
 +
|style="text-align:center;"|[https://github.com/drhelius/Gearboy Gearboy]
 +
|style="text-align:center;"|Multi-platform
 +
|style="text-align:center;"|[https://github.com/drhelius/Gearboy/releases 2.3.1]
 +
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 +
|style="text-align:center;"|✓
 +
|-
 +
|style="text-align:center;"|KiGB
 +
|style="text-align:center;"|Windows, Linux, OS X
 +
|style="text-align:center;"|[http://kigb.emuunlim.com/kigb_win.zip 2.05]
 +
|style="text-align:center;"|✓
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
Line 123: Line 109:
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|-
 
|-
|style="text-align:center;"|[http://hhug.me/ hhugboy]
+
|style="text-align:center;"|GiiBiiAdvance
|style="text-align:center;"|Windows
+
|style="text-align:center;"|Windows, Linux
|style="text-align:center;"|[https://github.com/tzlion/hhugboy/releases/tag/v1.2.1 1.2.1]
+
|style="text-align:center;"|[https://github.com/AntonioND/giibiiadvance/releases 0.2.0]
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
Line 144: Line 130:
 
|style="text-align:center;"|?
 
|style="text-align:center;"|?
 
|style="text-align:center;"|✓
 
|style="text-align:center;"|✓
|style="text-align:center;"|✗
 
|-
 
|style="text-align:center;"|[[TGB Dual]]
 
|style="text-align:center;"|Windows, Linux**
 
|style="text-align:center;"|[https://github.com/libertyernie/tgbdual_L/releases "L" v1.2]
 
|style="text-align:center;"|✓
 
|style="text-align:center;"|✓**
 
 
|style="text-align:center;"|✗
 
|style="text-align:center;"|✗
 
|-
 
|-
Line 189: Line 168:
 
|-
 
|-
 
!colspan="7"|Consoles
 
!colspan="7"|Consoles
 +
|-
 +
|style="text-align:center;"|[[mGBA]]
 +
|style="text-align:center;"|[[Wii]], [[Nintendo 3DS]], PSVita
 +
|style="text-align:center;"|[https://endrift.com/mgba/downloads.html {{MGBAVer}}]
 +
|style="text-align:center;"|?
 +
|style="text-align:center;"|✓
 +
|style="text-align:center;"|✗
 
|-
 
|-
 
|style="text-align:center;"|[http://gbatemp.net/threads/gameyob-a-gameboy-emulator-for-ds.343407/ GameYob DS]
 
|style="text-align:center;"|[http://gbatemp.net/threads/gameyob-a-gameboy-emulator-for-ds.343407/ GameYob DS]
Line 243: Line 229:
  
 
==Comparison==
 
==Comparison==
 +
 
====Game Boy-only emulators====
 
====Game Boy-only emulators====
 
* [http://bgb.bircd.org/ BGB] is a closed source emulator. It has excellent Game Boy and Game Boy Color accuracy, as well as near flawless link support. It has a wealth of options for color palettes and even enabling Super Gameboy colors and borders, though it doesn't emulate all of its functions. It also has an advanced debugger.
 
* [http://bgb.bircd.org/ BGB] is a closed source emulator. It has excellent Game Boy and Game Boy Color accuracy, as well as near flawless link support. It has a wealth of options for color palettes and even enabling Super Gameboy colors and borders, though it doesn't emulate all of its functions. It also has an advanced debugger.
 
* [[Gambatte]] is probably the most accurate Game Boy Color emulator. It has a good range of options and features, though not quite as much as some other emulators. It's open source, but there is no activity lately.
 
* [[Gambatte]] is probably the most accurate Game Boy Color emulator. It has a good range of options and features, though not quite as much as some other emulators. It's open source, but there is no activity lately.
* [[Visual_Boy_Advance_-M|Visual Boy Advance-M (VBA-M)]] has solid GB/C emulation as well as GBA.
 
 
* [[mGBA]] recently added GB/C support. It's still in development, but it's already on the level of many other emulators.
 
* [[mGBA]] recently added GB/C support. It's still in development, but it's already on the level of many other emulators.
 
* [[GB Enhanced|GBE+]] is a recently rewritten emulator that can load custom tiles in games, including colorized tiles for Game Boy games. It also supports [[#Game Boy Features|obscure accessories]] that other emulators don't emulate.
 
* [[GB Enhanced|GBE+]] is a recently rewritten emulator that can load custom tiles in games, including colorized tiles for Game Boy games. It also supports [[#Game Boy Features|obscure accessories]] that other emulators don't emulate.
* [https://github.com/AntonioND/giibiiadvance GiiBiiAdvance] has full GB Camera emulation, including webcam support. Otherwise, it's an unfinished emulator with the basics set up, but it's promising future currently on hiatus.
+
* [[Visual_Boy_Advance_-M|Visual Boy Advance-M (VBA-M)]] has solid GB/C emulation as well as GBA. It was very popular, but now is far behind [[mGBA]].
 
* [[TGB Dual]] is an ancient emulator that supports link cable emulation. It supports [[Netplay]], though it requires a VPN. The libretro port supports local multiplayer using player 2's controls.
 
* [[TGB Dual]] is an ancient emulator that supports link cable emulation. It supports [[Netplay]], though it requires a VPN. The libretro port supports local multiplayer using player 2's controls.
 
* [http://kigb.emuunlim.com/ KiGB] is an old and obsolete emulator which boasted of accuracy but was proven to be full of game-specific hacks.<ref>https://github.com/mgba-emu/mgba/issues/238</ref><ref>http://gbdev.gg8.se/wiki/articles/Test_ROMs#Emulators_running_on_desktop_computers</ref><ref>http://gbdev.gg8.se/wiki/articles/KiGB</ref> It has a wide selection of features, but there are emulators which do much better now.
 
* [http://kigb.emuunlim.com/ KiGB] is an old and obsolete emulator which boasted of accuracy but was proven to be full of game-specific hacks.<ref>https://github.com/mgba-emu/mgba/issues/238</ref><ref>http://gbdev.gg8.se/wiki/articles/Test_ROMs#Emulators_running_on_desktop_computers</ref><ref>http://gbdev.gg8.se/wiki/articles/KiGB</ref> It has a wide selection of features, but there are emulators which do much better now.
 +
* [https://github.com/AntonioND/giibiiadvance GiiBiiAdvance] pioneered full GB Camera emulation, including webcam support. Otherwise, it's an unfinished emulator with the basics set up, but it's promising future currently on hiatus. It has very accurate timing.
  
 
====Multi-system emulators====
 
====Multi-system emulators====
* [[higan]] is the only emulator that properly emulates all of the Super Game Boy's features, such as utilizing the SPC sound chip, due to having a separate SNES core. Older version of bsnes used the Gambatte core for its Super Game Boy functionality, but later Byuu made his own Game Boy core, which has quite average accuracy. The last version of bsnes to use Gambatte as its SGB core is version 0.73.
+
* [[higan]] is the only emulator that properly emulates all of the Super Game Boy's features, such as utilizing the SPC sound chip, due to having a separate SNES core. Older version of bsnes used the Gambatte core for its Super Game Boy functionality, but later Byuu made his own Game Boy core, which has pretty good accuracy. The last version of bsnes to use Gambatte as its SGB core is version 0.73.
 
* [[BizHawk]] uses a modified Gambatte core. It provides speedrunning tools.
 
* [[BizHawk]] uses a modified Gambatte core. It provides speedrunning tools.
* [[MAME]] has solid Game Boy emulation, albeit with worse GBC compatibility. However, it features compatibility with obscure mappers, which other emulators usually ignore, like Wisdom Tree games or MMM01 multicarts.
+
* [[MAME]] has solid Game Boy emulation, albeit with worse GBC compatibility. However, it features compatibility with obscure mappers, which other emulators usually ignore, like Wisdom Tree games or MMM01 multicarts. It was made much more accurate a while ago due to contributions by Judge_.
 
* [[Mednafen]] uses cores originally forked from an old version of [[VisualBoy Advance]] for the GB and GBC, as well as for the GBA.
 
* [[Mednafen]] uses cores originally forked from an old version of [[VisualBoy Advance]] for the GB and GBC, as well as for the GBA.
  
 
==Issues==
 
==Issues==
 
[[File:Gbc over saturation2.png|thumb|right|350px|Comparison of saturation levels in VBA-M and Gambatte.]]
 
[[File:Gbc over saturation2.png|thumb|right|350px|Comparison of saturation levels in VBA-M and Gambatte.]]
 +
 
===Oversaturation===
 
===Oversaturation===
 
Emulators tend to oversaturate the colors that would have been seen on the GBC's screen. This can often be fixed with emulator-specific options or [[Shaders_and_Filters#Image_Adjustment|shaders]].
 
Emulators tend to oversaturate the colors that would have been seen on the GBC's screen. This can often be fixed with emulator-specific options or [[Shaders_and_Filters#Image_Adjustment|shaders]].
 
<br clear=all>
 
<br clear=all>
 +
 +
 
==Game Boy Features==
 
==Game Boy Features==
 +
 +
 +
 
===Hardware===
 
===Hardware===
====Tilt sensor====
 
Two Game Boy Color games featured a built-in tilt sensor: Kirby Tilt 'n' Tumble and Command Master.  These games cannot be played without support for this feature. While VBA and KiGB have a "Motion Sensor" option to map four directional keys to emulate the cartridge tilting, BGB can emulate the tilting features with the use of the mouse.
 
  
 
====IR Transmitter====
 
====IR Transmitter====
 
The Game Boy Color had an infrared transmitter and receiver. Generation II Pokémon games made use of this feature through Mystery Gift. Super Mario Bros. Deluxe could send high scores to another cartridge. GBE+ has [https://shonumi.github.io/articles/art4.html basic IR emulation] but currently it only works with Pokémon games.
 
The Game Boy Color had an infrared transmitter and receiver. Generation II Pokémon games made use of this feature through Mystery Gift. Super Mario Bros. Deluxe could send high scores to another cartridge. GBE+ has [https://shonumi.github.io/articles/art4.html basic IR emulation] but currently it only works with Pokémon games.
 
===Accessories===
 
There are [[Wikipedia:Game Boy accessories#Game Boy|a few accessories that the Game Boy and Game Boy Color]] had.
 
 
====Link Cable====
 
BGB, KiGB, some versions of VBA-M and TGB-Dual supports link cable. It is unknown if the 4-way adaptor is emulated for games that support the feature.
 
  
 
====Game Boy Camera====
 
====Game Boy Camera====
Line 311: Line 296:
 
The latest dev builds of mGBA post 0.6.0 release can emulate the accessory by either using the PC's webcam or send a BMP, GIF, JPEG, PNG, or other image format to the game, as if it was coming from the camera itself.<ref>[https://twitter.com/mGBA_emu/status/890954205472501762]</ref> To enable the PC webcam, go to <code>Game Boy</code> under <code>settings</code> and switch the <code>camera driver</code> to <code>Qt Multimedia</code>, or by editing <code>qt.ini</code> and setting <code>cameraDriver=1</code> under <code>[General]</code>.
 
The latest dev builds of mGBA post 0.6.0 release can emulate the accessory by either using the PC's webcam or send a BMP, GIF, JPEG, PNG, or other image format to the game, as if it was coming from the camera itself.<ref>[https://twitter.com/mGBA_emu/status/890954205472501762]</ref> To enable the PC webcam, go to <code>Game Boy</code> under <code>settings</code> and switch the <code>camera driver</code> to <code>Qt Multimedia</code>, or by editing <code>qt.ini</code> and setting <code>cameraDriver=1</code> under <code>[General]</code>.
  
====Game Boy Printer====
+
====Tilt sensor====
[[VisualBoy Advance|VisualBoy Advance 1.8.0-beta 3]] and GBE+ had Game Boy Printer support that turned the signals into a bitmap form of the image. Some notable games and accessories to make use of this feature are the RPG Pokémon games, Super Mario Bros. Deluxe, and Game Boy Camera. mGBA plans to support this feature but it is unknown if other emulators support or have plans to support it.
+
Two Game Boy Color games featured a built-in tilt sensor: Kirby Tilt 'n' Tumble and Command Master. These games cannot be played without support for this feature. While VBA and KiGB have a "Motion Sensor" option to map four directional keys to emulate the cartridge tilting, BGB can emulate the tilting features with the use of the mouse.
 +
 
 +
====Game Boy Pocket Sonar====
 +
Japan only cartridge released by Bandai. It is a sonar-enabled device used for fishing with a fishing game included. No emulator supports this feature.
 +
 
 +
 
  
====Mobile Game Boy Adapter====
+
===Accessories===
There is a Japan only accessory that communicates with Mobile Golf and Japanese Pokémon Crystal. It was bundled with Mobile Trainer cartridge which allowed the player to use e-mail as well as browse Nintendo's website. It is possible to partially emulate its feature for Pokémon Crystal by [http://forums.glitchcity.info/index.php?topic=7509.0 using BGB's scripting capability], and GBE+ can at least reach the title screen of Mobile Trainer, but otherwise no emulators properly supports this accessory.
+
There are [[Wikipedia:Game Boy accessories#Game Boy|a few accessories that the Game Boy and Game Boy Color]] had.
  
====Hudsonsoft KISS Link====
+
====Link Cable====
This accessory allowed users to download exclusive content by them from Hudsonsoft's website. No emulator supports this.
+
BGB, KiGB, some versions of VBA-M and TGB-Dual supports link cable.
  
====Game Boy Pocket Sonar====
+
====4-Player Adapter====
Another Japan only accessory exists released by Bandai. It is a sonar-enabled device used for fishing. No emulator supports this feature.
+
Currently only [[GBE+]] supports it.
  
====Singer Sewing Machine====
+
====Game Boy Printer====
There is link cable support for the Singer IZEK Digital Sewing Machine. The IZEK was unique in that it came bundled with a specially coloured Game Boy and a cartridge for interfacing with the machine.<ref>https://www.youtube.com/watch?v=AlhJKMXU7tg&t=5m25s</ref><ref>https://www.youtube.com/watch?v=K-Epj2_eJdA</ref> No emulator supports this, mostly due to the IZEK being a rare item, along with the complexity of implementing a [https://hackaday.com/2015/01/07/arduino-controlled-sewing-machine-increases-stitch-options/ similarly automated sewing machine].
+
[[VisualBoy Advance|VisualBoy Advance 1.8.0-beta 3]] and GBE+ had Game Boy Printer support that turned the signals into a bitmap form of the image. Some notable games and accessories to make use of this feature are the RPG Pokémon games, Super Mario Bros. Deluxe, and Game Boy Camera. mGBA plans to support this feature but it is unknown if other emulators support or have plans to support it.
  
 
====Barcode Boy====
 
====Barcode Boy====
Line 332: Line 322:
 
Another Japan only barcode-scanning device with the dedicated game. GBE+ [https://shonumi.github.io/articles/art6.html supports this accessory].
 
Another Japan only barcode-scanning device with the dedicated game. GBE+ [https://shonumi.github.io/articles/art6.html supports this accessory].
  
====FM Radio====
+
====Mobile Game Boy Adapter====
There is an FM radio cartridge by BEESHU to allow the Game Boy to become a portable radio. No emulator supports this.
+
There is a Japan only accessory that communicates with Mobile Golf and Japanese Pokémon Crystal. It was bundled with Mobile Trainer cartridge which allowed the player to use e-mail as well as browse Nintendo's website. It is possible to partially emulate its feature for Pokémon Crystal by [http://forums.glitchcity.info/index.php?topic=7509.0 using BGB's scripting capability], and GBE+ can at least reach the title screen of Mobile Trainer, but otherwise no emulators properly supports this accessory.
 +
 
 +
====Singer Sewing Machine====
 +
There is link cable support for the Singer IZEK Digital Sewing Machine. The IZEK was unique in that it came bundled with a specially coloured Game Boy and a cartridge for interfacing with the machine.<ref>https://www.youtube.com/watch?v=AlhJKMXU7tg&t=5m25s</ref><ref>https://www.youtube.com/watch?v=K-Epj2_eJdA</ref> No emulator supports this, mostly due to the IZEK being a rare item, along with the complexity of implementing a [https://hackaday.com/2015/01/07/arduino-controlled-sewing-machine-increases-stitch-options/ similarly automated sewing machine].
 +
 
 +
====Hudsonsoft KISS Link====
 +
This accessory allowed users to download exclusive content by them from Hudsonsoft's website. No emulator supports this.
  
====Workboy====
 
Using the link cable port, this accessory can add a keyboard to transform the Game Boy into a primitive PC. No games utilize this accessory, except for one cartridge that came with the keyboard. No emulator supports this.
 
  
==References==
 
 
{{reflist}}
 
{{reflist}}
  

Revision as of 00:47, 13 December 2017

The Game Boy handheld console

The Game Boy is an 8-bit, fourth-generation handheld console released by Nintendo in 1989. The original model has a monochrome display. A revision called the Game Boy Pocket was released in 1996, offering a more compact body and a better screen. In Japan, a special edition of Game Boy Pocket, called the Game Boy Light, added a front light to the screen. This feature would not be seen in Nintendo handhelds outside Japan until the Game Boy Advance SP.

Many Game Boy emulators offer at least some of the special features of the Super Game Boy, a special cartridge for the SNES released in 1994. It allows playback of original Game Boy games with added borders, colorization, custom button mappings and other features. A Japan-exclusive revision called the Super Game Boy 2 would fix CPU timing (allowing to re-introduce link cable support, the original SGB had the ability to link, but there was no ext. port, as games would desync anyways) and new borders.

The Game Boy's successor, the Game Boy Color (GBC), was released in 1998. It features a color screen, bigger memory and a CPU clocked at double the speed of the original. Otherwise, the hardware similarities allow cross-compatibility between the two platforms and they are often treated as one. The follow up console was the Game Boy Advance.

Emulators

There is tons of Game Boy emulators. See for example on GitHub.

Name Operating System(s) Latest Version Game Link Support Libretro Core Recommended
PC
BGB Windows 1.5.5
Gambatte Multi-platform r571
BizHawk Windows 2.9.1
GBE+ Windows, Linux, OS X (untested) SVN 30.5.2016
higan Windows, Linux, OS X v110
MAME Multi-platform 0.264 ?
mGBA Multi-platform 0.10.3 ?
SameBoy Multi-platform 0.8
Visual Boy Advance-M (VBA-M) Multi-platform SVN ✗*
hhugboy Windows 1.2.1
Gearboy Multi-platform 2.3.1
KiGB Windows, Linux, OS X 2.05
TGB Dual Windows, Linux** "L" v1.2 ✓**
GiiBiiAdvance Windows, Linux 0.2.0
Mobile
Gambatte Multi-platform r571
mGBA Multi-platform 0.10.3 ?
GBC.emu Android 1.5.19 ?
My OldBoy! Android 1.0.3 ?
John GBC Android 3.50 ?
GambatteDroid Android ? ?
GBA.emu Android 1.5.19 ?
Consoles
mGBA Wii, Nintendo 3DS, PSVita 0.10.3 ?
GameYob DS Nintendo DS Git ✓ (NiFi)
GameYob 3DS Nintendo 3DS v1.0.8 ?
Visual Boy Advance-M (VBA-M) Wii, Gamecube r1231 ✓ (as VBA-Next)
MasterBoy PlayStation Portable 2.10
GeMP PlayStation Portable 3.3 Final
RIN PlayStation Portable 1.32
Virtual Console Nintendo 3DS 8.10 ✓ (pokemon only)

* A VBA-M libretro core does exist, but it only emulates GBA.
** As an SDL port (libretro core is based on this version)

Comparison

Game Boy-only emulators

  • BGB is a closed source emulator. It has excellent Game Boy and Game Boy Color accuracy, as well as near flawless link support. It has a wealth of options for color palettes and even enabling Super Gameboy colors and borders, though it doesn't emulate all of its functions. It also has an advanced debugger.
  • Gambatte is probably the most accurate Game Boy Color emulator. It has a good range of options and features, though not quite as much as some other emulators. It's open source, but there is no activity lately.
  • mGBA recently added GB/C support. It's still in development, but it's already on the level of many other emulators.
  • GBE+ is a recently rewritten emulator that can load custom tiles in games, including colorized tiles for Game Boy games. It also supports obscure accessories that other emulators don't emulate.
  • Visual Boy Advance-M (VBA-M) has solid GB/C emulation as well as GBA. It was very popular, but now is far behind mGBA.
  • TGB Dual is an ancient emulator that supports link cable emulation. It supports Netplay, though it requires a VPN. The libretro port supports local multiplayer using player 2's controls.
  • KiGB is an old and obsolete emulator which boasted of accuracy but was proven to be full of game-specific hacks.[1][2][3] It has a wide selection of features, but there are emulators which do much better now.
  • GiiBiiAdvance pioneered full GB Camera emulation, including webcam support. Otherwise, it's an unfinished emulator with the basics set up, but it's promising future currently on hiatus. It has very accurate timing.

Multi-system emulators

  • higan is the only emulator that properly emulates all of the Super Game Boy's features, such as utilizing the SPC sound chip, due to having a separate SNES core. Older version of bsnes used the Gambatte core for its Super Game Boy functionality, but later Byuu made his own Game Boy core, which has pretty good accuracy. The last version of bsnes to use Gambatte as its SGB core is version 0.73.
  • BizHawk uses a modified Gambatte core. It provides speedrunning tools.
  • MAME has solid Game Boy emulation, albeit with worse GBC compatibility. However, it features compatibility with obscure mappers, which other emulators usually ignore, like Wisdom Tree games or MMM01 multicarts. It was made much more accurate a while ago due to contributions by Judge_.
  • Mednafen uses cores originally forked from an old version of VisualBoy Advance for the GB and GBC, as well as for the GBA.

Issues

Comparison of saturation levels in VBA-M and Gambatte.

Oversaturation

Emulators tend to oversaturate the colors that would have been seen on the GBC's screen. This can often be fixed with emulator-specific options or shaders.


Game Boy Features

Hardware

IR Transmitter

The Game Boy Color had an infrared transmitter and receiver. Generation II Pokémon games made use of this feature through Mystery Gift. Super Mario Bros. Deluxe could send high scores to another cartridge. GBE+ has basic IR emulation but currently it only works with Pokémon games.

Game Boy Camera

Name Operating System(s) Build to Use Recommended
mGBA Multi-platform Dev builds post 0.6.0
GiiBiiAdvance Windows ?
BGB Windows ?
Hashcam Windows [2]

The Game Boy Camera is an official Nintendo accessory for the Game Boy and was released in 1998. Users can take pictures and modify them with stickers and frames, as well as play several included minigames. In addition to the original model, there was a US-exclusive Legend of Zelda: Ocarina of Time edition that included different stamps.

The first emulator to have some capability of emulating the Game Boy Camera was a modified version of an old emulator called Hash. This version, named Hashcam, can still be found on the author's website. While there were some efforts to run the Game Boy Camera ROM in BGB unofficially, the author didn't show much interest in it. However, it is fully emulated with webcam support in a lesser-known emulator called GiiBiiAdvance.

The latest dev builds of mGBA post 0.6.0 release can emulate the accessory by either using the PC's webcam or send a BMP, GIF, JPEG, PNG, or other image format to the game, as if it was coming from the camera itself.[4] To enable the PC webcam, go to Game Boy under settings and switch the camera driver to Qt Multimedia, or by editing qt.ini and setting cameraDriver=1 under [General].

Tilt sensor

Two Game Boy Color games featured a built-in tilt sensor: Kirby Tilt 'n' Tumble and Command Master. These games cannot be played without support for this feature. While VBA and KiGB have a "Motion Sensor" option to map four directional keys to emulate the cartridge tilting, BGB can emulate the tilting features with the use of the mouse.

Game Boy Pocket Sonar

Japan only cartridge released by Bandai. It is a sonar-enabled device used for fishing with a fishing game included. No emulator supports this feature.


Accessories

There are a few accessories that the Game Boy and Game Boy Color had.

Link Cable

BGB, KiGB, some versions of VBA-M and TGB-Dual supports link cable.

4-Player Adapter

Currently only GBE+ supports it.

Game Boy Printer

VisualBoy Advance 1.8.0-beta 3 and GBE+ had Game Boy Printer support that turned the signals into a bitmap form of the image. Some notable games and accessories to make use of this feature are the RPG Pokémon games, Super Mario Bros. Deluxe, and Game Boy Camera. mGBA plans to support this feature but it is unknown if other emulators support or have plans to support it.

Barcode Boy

An obscure Japan only barcode-scanning device released by Namcot (then-Namco's consumer division) in 1992. Total of 4 games were released to utilize this accessory. KiGB and GEST claim support for this device, but they only feed random data to Game Boy until the game accept it as a valid barcode. GBE+ has proper emulation with the ability to read barcode from binary files.

Barcode Taisen Bardigun

Another Japan only barcode-scanning device with the dedicated game. GBE+ supports this accessory.

Mobile Game Boy Adapter

There is a Japan only accessory that communicates with Mobile Golf and Japanese Pokémon Crystal. It was bundled with Mobile Trainer cartridge which allowed the player to use e-mail as well as browse Nintendo's website. It is possible to partially emulate its feature for Pokémon Crystal by using BGB's scripting capability, and GBE+ can at least reach the title screen of Mobile Trainer, but otherwise no emulators properly supports this accessory.

Singer Sewing Machine

There is link cable support for the Singer IZEK Digital Sewing Machine. The IZEK was unique in that it came bundled with a specially coloured Game Boy and a cartridge for interfacing with the machine.[5][6] No emulator supports this, mostly due to the IZEK being a rare item, along with the complexity of implementing a similarly automated sewing machine.

Hudsonsoft KISS Link

This accessory allowed users to download exclusive content by them from Hudsonsoft's website. No emulator supports this.


External links

Accuracy tests