https://emulation.gametechwiki.com/api.php?action=feedcontributions&user=172.68.25.172&feedformat=atomEmulation General Wiki - User contributions [en]2024-03-29T13:02:00ZUser contributionsMediaWiki 1.32.0https://emulation.gametechwiki.com/index.php?title=Game_Boy_Advance_emulators&diff=34627Game Boy Advance emulators2020-08-01T16:36:43Z<p>172.68.25.172: /* Emulators */</p>
<hr />
<div>{{Infobox console<br />
|title = Nintendo Game Boy Advance<br />
|logo = gbagba.png<br />
|developer = [[:Nintendo]]<br />
|type = [[:Category:Consoles|Handheld game console]]<br />
|generation = [[:Category:Sixth-generation video game consoles|Sixth generation]]<br />
|release = 2001<br />
|discontinued = 2010<br />
|predecessor = [[Virtual Boy emulators|Virtual Boy]]<br />
|successor = [[Nintendo DS emulators|Nintendo DS]]<br />
|emulated = {{✓}}<br />
}}<br />
The '''[[wikipedia:Game_Boy_Advance|Game Boy Advance]]''' (often shortened to GBA) is a 32-bit handheld video game console developed by Nintendo. It is the successor to the Game Boy Color. It was released in Japan on March 21, 2001; in North America on June 11, 2001; in Australia and Europe on June 22, 2001. It has a ARM7TDMI CPU at 16.78 MHz and a Zilog Z80 CPU at 8 MHz and 4 MHz. It has 32KB of RAM and 96KB of VRAM. <br />
<br />
==Emulators==<br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Latest Version<br />
! scope="col"|GB/GBC<br />
! scope="col"|GBA<br />
! scope="col"|NDS<br />
! scope="col"|Game Link Support<br />
! scope="col"|e-Reader<br />
! scope="col"|[[libretro|Libretro Core]]<br />
! scope="col"|Active<br />
! scope="col"|[[Recommended Emulators|Recommended]]<br />
|-<br />
!colspan="11"|PC /x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa>Experimental separate build under the name of [[mGBA#medusa|medusa]].</ref> ||{{✓}} ||{{✓}}<ref group=N name=ereader>Latest development build only</ref> ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[higan]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://byuu.org/emulation/higan/ {{higanVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|iDeaS<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://web.archive.org/web/20150311100053/http://ciacin.site90.com/ideas.php 1.0.4.0]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[GBE+]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://github.com/shonumi/gbe-plus {{GBEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[https://fms.komkon.org/VGBA VGBA]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://fms.komkon.org/VGBA {{VGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[MAME]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.mamedev.org/release.html {{MAMEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|Meteor<br />
|align=left|{{Icon|Linux}}<br />
|[https://github.com/blastrock/meteor 1.4.2]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|NanoboyAdvance<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://github.com/fleroviux/NanoboyAdvance Git]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
|[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|BoyCottAdvance<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://boycottadvance.emuunlim.org/Downloads.htm 0.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|PlayBoy Advance<br />
|align=left|{{Icon|macOS}}<br />
|[https://www.zophar.net/macintosh/gba/playboy-advance.html 1.0]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Mobile / ARM<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa /> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://www.explusalpha.com/ GBA.emu]<br/><small>(VBA-M r1097 based)</small><br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.explusalpha.GbaEmu 1.5.43]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://allaboutwindowsphone.com/software/content/VBA8_1.php VBA8]<br />
|align=left|{{Icon|W8P}}<br />
|[https://www.appx4fun.com/xap/15223/ 2.27]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[https://forums.windowscentral.com/app-spotlight/252987-trio-nintendo-emulators-vba8-vgbc8-snes8x.html VBA10]<br />
|align=left|{{Icon|W10P}}<br />
|[https://forum.xda-developers.com/windows-10-mobile/windows-10-mobile-apps-and-games/app-vba10-emulator-t3588704 1.22]<br/>[https://emulator.games/emulators/gameboy-advance/vba10/ Alt]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|Pandora}}<br />
|[http://repo.openpandora.org/?page=detail&app=package.gpsp.notaz 0.9.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[https://sites.google.com/site/fastemulator/ My Boy!]<br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.fastemulator.gba 1.8.0]<br />
|{{✓}}<ref group=N name=myoldboy>Separate paid app called My OldBoy!.</ref> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|GBA4iOS<br />
|align=left|{{Icon|iOS}}<br />
|[https://iemulators.com/gba4ios v2.1]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{~}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Consoles<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Wii|Switch}}<br>{{Icon|3DS|PSV}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA emGBA]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://files.extremscorner.org/gamecube/apps/mgba/latest Git]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[gpSP#PSP_version|TempGBA4PSP]]<br />
|align=left|{{Icon|PSP}}<br />
|[http://www.mediafire.com/download/41ny5xrwxizalx4/TempGBA4PSP-26750221.zip 26750221]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-GX|VBA GX]]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://github.com/dborth/vbagx/releases 2.4.0]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<ref group=N>As VBA-Next.</ref> ||{{✓}} ||{{✓}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|PSP}}<br />
|0.9<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[Virtual Console]]<br />
|align=left|{{Icon|3DS|WiiU}}<br />
|8.10<br />
|{{✓}} <small>(Nintendo 3DS only)<small> ||{{✓}} ||{{✓}} <small>(Wii U only)<small> ||{{✓}} <small>(Pokemon only)</small> ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|}<br />
<references group=N /><br />
<br />
===Comparisons===<br />
;[[VisualBoy Advance|Visual Boy Advance (VBA)]]:The original GBA emulator. Has stopped development and lacks features compared to other offerings, it also has an <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability which was corrected in VBA-M.<br />
:;[[VisualBoy Advance#VBA-M|Visual Boy Advance-M (VBA-M)]]:A fork with additional improvements. The SVN1507 build is the only recommended one, as it is perfectly stable and is the best GBA emulator to date. VBA-M after the 2.0 releases became riddled with stability and performance problems.<br />
::;VBA-Next:A [[RetroArch]] fork from an older revision of VBA-M with added speedhacks and tweaks, making it useful for lower-end devices. A bit less accurate in some respects, but fixes a few games such as Advance Wars 2.<br />
;[[mGBA]]:Aims for accuracy, speed, and features. It's actively developed and has features VBA-M lacks such as a Tilt Sensor, and more recently Game Boy Camera support. Performance is still a problem, as it lacks support for the efficient DirectX APIs.<br />
;[[higan]]:Its GBA core is cycle-accurate as of v095, but it is behind in terms of performance compared to mGBA and VBA-M.<br />
;[[gpSP]]:Its last official version was 0.9. There are, however, two forks of interest: [http://dl.qj.net/psp/emulators/gpsp-mod-20090720.html gpSPmod], and [http://filetrip.net/psp-downloads/homebrew/download-gpsp-j-12-06-16-f29570.htmlgpSP-J gpSP-J]. gpSP-J has superior compatibility, while gpSPmod has more options for customization (full screen, cheats, etc). Both are superior to Kai.<br />
;[[MAME]]:Has a <code>gba</code> driver markup as working but both graphics and sound are "imperfect".<br />
<br />
'''NOTE:''' There's a ''huge'' <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability affecting VBA and most of its forks, except for VBA-M. The function for adding GameShark codes ("Import > Gameshark code file") doesn't check if the file's size is within 1024 kilobits, meaning cheat code files from dubious sources can be engineered with malware in mind. There is good news; VBA-M still doesn't do a sanity check for those files, but it just crashes instead of letting the code wreak havoc. So, depending on your use case, avoid using:<br />
# Cheat code files bigger than 1024Kb that you got online from untrustworthy sources.<br />
# The import code files feature.<br />
# The old emulator altogether, and settle for other options like mGBA or VBA-M. All of them support the same SRAM save data the cartridge uses.<br />
<br />
'''List of recommended GBA emulators for Android:'''<br />
* [https://www.androidauthority.com/best-game-boy-emulators-for-android-368530/ 10 best Game Boy Advanced, Game Boy Color, and Game Boy emulators for Android] (SEPTEMBER 2, 2018. Includes some emulators not found in above charts. Reviews may be subjective.)<br />
<br />
==Emulation issues==<br />
<br />
===Oversaturation===<br />
[[File:1406913527173-1-.png|400px|thumb|right|'''Left:''' The default game.<br/>'''Right:''' The "Gameboy Colors" mode on [[VisualBoy Advance#VBA-M|VBA-M]].]]<br />
The screen on the original Game Boy Advance is not backlit and can be hard to see in some conditions. To compensate, game developers often used oversaturated colors by default so that the result would look normal on hardware. On standard computer screens, saturation is not an issue so this can look jarring and undesirable for gameplay. Some games made after 2003 may have also taken the Game Boy Advance SP <abbr title="AGS-001">model</abbr> into account since its screen was actually <abbr title="A newer model, AGS-101, was released in 2005 that was actually backlit">frontlit</abbr>. For everything else though, emudevs have given some solutions:<br />
<br />
====Emulator Options====<br />
'''VBA-M''': Only applies to Windows. Under Options > Gameboy, you will find the options:<br />
<br />
* '''"Real Colors":''' No desaturation<br />
* '''"Gameboy Colors":''' Strong desaturation<br />
<br />
'''No$GBA:''' Under "Emulation Options", select "GBA Mode". There are four modes.<br />
<br />
* '''GBA (no backlight):''' Strong desaturation<br />
* '''GBA SP (backlight):''' Strong desaturation<br />
* '''Nintendo DS in GBA mode:''' Some desaturation<br />
* '''VGA Mode (poppy bright):''' No desaturation<br />
<br />
'''higan:''' Under Settings > Video Filter, you will find the "Color Emulation" checkbox.<br />
<br />
* '''Color Emulation off:''' No desaturation<br />
* '''Color Emulation on:''' Gamma correction and adjusted color range.<br />
<br />
====Shaders====<br />
Cg [[Shaders and Filters|shaders]] can be used in [[OpenEmu]] or [[RetroArch]] that adjust the colors to those of a real GBA screen, as well as other screen types. These are available in GLSL<ref name="GLSL">https://github.com/libretro/glsl-shaders/tree/master/handheld/shaders/color</ref> for OpenGL, and Slang<ref name="Slang">https://github.com/libretro/slang-shaders/tree/master/handheld/shaders/color</ref> for Vulkan.<br />
<br />
For GBA, there is <code>gba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/gba-color.cg</ref>, which simulates the color profile of a GBA screen under an external light source more accurately than VBA-M or No$GBA color options. If you prefer the darker color options that those emulators have, then use <code>vba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/vba-color.cg</ref> instead. <br />
<br />
There is also <code>nds-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/nds-color.cg</ref> and <code>psp-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/psp-color.cg</ref>, which simulates the color profiles of the original Nintendo DS frontlit screen and the PSP-1000/PSP-2000 backlit screen, respectively.<br />
<br />
===Horrible Sound Quality===<br />
As a handheld rushed to the market (because of the WonderSwan Color competition), the Game Boy Advance had some cut corners. The sound hardware was affected the hardest: while it could play Game Boy Color sound in addition to samples and sequenced music like what would be heard on the SNES, the actual sound playback quality is awful compared to the actual higher quality sound samples stored internally in the ROM.<br />
<br />
There were [https://www.romhacking.net/utilities/881/ tools] made to extract the internal high quality music (as midi files plus a sound font, to be played on foobar2000), however interest remains limited in implementing its playback in real time on emulators. It's worth noting it exists as a very experimental feature on [[mGBA]] (nightly versions) under Enhancements as "XQ GBA Audio", but very buggy and still limited to games using the standard sound engine, the so-called "Sappy" engine, which is still a big part of the GBA's software library.<br />
<br />
===High Resolution Affine Transformation Graphical Effects===<br />
Similar to the scaling effects used on the Super NES known commonly as "Mode 7" graphics, the Game Boy Advance has affine transformation effects for some backgrounds and individual sprites that can be done in hardware. Due to the GBA's lower resolution, some detail may be lost.<br />
<br />
The [[mGBA]] emulator added an Enhancements menu where you can change the resolution of those graphical effects, for a smoother effect. The graphical render engine will need to be OpenGL for those to take effect. It won't work on games where those effects are done in software instead of the hardware scaling features (like the 3D environment in Asterix & Obelix XXL)<br />
<br />
===Save formats===<br />
Originally, when saves were implemented, nobody settled on a format, so the Visual Boy Advance devs made its own. Because other emulators often went with raw data, having to exchange different saves caused problems. The original Visual Boy Advance tries to figure out which format a given save is but often fails at it. By explicitly telling the emulator to read it as a specific type using a file called <code>vba-over.ini</code>, VBA complies. VBA-M includes this config file by default, but older revisions like VBA 1.7.2 and VBALink do not.<br />
<br />
The VBA-Next and VBA-M cores in Libretro have the file baked into the binary so that it can load raw .sav files, but converts the format to its own derivative at exactly 136 KB every time, with save type info contained within the file. This completely avoids the previous issues at the cost of incompatibility with standalone VBA and most others.<br />
<br />
To solve this incompatibility, Libretro devs created a <br />
[https://github.com/libretro/vbam-libretro/blob/master/src/libretro/gbaconv/gbaconv.c command-line tool] to convert .srm save files made from these cores to raw .sav save data for other emulators. It takes standard input (i.e. just drag and drop the .srm onto the executable) and outputs accordingly. It can also be done in reverse. A 64-bit binary of this tool for Windows can be found <br />
[https://www.mediafire.com/?6bg8ag0bjs1b7ng here].<br />
<br />
==Connectivity==<br />
There are five different kinds of connectivity, support varying by game:<br />
*Single Pak<br />
*Multi Pak<br />
*Wireless<br />
*GameCube<br />
*Nintendo DS<br />
Purple end in GBA means player 1, while a grey end in GBA means P2, P3, or P4. Daisy chaining up to three cables will set up the additional P3 and P4 by connecting the purple end to a purple mid section.<ref>https://www.nintendo.com/consumer/downloads/agblink.pdf</ref><br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Supported Version<br />
! scope="col"|Single Pak<br />
! scope="col"|Multi Pak<br />
! scope="col"|Wireless<br />
! scope="col"|GameCube<br />
! scope="col"|Nintendo DS<br />
|-<br />
!colspan="8"|PC / x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
|[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[DeSmuME]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://ci.appveyor.com/project/zeromus/desmume {{DeSmuMEVer}}]<br />
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|}<br />
===GBA Mutli Pak Link Multiplayer (1~4GBA)===<br />
;VBA-M: This doesn't work with old VBA versions.<br />
:Just disable "Pause when Inactive", configure all four Joypads each with their own button layout, enable "Link, Enable GBA Link". Now open VBA-M again as many times needed for each player, and have them each use their separate Joypad configuration. Each player will have a separate SRAM save file.<br />
;VBA Link + e-Reader:Useful if you want to use the Pokémon Battle-eCards. Downloads and instructions reside [http://projectpokemon.org/forums/showthread.php?42433-RELEASE-VBA-LINK-E-READER here].<br />
;mGBA:Select "New multiplayer window" from the menu. As you load your ROMs into each window, "Player [X] of [Y]" will appear across the title bar. This can be done for up to four players. However, multiple instances of the same ROM will share a save file.<br />
;No$GBA:Set the number of Emulated Gameboys in the Emulation setting to be 2 or more, and the Link Gamepaks Options to Gamepak in all GBAs.<br />
<br />
===GBA Wireless Multiplayer===<br />
The [[Wikipedia:Game Boy Advance Wireless Adapter|wireless adapter]] has the ability to connect five players<ref>https://www.nintendo.com/consumer/downloads/agbwireless_trilingual.pdf</ref> to each other and includes its own software to download a subset of another player's game that runs when no cartridge is inserted. ''Pokémon Fire Red'' and ''Leaf Green'' came bundled with this accessory but it can also work with ''Pokémon Emerald'' and the ''Classic NES Series''.<br />
<br />
No emulator has currently implemented this add-on. The only project whose developers put this on its roadmap is [[mGBA]].<br />
<br />
===GameCube Connectivity===<br />
The Game Boy Advance can also connect to the GameCube.<ref>https://www.nintendo.com/consumer/downloads/agbgcncable.pdf</ref> e-Reader functionality with GC games isn't emulated as of yet, but [[Dolphin]] supports connectivity through rudimentary joybus emulation made in parallel with VBA-M. Because this emulator has fallen behind, the Dolphin team is currently rewriting the feature from scratch to better interface with more accurate emulators. They showcased early higan support in a video, but nothing has been released as of yet.<br />
<br />
====Dolphin/VBA-M====<br />
:''Requires VBA-M r947 or newer.''<br />
<br />
# Reduce your volume. You won't want it to be high, especially with headphones.<br />
# Open Dolphin and VBA-M. Make sure neither are blocked by your firmware.<br />
# In Dolphin, launch the game and navigate to the area where you're asked to connect the GBA. Then, under the controller options, assign the GameCube controllers as "GBA" for whichever you need.<br />
# In VBA-M, uncheck Pause When Inactive in Options > Emulator. Then, under Options > Link > Joybus Options, Make sure to "Enable Joybus Connection" is on and set "IP/Hostname" to use default settings, that is <code>127.0.0.1</code> or <code>localhost</code>.<br />
# Dolphin will freeze.<br />
# Open the GBA BIOS in VBA-M as if it were a regular GBA ROM. The regular splash screen will stutter a bit.<br />
# Dolphin should recognize the Joybus Link by then and the GC game will detect that a GBA was connected.<br />
# To connect other units, open another VBA-M instance and repeat its process.<br />
<br />
Notable games that work:<br />
*[https://wiki.dolphin-emu.org/index.php?title=The_Legend_of_Zelda:_Four_Swords_Adventures The Legend of Zelda Four Swords Adventures]: Both two modes available for the US/PAL version work. The third Japan-only Navi Trackers mode works as well, but the game crashes after the naming screen due to a bug in the GC/GBA connectivity.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Final_Fantasy_Crystal_Chronicles Final Fantasy Crystal Chronicles]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Billy_Hatcher_and_the_Giant_Egg Billy Hatcher and the Giant Egg]: You can download games to your GBA. Amusingly, a RAM dump from VBA-M can be opened as a functional GBA ROM.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Kururin_Squash! Kururin Squash!]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Sonic_Adventure_2:_Battle Sonic Adventure 2: Battle] (buggy)<br />
<br />
Notable games that don't:<br />
*[https://wiki.dolphin-emu.org/index.php?title=Mr_Driller:_Drill_Land Mr. Driller: Drill Land]<br />
*lots more<br />
<br />
===GBA/DS Connectivity===<br />
:''Main section: [[Nintendo_DS_emulators#GBA.2FDS_Connectivity|Nintendo DS § GBA/DS Connectivity]]''<br />
<br />
===e-Reader===<br />
:''Main page: [[GBA e-Reader emulators]]''<br />
This device can read content off e-Card paper stripes either as standalone content, or additional content to GBA/GC games. Can be thought of as DLC.<br />
<br />
==Special Hardware==<br />
Most of these have not been emulated as of yet. There used to be patches that could be applied to GBA ROMs with a utility like Lunar IPS (mostly from [http://bubbz.pocketheaven.com/?system=gba&section=patch No Frills]), but they're for the most part lost to time nowadays. Your best bet is to use Action Replay to emulate those.<br />
<br />
===Solar Sensor===<br />
====Emulation====<br />
This feature has been emulated in mGBA, VBA-M, No$GBA 2.6 onwards, and My Boy!:<br />
* VBA-M: This emulator uses the keys of the lateral motion controls to change the Solar Sensor levels. You can find those keys and modify them in Options -> Input -> Configure... -> "Special" tab.<br />
* mGBA: In the shortcuts editor, shortcuts can be configured to raise/lower the solar level incrementally or to set any particular brightness level. <br />
* No$GBA: Under '''Options/Emulation Setup''', you can find the Solar Sensor Level option. You are given the choice between only three brightness levels though: Darkness, 100 Watts, and Bright Sunlight.<br />
* My Boy! This emulator uses a button combination or the devices light sensor to check the brightness level. You can change this under Settings -> Input -> Cartridge Features -> "Solar Emulation By" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM by various scene release groups to make it compatible with any emulator/flashcard, making the in-game brightness level controllable with L+Left/Right. It's argued this makes for a better experience actually, but sadly not all releases are covered.<br />
* '''Boktai 1:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1145 US], <s>EU</s>.<br />
* '''Boktai 2:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], <s>US</s>, [http://www.advanscene.com/html/Releases/dbreleases.php?id=1992 EU]. <br />
* '''Boktai 3:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=2048 JP Fix].<br />
* Combinations of Boktai 4 JP with earlier solar sensors to get solar sensor bonuses aren't emulated yet in any DS emulator.<br />
<br />
===Motion Control===<br />
VBA-M has an option for Motion controls "Input, Set, Motion". It currently works with all versions of the GBC title Kirby Tilt'n Tumble, which also was a special cartridge with a motion sensor built-in to control movement in-game. But VBA-M does not support motion controls for GBA games yet.<br />
====Emulation====<br />
* VBA '''doesn't''' emulate this feature, and its "Motion Control" option (with keys mapped to each tilt direction) covers the GBC title Kirby Tilt'n Tumble.<br />
* mGBA supposedly includes this feature but key remapping for tilt sensors is not present in the latest builds.<br />
* My Boy! uses the device's accelerometer to emulate this feature. You can change the sensitivity under Settings -> Input -> Cartridge Features -> "Motion sensitivity" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM (with the Lunar IPS utility, or at runtime using mGBA or VBA-M and naming them the same as the ROM in the same directory) by various scene release groups to make it compatible with any emulator/flashcard. D-Pad controls substituting motion controls don't work as well here as they tilt it "too much" at times to be very playable.<br />
* Yoshi Topsy Turvy/Universal Gravitation: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1799 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1947 EU], [http://www.advanscene.com/html/Releases/dbreleases.php?id=2001 US]<br />
* WarioWare Twisted! (Patch: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1682 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1979 US])<br />
<br />
===Rumble Feature===<br />
There are various rumble features found in GBA/GBC cards:<br />
* '''GBC Rumble:''' GBC games which came on special cartridges with additional hardware for the rumble feature. It was actually used by dozens of releases, and some games like Tarzan 2 GBC were programmed to have rumble support but shipped on regular cartridges. Emulated by VBA-M GX (Wii-only), which also cover the dummied-out rumble games. Not emulated anywhere else.<br />
* '''GBA Gyro Rumble:''' WarioWare Twisted was shipped on a cart with rumble support. It would rumble when you tilt to one "extreme". Emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds, <br />
* '''GBA Variable Rumble:''' Drill Dozer has rumble support, with variable force and speed depending on the rock type you drill through in-game. Partially emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds.<br />
* '''Game Boy Player Rumble:''' Many regular GBA games, shipped on regular cartridges, enable rumble during gameplay when played on GB Player hardware (which is essentially GBA hardware). These include Super Mario Advance 4, Summon Night Hajimari no Ishi, Mario & Luigi 1, Shikakui Atama wo Marukusuru Advance (both releases), Pokémon Pinball, as well as Drill Dozer which disables its original cartridge rumble scheme and enables this one instead. None of the emulators support this, though it's being under development for the mGBA emulator.<br />
<br />
===Figurine Readers===<br />
* '''Figurine Add-on:''' Legendz: Isle Of Trials, Legendz: Sign Of Necromu, Plaston Gate ([http://www.advanscene.com/html/Releases/dbreleases.php?id=1020 Fix]), Plaston Gate DX ([http://www.advanscene.com/html/Releases/dbreleases.php?id=2006 Fix]). The add-on is essentially Skylanders before it became popular.<br />
<br />
[[mGBA]] (dev channel only) and [[GBE+]] partially support the add-on used for the Legendz series.<br />
<br />
===BattleChip Gate===<br />
An peripheral device by Capcom and Takara compatible with ''Mega Man Battle Network 4'' (Japanese edition). It can be connected to the Game Boy Advance and allow the player to transmit real-life toy Battle Chips to the NetNavis in the game. It's also compatible with toy Advanced PETs and ''Rockman.EXE 4.5 Real Operation''. It can also unlock minigames in ''Mega Man Zero 3''.<br />
<br />
[[mGBA]] and [[GBE+]] partially support this add-on.<br />
<br />
===Glucoboy===<br />
* '''Glucoboy:''' An obscure medical peripheral designed to monitor a child's blood glucose levels and reward them for keeping tabs on their condition. No known emulator supports this so far, especially given the niche nature of this accessory. Not to mention that [https://assemblergames.com/threads/glucoboy-for-gameboy-is-this-the-rarest-game-accessory-for-gameboy-advance.41853/page-2 Bayer Healthcare destroyed all unsold stock] making it hard to find.<br />
<br />
==References==<br />
{{reflist|2}}<br />
<br />
<br />
{{Nintendo}}<br />
<br />
[[Category:Consoles]]<br />
[[Category:Nintendo consoles]]<br />
[[Category:Sixth-generation video game consoles]]<br />
[[Category:Game Boy Advance emulators|*]]</div>172.68.25.172https://emulation.gametechwiki.com/index.php?title=Game_Boy_Advance_emulators&diff=34626Game Boy Advance emulators2020-08-01T16:34:39Z<p>172.68.25.172: /* Emulator Options */</p>
<hr />
<div>{{Infobox console<br />
|title = Nintendo Game Boy Advance<br />
|logo = gbagba.png<br />
|developer = [[:Nintendo]]<br />
|type = [[:Category:Consoles|Handheld game console]]<br />
|generation = [[:Category:Sixth-generation video game consoles|Sixth generation]]<br />
|release = 2001<br />
|discontinued = 2010<br />
|predecessor = [[Virtual Boy emulators|Virtual Boy]]<br />
|successor = [[Nintendo DS emulators|Nintendo DS]]<br />
|emulated = {{✓}}<br />
}}<br />
The '''[[wikipedia:Game_Boy_Advance|Game Boy Advance]]''' (often shortened to GBA) is a 32-bit handheld video game console developed by Nintendo. It is the successor to the Game Boy Color. It was released in Japan on March 21, 2001; in North America on June 11, 2001; in Australia and Europe on June 22, 2001. It has a ARM7TDMI CPU at 16.78 MHz and a Zilog Z80 CPU at 8 MHz and 4 MHz. It has 32KB of RAM and 96KB of VRAM. <br />
<br />
==Emulators==<br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Latest Version<br />
! scope="col"|GB/GBC<br />
! scope="col"|GBA<br />
! scope="col"|NDS<br />
! scope="col"|Game Link Support<br />
! scope="col"|e-Reader<br />
! scope="col"|[[libretro|Libretro Core]]<br />
! scope="col"|Active<br />
! scope="col"|[[Recommended Emulators|Recommended]]<br />
|-<br />
!colspan="11"|PC /x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa>Experimental separate build under the name of [[mGBA#medusa|medusa]].</ref> ||{{✓}} ||{{✓}}<ref group=N name=ereader>Latest development build only</ref> ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[higan]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://byuu.org/emulation/higan/ {{higanVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|iDeaS<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://web.archive.org/web/20150311100053/http://ciacin.site90.com/ideas.php 1.0.4.0]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[GBE+]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://github.com/shonumi/gbe-plus {{GBEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[https://fms.komkon.org/VGBA VGBA]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://fms.komkon.org/VGBA {{VGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[MAME]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.mamedev.org/release.html {{MAMEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|Meteor<br />
|align=left|{{Icon|Linux}}<br />
|[https://github.com/blastrock/meteor 1.4.2]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|NanoboyAdvance<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://github.com/fleroviux/NanoboyAdvance Git]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
|[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|BoyCottAdvance<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://boycottadvance.emuunlim.org/Downloads.htm 0.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|PlayBoy Advance<br />
|align=left|{{Icon|macOS}}<br />
|[https://www.zophar.net/macintosh/gba/playboy-advance.html 1.0]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Mobile / ARM<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa /> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://www.explusalpha.com/ GBA.emu]<br/><small>(VBA-M r1097 based)</small><br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.explusalpha.GbaEmu 1.5.43]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://allaboutwindowsphone.com/software/content/VBA8_1.php VBA8]<br />
|align=left|{{Icon|W8P}}<br />
|[https://www.appx4fun.com/xap/15223/ 2.27]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}}<br />
|-<br />
|[https://forums.windowscentral.com/app-spotlight/252987-trio-nintendo-emulators-vba8-vgbc8-snes8x.html VBA10]<br />
|align=left|{{Icon|W10P}}<br />
|[https://forum.xda-developers.com/windows-10-mobile/windows-10-mobile-apps-and-games/app-vba10-emulator-t3588704 1.22]<br/>[https://emulator.games/emulators/gameboy-advance/vba10/ Alt]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|Pandora}}<br />
|[http://repo.openpandora.org/?page=detail&app=package.gpsp.notaz 0.9.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||? ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[https://sites.google.com/site/fastemulator/ My Boy!]<br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.fastemulator.gba 1.8.0]<br />
|{{✓}}<ref group=N name=myoldboy>Separate paid app called My OldBoy!.</ref> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|GBA4iOS<br />
|align=left|{{Icon|iOS}}<br />
|[https://iemulators.com/gba4ios v2.1]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{~}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Consoles<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Wii|Switch}}<br>{{Icon|3DS|PSV}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA emGBA]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://files.extremscorner.org/gamecube/apps/mgba/latest Git]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[gpSP#PSP_version|TempGBA4PSP]]<br />
|align=left|{{Icon|PSP}}<br />
|[http://www.mediafire.com/download/41ny5xrwxizalx4/TempGBA4PSP-26750221.zip 26750221]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-GX|VBA GX]]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://github.com/dborth/vbagx/releases 2.4.0]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<ref group=N>As VBA-Next.</ref> ||{{✓}} ||{{✓}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|PSP}}<br />
|0.9<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[Virtual Console]]<br />
|align=left|{{Icon|3DS|WiiU}}<br />
|8.10<br />
|{{✓}} <small>(Nintendo 3DS only)<small> ||{{✓}} ||{{✓}} <small>(Wii U only)<small> ||{{✓}} <small>(Pokemon only)</small> ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|}<br />
<references group=N /><br />
<br />
===Comparisons===<br />
;[[VisualBoy Advance|Visual Boy Advance (VBA)]]:The original GBA emulator. Has stopped development and lacks features compared to other offerings, it also has an <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability which was corrected in VBA-M.<br />
:;[[VisualBoy Advance#VBA-M|Visual Boy Advance-M (VBA-M)]]:A fork with additional improvements. The SVN1507 build is the only recommended one, as it is perfectly stable and is the best GBA emulator to date. VBA-M after the 2.0 releases became riddled with stability and performance problems.<br />
::;VBA-Next:A [[RetroArch]] fork from an older revision of VBA-M with added speedhacks and tweaks, making it useful for lower-end devices. A bit less accurate in some respects, but fixes a few games such as Advance Wars 2.<br />
;[[mGBA]]:Aims for accuracy, speed, and features. It's actively developed and has features VBA-M lacks such as a Tilt Sensor, and more recently Game Boy Camera support. Performance is still a problem, as it lacks support for the efficient DirectX APIs.<br />
;[[higan]]:Its GBA core is cycle-accurate as of v095, but it is behind in terms of performance compared to mGBA and VBA-M.<br />
;[[gpSP]]:Its last official version was 0.9. There are, however, two forks of interest: [http://dl.qj.net/psp/emulators/gpsp-mod-20090720.html gpSPmod], and [http://filetrip.net/psp-downloads/homebrew/download-gpsp-j-12-06-16-f29570.htmlgpSP-J gpSP-J]. gpSP-J has superior compatibility, while gpSPmod has more options for customization (full screen, cheats, etc). Both are superior to Kai.<br />
;[[MAME]]:Has a <code>gba</code> driver markup as working but both graphics and sound are "imperfect".<br />
<br />
'''NOTE:''' There's a ''huge'' <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability affecting VBA and most of its forks, except for VBA-M. The function for adding GameShark codes ("Import > Gameshark code file") doesn't check if the file's size is within 1024 kilobits, meaning cheat code files from dubious sources can be engineered with malware in mind. There is good news; VBA-M still doesn't do a sanity check for those files, but it just crashes instead of letting the code wreak havoc. So, depending on your use case, avoid using:<br />
# Cheat code files bigger than 1024Kb that you got online from untrustworthy sources.<br />
# The import code files feature.<br />
# The old emulator altogether, and settle for other options like mGBA or VBA-M. All of them support the same SRAM save data the cartridge uses.<br />
<br />
'''List of recommended GBA emulators for Android:'''<br />
* [https://www.androidauthority.com/best-game-boy-emulators-for-android-368530/ 10 best Game Boy Advanced, Game Boy Color, and Game Boy emulators for Android] (SEPTEMBER 2, 2018. Includes some emulators not found in above charts. Reviews may be subjective.)<br />
<br />
==Emulation issues==<br />
<br />
===Oversaturation===<br />
[[File:1406913527173-1-.png|400px|thumb|right|'''Left:''' The default game.<br/>'''Right:''' The "Gameboy Colors" mode on [[VisualBoy Advance#VBA-M|VBA-M]].]]<br />
The screen on the original Game Boy Advance is not backlit and can be hard to see in some conditions. To compensate, game developers often used oversaturated colors by default so that the result would look normal on hardware. On standard computer screens, saturation is not an issue so this can look jarring and undesirable for gameplay. Some games made after 2003 may have also taken the Game Boy Advance SP <abbr title="AGS-001">model</abbr> into account since its screen was actually <abbr title="A newer model, AGS-101, was released in 2005 that was actually backlit">frontlit</abbr>. For everything else though, emudevs have given some solutions:<br />
<br />
====Emulator Options====<br />
'''VBA-M''': Only applies to Windows. Under Options > Gameboy, you will find the options:<br />
<br />
* '''"Real Colors":''' No desaturation<br />
* '''"Gameboy Colors":''' Strong desaturation<br />
<br />
'''No$GBA:''' Under "Emulation Options", select "GBA Mode". There are four modes.<br />
<br />
* '''GBA (no backlight):''' Strong desaturation<br />
* '''GBA SP (backlight):''' Strong desaturation<br />
* '''Nintendo DS in GBA mode:''' Some desaturation<br />
* '''VGA Mode (poppy bright):''' No desaturation<br />
<br />
'''higan:''' Under Settings > Video Filter, you will find the "Color Emulation" checkbox.<br />
<br />
* '''Color Emulation off:''' No desaturation<br />
* '''Color Emulation on:''' Gamma correction and adjusted color range.<br />
<br />
====Shaders====<br />
Cg [[Shaders and Filters|shaders]] can be used in [[OpenEmu]] or [[RetroArch]] that adjust the colors to those of a real GBA screen, as well as other screen types. These are available in GLSL<ref name="GLSL">https://github.com/libretro/glsl-shaders/tree/master/handheld/shaders/color</ref> for OpenGL, and Slang<ref name="Slang">https://github.com/libretro/slang-shaders/tree/master/handheld/shaders/color</ref> for Vulkan.<br />
<br />
For GBA, there is <code>gba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/gba-color.cg</ref>, which simulates the color profile of a GBA screen under an external light source more accurately than VBA-M or No$GBA color options. If you prefer the darker color options that those emulators have, then use <code>vba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/vba-color.cg</ref> instead. <br />
<br />
There is also <code>nds-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/nds-color.cg</ref> and <code>psp-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/psp-color.cg</ref>, which simulates the color profiles of the original Nintendo DS frontlit screen and the PSP-1000/PSP-2000 backlit screen, respectively.<br />
<br />
===Horrible Sound Quality===<br />
As a handheld rushed to the market (because of the WonderSwan Color competition), the Game Boy Advance had some cut corners. The sound hardware was affected the hardest: while it could play Game Boy Color sound in addition to samples and sequenced music like what would be heard on the SNES, the actual sound playback quality is awful compared to the actual higher quality sound samples stored internally in the ROM.<br />
<br />
There were [https://www.romhacking.net/utilities/881/ tools] made to extract the internal high quality music (as midi files plus a sound font, to be played on foobar2000), however interest remains limited in implementing its playback in real time on emulators. It's worth noting it exists as a very experimental feature on [[mGBA]] (nightly versions) under Enhancements as "XQ GBA Audio", but very buggy and still limited to games using the standard sound engine, the so-called "Sappy" engine, which is still a big part of the GBA's software library.<br />
<br />
===High Resolution Affine Transformation Graphical Effects===<br />
Similar to the scaling effects used on the Super NES known commonly as "Mode 7" graphics, the Game Boy Advance has affine transformation effects for some backgrounds and individual sprites that can be done in hardware. Due to the GBA's lower resolution, some detail may be lost.<br />
<br />
The [[mGBA]] emulator added an Enhancements menu where you can change the resolution of those graphical effects, for a smoother effect. The graphical render engine will need to be OpenGL for those to take effect. It won't work on games where those effects are done in software instead of the hardware scaling features (like the 3D environment in Asterix & Obelix XXL)<br />
<br />
===Save formats===<br />
Originally, when saves were implemented, nobody settled on a format, so the Visual Boy Advance devs made its own. Because other emulators often went with raw data, having to exchange different saves caused problems. The original Visual Boy Advance tries to figure out which format a given save is but often fails at it. By explicitly telling the emulator to read it as a specific type using a file called <code>vba-over.ini</code>, VBA complies. VBA-M includes this config file by default, but older revisions like VBA 1.7.2 and VBALink do not.<br />
<br />
The VBA-Next and VBA-M cores in Libretro have the file baked into the binary so that it can load raw .sav files, but converts the format to its own derivative at exactly 136 KB every time, with save type info contained within the file. This completely avoids the previous issues at the cost of incompatibility with standalone VBA and most others.<br />
<br />
To solve this incompatibility, Libretro devs created a <br />
[https://github.com/libretro/vbam-libretro/blob/master/src/libretro/gbaconv/gbaconv.c command-line tool] to convert .srm save files made from these cores to raw .sav save data for other emulators. It takes standard input (i.e. just drag and drop the .srm onto the executable) and outputs accordingly. It can also be done in reverse. A 64-bit binary of this tool for Windows can be found <br />
[https://www.mediafire.com/?6bg8ag0bjs1b7ng here].<br />
<br />
==Connectivity==<br />
There are five different kinds of connectivity, support varying by game:<br />
*Single Pak<br />
*Multi Pak<br />
*Wireless<br />
*GameCube<br />
*Nintendo DS<br />
Purple end in GBA means player 1, while a grey end in GBA means P2, P3, or P4. Daisy chaining up to three cables will set up the additional P3 and P4 by connecting the purple end to a purple mid section.<ref>https://www.nintendo.com/consumer/downloads/agblink.pdf</ref><br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Supported Version<br />
! scope="col"|Single Pak<br />
! scope="col"|Multi Pak<br />
! scope="col"|Wireless<br />
! scope="col"|GameCube<br />
! scope="col"|Nintendo DS<br />
|-<br />
!colspan="8"|PC / x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
|[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[DeSmuME]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://ci.appveyor.com/project/zeromus/desmume {{DeSmuMEVer}}]<br />
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|}<br />
===GBA Mutli Pak Link Multiplayer (1~4GBA)===<br />
;VBA-M: This doesn't work with old VBA versions.<br />
:Just disable "Pause when Inactive", configure all four Joypads each with their own button layout, enable "Link, Enable GBA Link". Now open VBA-M again as many times needed for each player, and have them each use their separate Joypad configuration. Each player will have a separate SRAM save file.<br />
;VBA Link + e-Reader:Useful if you want to use the Pokémon Battle-eCards. Downloads and instructions reside [http://projectpokemon.org/forums/showthread.php?42433-RELEASE-VBA-LINK-E-READER here].<br />
;mGBA:Select "New multiplayer window" from the menu. As you load your ROMs into each window, "Player [X] of [Y]" will appear across the title bar. This can be done for up to four players. However, multiple instances of the same ROM will share a save file.<br />
;No$GBA:Set the number of Emulated Gameboys in the Emulation setting to be 2 or more, and the Link Gamepaks Options to Gamepak in all GBAs.<br />
<br />
===GBA Wireless Multiplayer===<br />
The [[Wikipedia:Game Boy Advance Wireless Adapter|wireless adapter]] has the ability to connect five players<ref>https://www.nintendo.com/consumer/downloads/agbwireless_trilingual.pdf</ref> to each other and includes its own software to download a subset of another player's game that runs when no cartridge is inserted. ''Pokémon Fire Red'' and ''Leaf Green'' came bundled with this accessory but it can also work with ''Pokémon Emerald'' and the ''Classic NES Series''.<br />
<br />
No emulator has currently implemented this add-on. The only project whose developers put this on its roadmap is [[mGBA]].<br />
<br />
===GameCube Connectivity===<br />
The Game Boy Advance can also connect to the GameCube.<ref>https://www.nintendo.com/consumer/downloads/agbgcncable.pdf</ref> e-Reader functionality with GC games isn't emulated as of yet, but [[Dolphin]] supports connectivity through rudimentary joybus emulation made in parallel with VBA-M. Because this emulator has fallen behind, the Dolphin team is currently rewriting the feature from scratch to better interface with more accurate emulators. They showcased early higan support in a video, but nothing has been released as of yet.<br />
<br />
====Dolphin/VBA-M====<br />
:''Requires VBA-M r947 or newer.''<br />
<br />
# Reduce your volume. You won't want it to be high, especially with headphones.<br />
# Open Dolphin and VBA-M. Make sure neither are blocked by your firmware.<br />
# In Dolphin, launch the game and navigate to the area where you're asked to connect the GBA. Then, under the controller options, assign the GameCube controllers as "GBA" for whichever you need.<br />
# In VBA-M, uncheck Pause When Inactive in Options > Emulator. Then, under Options > Link > Joybus Options, Make sure to "Enable Joybus Connection" is on and set "IP/Hostname" to use default settings, that is <code>127.0.0.1</code> or <code>localhost</code>.<br />
# Dolphin will freeze.<br />
# Open the GBA BIOS in VBA-M as if it were a regular GBA ROM. The regular splash screen will stutter a bit.<br />
# Dolphin should recognize the Joybus Link by then and the GC game will detect that a GBA was connected.<br />
# To connect other units, open another VBA-M instance and repeat its process.<br />
<br />
Notable games that work:<br />
*[https://wiki.dolphin-emu.org/index.php?title=The_Legend_of_Zelda:_Four_Swords_Adventures The Legend of Zelda Four Swords Adventures]: Both two modes available for the US/PAL version work. The third Japan-only Navi Trackers mode works as well, but the game crashes after the naming screen due to a bug in the GC/GBA connectivity.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Final_Fantasy_Crystal_Chronicles Final Fantasy Crystal Chronicles]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Billy_Hatcher_and_the_Giant_Egg Billy Hatcher and the Giant Egg]: You can download games to your GBA. Amusingly, a RAM dump from VBA-M can be opened as a functional GBA ROM.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Kururin_Squash! Kururin Squash!]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Sonic_Adventure_2:_Battle Sonic Adventure 2: Battle] (buggy)<br />
<br />
Notable games that don't:<br />
*[https://wiki.dolphin-emu.org/index.php?title=Mr_Driller:_Drill_Land Mr. Driller: Drill Land]<br />
*lots more<br />
<br />
===GBA/DS Connectivity===<br />
:''Main section: [[Nintendo_DS_emulators#GBA.2FDS_Connectivity|Nintendo DS § GBA/DS Connectivity]]''<br />
<br />
===e-Reader===<br />
:''Main page: [[GBA e-Reader emulators]]''<br />
This device can read content off e-Card paper stripes either as standalone content, or additional content to GBA/GC games. Can be thought of as DLC.<br />
<br />
==Special Hardware==<br />
Most of these have not been emulated as of yet. There used to be patches that could be applied to GBA ROMs with a utility like Lunar IPS (mostly from [http://bubbz.pocketheaven.com/?system=gba&section=patch No Frills]), but they're for the most part lost to time nowadays. Your best bet is to use Action Replay to emulate those.<br />
<br />
===Solar Sensor===<br />
====Emulation====<br />
This feature has been emulated in mGBA, VBA-M, No$GBA 2.6 onwards, and My Boy!:<br />
* VBA-M: This emulator uses the keys of the lateral motion controls to change the Solar Sensor levels. You can find those keys and modify them in Options -> Input -> Configure... -> "Special" tab.<br />
* mGBA: In the shortcuts editor, shortcuts can be configured to raise/lower the solar level incrementally or to set any particular brightness level. <br />
* No$GBA: Under '''Options/Emulation Setup''', you can find the Solar Sensor Level option. You are given the choice between only three brightness levels though: Darkness, 100 Watts, and Bright Sunlight.<br />
* My Boy! This emulator uses a button combination or the devices light sensor to check the brightness level. You can change this under Settings -> Input -> Cartridge Features -> "Solar Emulation By" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM by various scene release groups to make it compatible with any emulator/flashcard, making the in-game brightness level controllable with L+Left/Right. It's argued this makes for a better experience actually, but sadly not all releases are covered.<br />
* '''Boktai 1:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1145 US], <s>EU</s>.<br />
* '''Boktai 2:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], <s>US</s>, [http://www.advanscene.com/html/Releases/dbreleases.php?id=1992 EU]. <br />
* '''Boktai 3:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=2048 JP Fix].<br />
* Combinations of Boktai 4 JP with earlier solar sensors to get solar sensor bonuses aren't emulated yet in any DS emulator.<br />
<br />
===Motion Control===<br />
VBA-M has an option for Motion controls "Input, Set, Motion". It currently works with all versions of the GBC title Kirby Tilt'n Tumble, which also was a special cartridge with a motion sensor built-in to control movement in-game. But VBA-M does not support motion controls for GBA games yet.<br />
====Emulation====<br />
* VBA '''doesn't''' emulate this feature, and its "Motion Control" option (with keys mapped to each tilt direction) covers the GBC title Kirby Tilt'n Tumble.<br />
* mGBA supposedly includes this feature but key remapping for tilt sensors is not present in the latest builds.<br />
* My Boy! uses the device's accelerometer to emulate this feature. You can change the sensitivity under Settings -> Input -> Cartridge Features -> "Motion sensitivity" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM (with the Lunar IPS utility, or at runtime using mGBA or VBA-M and naming them the same as the ROM in the same directory) by various scene release groups to make it compatible with any emulator/flashcard. D-Pad controls substituting motion controls don't work as well here as they tilt it "too much" at times to be very playable.<br />
* Yoshi Topsy Turvy/Universal Gravitation: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1799 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1947 EU], [http://www.advanscene.com/html/Releases/dbreleases.php?id=2001 US]<br />
* WarioWare Twisted! (Patch: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1682 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1979 US])<br />
<br />
===Rumble Feature===<br />
There are various rumble features found in GBA/GBC cards:<br />
* '''GBC Rumble:''' GBC games which came on special cartridges with additional hardware for the rumble feature. It was actually used by dozens of releases, and some games like Tarzan 2 GBC were programmed to have rumble support but shipped on regular cartridges. Emulated by VBA-M GX (Wii-only), which also cover the dummied-out rumble games. Not emulated anywhere else.<br />
* '''GBA Gyro Rumble:''' WarioWare Twisted was shipped on a cart with rumble support. It would rumble when you tilt to one "extreme". Emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds, <br />
* '''GBA Variable Rumble:''' Drill Dozer has rumble support, with variable force and speed depending on the rock type you drill through in-game. Partially emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds.<br />
* '''Game Boy Player Rumble:''' Many regular GBA games, shipped on regular cartridges, enable rumble during gameplay when played on GB Player hardware (which is essentially GBA hardware). These include Super Mario Advance 4, Summon Night Hajimari no Ishi, Mario & Luigi 1, Shikakui Atama wo Marukusuru Advance (both releases), Pokémon Pinball, as well as Drill Dozer which disables its original cartridge rumble scheme and enables this one instead. None of the emulators support this, though it's being under development for the mGBA emulator.<br />
<br />
===Figurine Readers===<br />
* '''Figurine Add-on:''' Legendz: Isle Of Trials, Legendz: Sign Of Necromu, Plaston Gate ([http://www.advanscene.com/html/Releases/dbreleases.php?id=1020 Fix]), Plaston Gate DX ([http://www.advanscene.com/html/Releases/dbreleases.php?id=2006 Fix]). The add-on is essentially Skylanders before it became popular.<br />
<br />
[[mGBA]] (dev channel only) and [[GBE+]] partially support the add-on used for the Legendz series.<br />
<br />
===BattleChip Gate===<br />
An peripheral device by Capcom and Takara compatible with ''Mega Man Battle Network 4'' (Japanese edition). It can be connected to the Game Boy Advance and allow the player to transmit real-life toy Battle Chips to the NetNavis in the game. It's also compatible with toy Advanced PETs and ''Rockman.EXE 4.5 Real Operation''. It can also unlock minigames in ''Mega Man Zero 3''.<br />
<br />
[[mGBA]] and [[GBE+]] partially support this add-on.<br />
<br />
===Glucoboy===<br />
* '''Glucoboy:''' An obscure medical peripheral designed to monitor a child's blood glucose levels and reward them for keeping tabs on their condition. No known emulator supports this so far, especially given the niche nature of this accessory. Not to mention that [https://assemblergames.com/threads/glucoboy-for-gameboy-is-this-the-rarest-game-accessory-for-gameboy-advance.41853/page-2 Bayer Healthcare destroyed all unsold stock] making it hard to find.<br />
<br />
==References==<br />
{{reflist|2}}<br />
<br />
<br />
{{Nintendo}}<br />
<br />
[[Category:Consoles]]<br />
[[Category:Nintendo consoles]]<br />
[[Category:Sixth-generation video game consoles]]<br />
[[Category:Game Boy Advance emulators|*]]</div>172.68.25.172https://emulation.gametechwiki.com/index.php?title=Game_Boy_Advance_emulators&diff=34625Game Boy Advance emulators2020-08-01T16:33:28Z<p>172.68.25.172: /* Emulators */</p>
<hr />
<div>{{Infobox console<br />
|title = Nintendo Game Boy Advance<br />
|logo = gbagba.png<br />
|developer = [[:Nintendo]]<br />
|type = [[:Category:Consoles|Handheld game console]]<br />
|generation = [[:Category:Sixth-generation video game consoles|Sixth generation]]<br />
|release = 2001<br />
|discontinued = 2010<br />
|predecessor = [[Virtual Boy emulators|Virtual Boy]]<br />
|successor = [[Nintendo DS emulators|Nintendo DS]]<br />
|emulated = {{✓}}<br />
}}<br />
The '''[[wikipedia:Game_Boy_Advance|Game Boy Advance]]''' (often shortened to GBA) is a 32-bit handheld video game console developed by Nintendo. It is the successor to the Game Boy Color. It was released in Japan on March 21, 2001; in North America on June 11, 2001; in Australia and Europe on June 22, 2001. It has a ARM7TDMI CPU at 16.78 MHz and a Zilog Z80 CPU at 8 MHz and 4 MHz. It has 32KB of RAM and 96KB of VRAM. <br />
<br />
==Emulators==<br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Latest Version<br />
! scope="col"|GB/GBC<br />
! scope="col"|GBA<br />
! scope="col"|NDS<br />
! scope="col"|Game Link Support<br />
! scope="col"|e-Reader<br />
! scope="col"|[[libretro|Libretro Core]]<br />
! scope="col"|Active<br />
! scope="col"|[[Recommended Emulators|Recommended]]<br />
|-<br />
!colspan="11"|PC /x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa>Experimental separate build under the name of [[mGBA#medusa|medusa]].</ref> ||{{✓}} ||{{✓}}<ref group=N name=ereader>Latest development build only</ref> ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[higan]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://byuu.org/emulation/higan/ {{higanVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|iDeaS<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://web.archive.org/web/20150311100053/http://ciacin.site90.com/ideas.php 1.0.4.0]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[GBE+]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://github.com/shonumi/gbe-plus {{GBEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[https://fms.komkon.org/VGBA VGBA]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://fms.komkon.org/VGBA {{VGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[MAME]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.mamedev.org/release.html {{MAMEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|Meteor<br />
|align=left|{{Icon|Linux}}<br />
|[https://github.com/blastrock/meteor 1.4.2]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|NanoboyAdvance<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://github.com/fleroviux/NanoboyAdvance Git]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
|[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|BoyCottAdvance<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://boycottadvance.emuunlim.org/Downloads.htm 0.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|PlayBoy Advance<br />
|align=left|{{Icon|macOS}}<br />
|[https://www.zophar.net/macintosh/gba/playboy-advance.html 1.0]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Mobile / ARM<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa /> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://www.explusalpha.com/ GBA.emu]<br/><small>(VBA-M r1097 based)</small><br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.explusalpha.GbaEmu 1.5.43]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://allaboutwindowsphone.com/software/content/VBA8_1.php VBA8]<br />
|align=left|{{Icon|W8P}}<br />
|[https://www.appx4fun.com/xap/15223/ 2.27]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}}<br />
|-<br />
|[https://forums.windowscentral.com/app-spotlight/252987-trio-nintendo-emulators-vba8-vgbc8-snes8x.html VBA10]<br />
|align=left|{{Icon|W10P}}<br />
|[https://forum.xda-developers.com/windows-10-mobile/windows-10-mobile-apps-and-games/app-vba10-emulator-t3588704 1.22]<br/>[https://emulator.games/emulators/gameboy-advance/vba10/ Alt]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|Pandora}}<br />
|[http://repo.openpandora.org/?page=detail&app=package.gpsp.notaz 0.9.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||? ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[https://sites.google.com/site/fastemulator/ My Boy!]<br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.fastemulator.gba 1.8.0]<br />
|{{✓}}<ref group=N name=myoldboy>Separate paid app called My OldBoy!.</ref> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|GBA4iOS<br />
|align=left|{{Icon|iOS}}<br />
|[https://iemulators.com/gba4ios v2.1]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{~}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Consoles<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Wii|Switch}}<br>{{Icon|3DS|PSV}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA emGBA]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://files.extremscorner.org/gamecube/apps/mgba/latest Git]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[gpSP#PSP_version|TempGBA4PSP]]<br />
|align=left|{{Icon|PSP}}<br />
|[http://www.mediafire.com/download/41ny5xrwxizalx4/TempGBA4PSP-26750221.zip 26750221]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-GX|VBA GX]]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://github.com/dborth/vbagx/releases 2.4.0]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<ref group=N>As VBA-Next.</ref> ||{{✓}} ||{{✓}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|PSP}}<br />
|0.9<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[Virtual Console]]<br />
|align=left|{{Icon|3DS|WiiU}}<br />
|8.10<br />
|{{✓}} <small>(Nintendo 3DS only)<small> ||{{✓}} ||{{✓}} <small>(Wii U only)<small> ||{{✓}} <small>(Pokemon only)</small> ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|}<br />
<references group=N /><br />
<br />
===Comparisons===<br />
;[[VisualBoy Advance|Visual Boy Advance (VBA)]]:The original GBA emulator. Has stopped development and lacks features compared to other offerings, it also has an <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability which was corrected in VBA-M.<br />
:;[[VisualBoy Advance#VBA-M|Visual Boy Advance-M (VBA-M)]]:A fork with additional improvements. The SVN1507 build is the only recommended one, as it is perfectly stable and is the best GBA emulator to date. VBA-M after the 2.0 releases became riddled with stability and performance problems.<br />
::;VBA-Next:A [[RetroArch]] fork from an older revision of VBA-M with added speedhacks and tweaks, making it useful for lower-end devices. A bit less accurate in some respects, but fixes a few games such as Advance Wars 2.<br />
;[[mGBA]]:Aims for accuracy, speed, and features. It's actively developed and has features VBA-M lacks such as a Tilt Sensor, and more recently Game Boy Camera support. Performance is still a problem, as it lacks support for the efficient DirectX APIs.<br />
;[[higan]]:Its GBA core is cycle-accurate as of v095, but it is behind in terms of performance compared to mGBA and VBA-M.<br />
;[[gpSP]]:Its last official version was 0.9. There are, however, two forks of interest: [http://dl.qj.net/psp/emulators/gpsp-mod-20090720.html gpSPmod], and [http://filetrip.net/psp-downloads/homebrew/download-gpsp-j-12-06-16-f29570.htmlgpSP-J gpSP-J]. gpSP-J has superior compatibility, while gpSPmod has more options for customization (full screen, cheats, etc). Both are superior to Kai.<br />
;[[MAME]]:Has a <code>gba</code> driver markup as working but both graphics and sound are "imperfect".<br />
<br />
'''NOTE:''' There's a ''huge'' <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability affecting VBA and most of its forks, except for VBA-M. The function for adding GameShark codes ("Import > Gameshark code file") doesn't check if the file's size is within 1024 kilobits, meaning cheat code files from dubious sources can be engineered with malware in mind. There is good news; VBA-M still doesn't do a sanity check for those files, but it just crashes instead of letting the code wreak havoc. So, depending on your use case, avoid using:<br />
# Cheat code files bigger than 1024Kb that you got online from untrustworthy sources.<br />
# The import code files feature.<br />
# The old emulator altogether, and settle for other options like mGBA or VBA-M. All of them support the same SRAM save data the cartridge uses.<br />
<br />
'''List of recommended GBA emulators for Android:'''<br />
* [https://www.androidauthority.com/best-game-boy-emulators-for-android-368530/ 10 best Game Boy Advanced, Game Boy Color, and Game Boy emulators for Android] (SEPTEMBER 2, 2018. Includes some emulators not found in above charts. Reviews may be subjective.)<br />
<br />
==Emulation issues==<br />
<br />
===Oversaturation===<br />
[[File:1406913527173-1-.png|400px|thumb|right|'''Left:''' The default game.<br/>'''Right:''' The "Gameboy Colors" mode on [[VisualBoy Advance#VBA-M|VBA-M]].]]<br />
The screen on the original Game Boy Advance is not backlit and can be hard to see in some conditions. To compensate, game developers often used oversaturated colors by default so that the result would look normal on hardware. On standard computer screens, saturation is not an issue so this can look jarring and undesirable for gameplay. Some games made after 2003 may have also taken the Game Boy Advance SP <abbr title="AGS-001">model</abbr> into account since its screen was actually <abbr title="A newer model, AGS-101, was released in 2005 that was actually backlit">frontlit</abbr>. For everything else though, emudevs have given some solutions:<br />
<br />
====Emulator Options====<br />
'''No$GBA:''' Under "Emulation Options", select "GBA Mode". There are four modes.<br />
<br />
* '''GBA (no backlight):''' Strong desaturation<br />
* '''GBA SP (backlight):''' Strong desaturation<br />
* '''Nintendo DS in GBA mode:''' Some desaturation<br />
* '''VGA Mode (poppy bright):''' No desaturation<br />
<br />
'''VBA-M''': Only applies to Windows. Under Options > Gameboy, you will find the options:<br />
<br />
* '''"Real Colors":''' No desaturation<br />
* '''"Gameboy Colors":''' Strong desaturation<br />
<br />
'''higan:''' Under Settings > Video Filter, you will find the "Color Emulation" checkbox.<br />
<br />
* '''Color Emulation off:''' No desaturation<br />
* '''Color Emulation on:''' Gamma correction and adjusted color range.<br />
<br />
====Shaders====<br />
Cg [[Shaders and Filters|shaders]] can be used in [[OpenEmu]] or [[RetroArch]] that adjust the colors to those of a real GBA screen, as well as other screen types. These are available in GLSL<ref name="GLSL">https://github.com/libretro/glsl-shaders/tree/master/handheld/shaders/color</ref> for OpenGL, and Slang<ref name="Slang">https://github.com/libretro/slang-shaders/tree/master/handheld/shaders/color</ref> for Vulkan.<br />
<br />
For GBA, there is <code>gba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/gba-color.cg</ref>, which simulates the color profile of a GBA screen under an external light source more accurately than VBA-M or No$GBA color options. If you prefer the darker color options that those emulators have, then use <code>vba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/vba-color.cg</ref> instead. <br />
<br />
There is also <code>nds-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/nds-color.cg</ref> and <code>psp-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/psp-color.cg</ref>, which simulates the color profiles of the original Nintendo DS frontlit screen and the PSP-1000/PSP-2000 backlit screen, respectively.<br />
<br />
===Horrible Sound Quality===<br />
As a handheld rushed to the market (because of the WonderSwan Color competition), the Game Boy Advance had some cut corners. The sound hardware was affected the hardest: while it could play Game Boy Color sound in addition to samples and sequenced music like what would be heard on the SNES, the actual sound playback quality is awful compared to the actual higher quality sound samples stored internally in the ROM.<br />
<br />
There were [https://www.romhacking.net/utilities/881/ tools] made to extract the internal high quality music (as midi files plus a sound font, to be played on foobar2000), however interest remains limited in implementing its playback in real time on emulators. It's worth noting it exists as a very experimental feature on [[mGBA]] (nightly versions) under Enhancements as "XQ GBA Audio", but very buggy and still limited to games using the standard sound engine, the so-called "Sappy" engine, which is still a big part of the GBA's software library.<br />
<br />
===High Resolution Affine Transformation Graphical Effects===<br />
Similar to the scaling effects used on the Super NES known commonly as "Mode 7" graphics, the Game Boy Advance has affine transformation effects for some backgrounds and individual sprites that can be done in hardware. Due to the GBA's lower resolution, some detail may be lost.<br />
<br />
The [[mGBA]] emulator added an Enhancements menu where you can change the resolution of those graphical effects, for a smoother effect. The graphical render engine will need to be OpenGL for those to take effect. It won't work on games where those effects are done in software instead of the hardware scaling features (like the 3D environment in Asterix & Obelix XXL)<br />
<br />
===Save formats===<br />
Originally, when saves were implemented, nobody settled on a format, so the Visual Boy Advance devs made its own. Because other emulators often went with raw data, having to exchange different saves caused problems. The original Visual Boy Advance tries to figure out which format a given save is but often fails at it. By explicitly telling the emulator to read it as a specific type using a file called <code>vba-over.ini</code>, VBA complies. VBA-M includes this config file by default, but older revisions like VBA 1.7.2 and VBALink do not.<br />
<br />
The VBA-Next and VBA-M cores in Libretro have the file baked into the binary so that it can load raw .sav files, but converts the format to its own derivative at exactly 136 KB every time, with save type info contained within the file. This completely avoids the previous issues at the cost of incompatibility with standalone VBA and most others.<br />
<br />
To solve this incompatibility, Libretro devs created a <br />
[https://github.com/libretro/vbam-libretro/blob/master/src/libretro/gbaconv/gbaconv.c command-line tool] to convert .srm save files made from these cores to raw .sav save data for other emulators. It takes standard input (i.e. just drag and drop the .srm onto the executable) and outputs accordingly. It can also be done in reverse. A 64-bit binary of this tool for Windows can be found <br />
[https://www.mediafire.com/?6bg8ag0bjs1b7ng here].<br />
<br />
==Connectivity==<br />
There are five different kinds of connectivity, support varying by game:<br />
*Single Pak<br />
*Multi Pak<br />
*Wireless<br />
*GameCube<br />
*Nintendo DS<br />
Purple end in GBA means player 1, while a grey end in GBA means P2, P3, or P4. Daisy chaining up to three cables will set up the additional P3 and P4 by connecting the purple end to a purple mid section.<ref>https://www.nintendo.com/consumer/downloads/agblink.pdf</ref><br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Supported Version<br />
! scope="col"|Single Pak<br />
! scope="col"|Multi Pak<br />
! scope="col"|Wireless<br />
! scope="col"|GameCube<br />
! scope="col"|Nintendo DS<br />
|-<br />
!colspan="8"|PC / x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
|[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[DeSmuME]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://ci.appveyor.com/project/zeromus/desmume {{DeSmuMEVer}}]<br />
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|}<br />
===GBA Mutli Pak Link Multiplayer (1~4GBA)===<br />
;VBA-M: This doesn't work with old VBA versions.<br />
:Just disable "Pause when Inactive", configure all four Joypads each with their own button layout, enable "Link, Enable GBA Link". Now open VBA-M again as many times needed for each player, and have them each use their separate Joypad configuration. Each player will have a separate SRAM save file.<br />
;VBA Link + e-Reader:Useful if you want to use the Pokémon Battle-eCards. Downloads and instructions reside [http://projectpokemon.org/forums/showthread.php?42433-RELEASE-VBA-LINK-E-READER here].<br />
;mGBA:Select "New multiplayer window" from the menu. As you load your ROMs into each window, "Player [X] of [Y]" will appear across the title bar. This can be done for up to four players. However, multiple instances of the same ROM will share a save file.<br />
;No$GBA:Set the number of Emulated Gameboys in the Emulation setting to be 2 or more, and the Link Gamepaks Options to Gamepak in all GBAs.<br />
<br />
===GBA Wireless Multiplayer===<br />
The [[Wikipedia:Game Boy Advance Wireless Adapter|wireless adapter]] has the ability to connect five players<ref>https://www.nintendo.com/consumer/downloads/agbwireless_trilingual.pdf</ref> to each other and includes its own software to download a subset of another player's game that runs when no cartridge is inserted. ''Pokémon Fire Red'' and ''Leaf Green'' came bundled with this accessory but it can also work with ''Pokémon Emerald'' and the ''Classic NES Series''.<br />
<br />
No emulator has currently implemented this add-on. The only project whose developers put this on its roadmap is [[mGBA]].<br />
<br />
===GameCube Connectivity===<br />
The Game Boy Advance can also connect to the GameCube.<ref>https://www.nintendo.com/consumer/downloads/agbgcncable.pdf</ref> e-Reader functionality with GC games isn't emulated as of yet, but [[Dolphin]] supports connectivity through rudimentary joybus emulation made in parallel with VBA-M. Because this emulator has fallen behind, the Dolphin team is currently rewriting the feature from scratch to better interface with more accurate emulators. They showcased early higan support in a video, but nothing has been released as of yet.<br />
<br />
====Dolphin/VBA-M====<br />
:''Requires VBA-M r947 or newer.''<br />
<br />
# Reduce your volume. You won't want it to be high, especially with headphones.<br />
# Open Dolphin and VBA-M. Make sure neither are blocked by your firmware.<br />
# In Dolphin, launch the game and navigate to the area where you're asked to connect the GBA. Then, under the controller options, assign the GameCube controllers as "GBA" for whichever you need.<br />
# In VBA-M, uncheck Pause When Inactive in Options > Emulator. Then, under Options > Link > Joybus Options, Make sure to "Enable Joybus Connection" is on and set "IP/Hostname" to use default settings, that is <code>127.0.0.1</code> or <code>localhost</code>.<br />
# Dolphin will freeze.<br />
# Open the GBA BIOS in VBA-M as if it were a regular GBA ROM. The regular splash screen will stutter a bit.<br />
# Dolphin should recognize the Joybus Link by then and the GC game will detect that a GBA was connected.<br />
# To connect other units, open another VBA-M instance and repeat its process.<br />
<br />
Notable games that work:<br />
*[https://wiki.dolphin-emu.org/index.php?title=The_Legend_of_Zelda:_Four_Swords_Adventures The Legend of Zelda Four Swords Adventures]: Both two modes available for the US/PAL version work. The third Japan-only Navi Trackers mode works as well, but the game crashes after the naming screen due to a bug in the GC/GBA connectivity.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Final_Fantasy_Crystal_Chronicles Final Fantasy Crystal Chronicles]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Billy_Hatcher_and_the_Giant_Egg Billy Hatcher and the Giant Egg]: You can download games to your GBA. Amusingly, a RAM dump from VBA-M can be opened as a functional GBA ROM.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Kururin_Squash! Kururin Squash!]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Sonic_Adventure_2:_Battle Sonic Adventure 2: Battle] (buggy)<br />
<br />
Notable games that don't:<br />
*[https://wiki.dolphin-emu.org/index.php?title=Mr_Driller:_Drill_Land Mr. Driller: Drill Land]<br />
*lots more<br />
<br />
===GBA/DS Connectivity===<br />
:''Main section: [[Nintendo_DS_emulators#GBA.2FDS_Connectivity|Nintendo DS § GBA/DS Connectivity]]''<br />
<br />
===e-Reader===<br />
:''Main page: [[GBA e-Reader emulators]]''<br />
This device can read content off e-Card paper stripes either as standalone content, or additional content to GBA/GC games. Can be thought of as DLC.<br />
<br />
==Special Hardware==<br />
Most of these have not been emulated as of yet. There used to be patches that could be applied to GBA ROMs with a utility like Lunar IPS (mostly from [http://bubbz.pocketheaven.com/?system=gba&section=patch No Frills]), but they're for the most part lost to time nowadays. Your best bet is to use Action Replay to emulate those.<br />
<br />
===Solar Sensor===<br />
====Emulation====<br />
This feature has been emulated in mGBA, VBA-M, No$GBA 2.6 onwards, and My Boy!:<br />
* VBA-M: This emulator uses the keys of the lateral motion controls to change the Solar Sensor levels. You can find those keys and modify them in Options -> Input -> Configure... -> "Special" tab.<br />
* mGBA: In the shortcuts editor, shortcuts can be configured to raise/lower the solar level incrementally or to set any particular brightness level. <br />
* No$GBA: Under '''Options/Emulation Setup''', you can find the Solar Sensor Level option. You are given the choice between only three brightness levels though: Darkness, 100 Watts, and Bright Sunlight.<br />
* My Boy! This emulator uses a button combination or the devices light sensor to check the brightness level. You can change this under Settings -> Input -> Cartridge Features -> "Solar Emulation By" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM by various scene release groups to make it compatible with any emulator/flashcard, making the in-game brightness level controllable with L+Left/Right. It's argued this makes for a better experience actually, but sadly not all releases are covered.<br />
* '''Boktai 1:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1145 US], <s>EU</s>.<br />
* '''Boktai 2:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], <s>US</s>, [http://www.advanscene.com/html/Releases/dbreleases.php?id=1992 EU]. <br />
* '''Boktai 3:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=2048 JP Fix].<br />
* Combinations of Boktai 4 JP with earlier solar sensors to get solar sensor bonuses aren't emulated yet in any DS emulator.<br />
<br />
===Motion Control===<br />
VBA-M has an option for Motion controls "Input, Set, Motion". It currently works with all versions of the GBC title Kirby Tilt'n Tumble, which also was a special cartridge with a motion sensor built-in to control movement in-game. But VBA-M does not support motion controls for GBA games yet.<br />
====Emulation====<br />
* VBA '''doesn't''' emulate this feature, and its "Motion Control" option (with keys mapped to each tilt direction) covers the GBC title Kirby Tilt'n Tumble.<br />
* mGBA supposedly includes this feature but key remapping for tilt sensors is not present in the latest builds.<br />
* My Boy! uses the device's accelerometer to emulate this feature. You can change the sensitivity under Settings -> Input -> Cartridge Features -> "Motion sensitivity" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM (with the Lunar IPS utility, or at runtime using mGBA or VBA-M and naming them the same as the ROM in the same directory) by various scene release groups to make it compatible with any emulator/flashcard. D-Pad controls substituting motion controls don't work as well here as they tilt it "too much" at times to be very playable.<br />
* Yoshi Topsy Turvy/Universal Gravitation: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1799 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1947 EU], [http://www.advanscene.com/html/Releases/dbreleases.php?id=2001 US]<br />
* WarioWare Twisted! (Patch: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1682 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1979 US])<br />
<br />
===Rumble Feature===<br />
There are various rumble features found in GBA/GBC cards:<br />
* '''GBC Rumble:''' GBC games which came on special cartridges with additional hardware for the rumble feature. It was actually used by dozens of releases, and some games like Tarzan 2 GBC were programmed to have rumble support but shipped on regular cartridges. Emulated by VBA-M GX (Wii-only), which also cover the dummied-out rumble games. Not emulated anywhere else.<br />
* '''GBA Gyro Rumble:''' WarioWare Twisted was shipped on a cart with rumble support. It would rumble when you tilt to one "extreme". Emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds, <br />
* '''GBA Variable Rumble:''' Drill Dozer has rumble support, with variable force and speed depending on the rock type you drill through in-game. Partially emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds.<br />
* '''Game Boy Player Rumble:''' Many regular GBA games, shipped on regular cartridges, enable rumble during gameplay when played on GB Player hardware (which is essentially GBA hardware). These include Super Mario Advance 4, Summon Night Hajimari no Ishi, Mario & Luigi 1, Shikakui Atama wo Marukusuru Advance (both releases), Pokémon Pinball, as well as Drill Dozer which disables its original cartridge rumble scheme and enables this one instead. None of the emulators support this, though it's being under development for the mGBA emulator.<br />
<br />
===Figurine Readers===<br />
* '''Figurine Add-on:''' Legendz: Isle Of Trials, Legendz: Sign Of Necromu, Plaston Gate ([http://www.advanscene.com/html/Releases/dbreleases.php?id=1020 Fix]), Plaston Gate DX ([http://www.advanscene.com/html/Releases/dbreleases.php?id=2006 Fix]). The add-on is essentially Skylanders before it became popular.<br />
<br />
[[mGBA]] (dev channel only) and [[GBE+]] partially support the add-on used for the Legendz series.<br />
<br />
===BattleChip Gate===<br />
An peripheral device by Capcom and Takara compatible with ''Mega Man Battle Network 4'' (Japanese edition). It can be connected to the Game Boy Advance and allow the player to transmit real-life toy Battle Chips to the NetNavis in the game. It's also compatible with toy Advanced PETs and ''Rockman.EXE 4.5 Real Operation''. It can also unlock minigames in ''Mega Man Zero 3''.<br />
<br />
[[mGBA]] and [[GBE+]] partially support this add-on.<br />
<br />
===Glucoboy===<br />
* '''Glucoboy:''' An obscure medical peripheral designed to monitor a child's blood glucose levels and reward them for keeping tabs on their condition. No known emulator supports this so far, especially given the niche nature of this accessory. Not to mention that [https://assemblergames.com/threads/glucoboy-for-gameboy-is-this-the-rarest-game-accessory-for-gameboy-advance.41853/page-2 Bayer Healthcare destroyed all unsold stock] making it hard to find.<br />
<br />
==References==<br />
{{reflist|2}}<br />
<br />
<br />
{{Nintendo}}<br />
<br />
[[Category:Consoles]]<br />
[[Category:Nintendo consoles]]<br />
[[Category:Sixth-generation video game consoles]]<br />
[[Category:Game Boy Advance emulators|*]]</div>172.68.25.172https://emulation.gametechwiki.com/index.php?title=Game_Boy_Advance_emulators&diff=34624Game Boy Advance emulators2020-08-01T16:31:45Z<p>172.68.25.172: /* Emulators */</p>
<hr />
<div>{{Infobox console<br />
|title = Nintendo Game Boy Advance<br />
|logo = gbagba.png<br />
|developer = [[:Nintendo]]<br />
|type = [[:Category:Consoles|Handheld game console]]<br />
|generation = [[:Category:Sixth-generation video game consoles|Sixth generation]]<br />
|release = 2001<br />
|discontinued = 2010<br />
|predecessor = [[Virtual Boy emulators|Virtual Boy]]<br />
|successor = [[Nintendo DS emulators|Nintendo DS]]<br />
|emulated = {{✓}}<br />
}}<br />
The '''[[wikipedia:Game_Boy_Advance|Game Boy Advance]]''' (often shortened to GBA) is a 32-bit handheld video game console developed by Nintendo. It is the successor to the Game Boy Color. It was released in Japan on March 21, 2001; in North America on June 11, 2001; in Australia and Europe on June 22, 2001. It has a ARM7TDMI CPU at 16.78 MHz and a Zilog Z80 CPU at 8 MHz and 4 MHz. It has 32KB of RAM and 96KB of VRAM. <br />
<br />
==Emulators==<br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Latest Version<br />
! scope="col"|GB/GBC<br />
! scope="col"|GBA<br />
! scope="col"|NDS<br />
! scope="col"|Game Link Support<br />
! scope="col"|e-Reader<br />
! scope="col"|[[libretro|Libretro Core]]<br />
! scope="col"|Active<br />
! scope="col"|[[Recommended Emulators|Recommended]]<br />
|-<br />
!colspan="11"|PC /x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa>Experimental separate build under the name of [[mGBA#medusa|medusa]].</ref> ||{{✓}} ||{{✓}}<ref group=N name=ereader>Latest development build only</ref> ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[higan]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://byuu.org/emulation/higan/ {{higanVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|iDeaS<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://web.archive.org/web/20150311100053/http://ciacin.site90.com/ideas.php 1.0.4.0]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[GBE+]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://github.com/shonumi/gbe-plus {{GBEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[https://fms.komkon.org/VGBA VGBA]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://fms.komkon.org/VGBA {{VGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[MAME]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.mamedev.org/release.html {{MAMEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|Meteor<br />
|align=left|{{Icon|Linux}}<br />
|[https://github.com/blastrock/meteor 1.4.2]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|NanoboyAdvance<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://github.com/fleroviux/NanoboyAdvance Git]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
|[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|BoyCottAdvance<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://boycottadvance.emuunlim.org/Downloads.htm 0.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|PlayBoy Advance<br />
|align=left|{{Icon|macOS}}<br />
|[https://www.zophar.net/macintosh/gba/playboy-advance.html 1.0]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Mobile / ARM<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa /> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://www.explusalpha.com/ GBA.emu]<br/><small>(VBA-M r1097 based)</small><br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.explusalpha.GbaEmu 1.5.43]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://allaboutwindowsphone.com/software/content/VBA8_1.php VBA8]<br />
|align=left|{{Icon|W8P}}<br />
|[https://www.appx4fun.com/xap/15223/ 2.27]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}}<br />
|-<br />
|[https://forums.windowscentral.com/app-spotlight/252987-trio-nintendo-emulators-vba8-vgbc8-snes8x.html VBA10]<br />
|align=left|{{Icon|W10P}}<br />
|[https://forum.xda-developers.com/windows-10-mobile/windows-10-mobile-apps-and-games/app-vba10-emulator-t3588704 1.22]<br/>[https://emulator.games/emulators/gameboy-advance/vba10/ Alt]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|Pandora}}<br />
|[http://repo.openpandora.org/?page=detail&app=package.gpsp.notaz 0.9.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://github.com/visualboyadvance-m/visualboyadvance-m v2.0.1]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||? ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[https://sites.google.com/site/fastemulator/ My Boy!]<br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.fastemulator.gba 1.8.0]<br />
|{{✓}}<ref group=N name=myoldboy>Separate paid app called My OldBoy!.</ref> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|GBA4iOS<br />
|align=left|{{Icon|iOS}}<br />
|[https://iemulators.com/gba4ios v2.1]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{~}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Consoles<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Wii|Switch}}<br>{{Icon|3DS|PSV}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA emGBA]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://files.extremscorner.org/gamecube/apps/mgba/latest Git]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[gpSP#PSP_version|TempGBA4PSP]]<br />
|align=left|{{Icon|PSP}}<br />
|[http://www.mediafire.com/download/41ny5xrwxizalx4/TempGBA4PSP-26750221.zip 26750221]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-GX|VBA GX]]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://github.com/dborth/vbagx/releases 2.4.0]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<ref group=N>As VBA-Next.</ref> ||{{✓}} ||{{✓}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|PSP}}<br />
|0.9<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[Virtual Console]]<br />
|align=left|{{Icon|3DS|WiiU}}<br />
|8.10<br />
|{{✓}} <small>(Nintendo 3DS only)<small> ||{{✓}} ||{{✓}} <small>(Wii U only)<small> ||{{✓}} <small>(Pokemon only)</small> ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|}<br />
<references group=N /><br />
<br />
===Comparisons===<br />
;[[VisualBoy Advance|Visual Boy Advance (VBA)]]:The original GBA emulator. Has stopped development and lacks features compared to other offerings, it also has an <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability which was corrected in VBA-M.<br />
:;[[VisualBoy Advance#VBA-M|Visual Boy Advance-M (VBA-M)]]:A fork with additional improvements. The SVN1507 build is the only recommended one, as it is perfectly stable and is the best GBA emulator to date. VBA-M after the 2.0 releases became riddled with stability and performance problems.<br />
::;VBA-Next:A [[RetroArch]] fork from an older revision of VBA-M with added speedhacks and tweaks, making it useful for lower-end devices. A bit less accurate in some respects, but fixes a few games such as Advance Wars 2.<br />
;[[mGBA]]:Aims for accuracy, speed, and features. It's actively developed and has features VBA-M lacks such as a Tilt Sensor, and more recently Game Boy Camera support. Performance is still a problem, as it lacks support for the efficient DirectX APIs.<br />
;[[higan]]:Its GBA core is cycle-accurate as of v095, but it is behind in terms of performance compared to mGBA and VBA-M.<br />
;[[gpSP]]:Its last official version was 0.9. There are, however, two forks of interest: [http://dl.qj.net/psp/emulators/gpsp-mod-20090720.html gpSPmod], and [http://filetrip.net/psp-downloads/homebrew/download-gpsp-j-12-06-16-f29570.htmlgpSP-J gpSP-J]. gpSP-J has superior compatibility, while gpSPmod has more options for customization (full screen, cheats, etc). Both are superior to Kai.<br />
;[[MAME]]:Has a <code>gba</code> driver markup as working but both graphics and sound are "imperfect".<br />
<br />
'''NOTE:''' There's a ''huge'' <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability affecting VBA and most of its forks, except for VBA-M. The function for adding GameShark codes ("Import > Gameshark code file") doesn't check if the file's size is within 1024 kilobits, meaning cheat code files from dubious sources can be engineered with malware in mind. There is good news; VBA-M still doesn't do a sanity check for those files, but it just crashes instead of letting the code wreak havoc. So, depending on your use case, avoid using:<br />
# Cheat code files bigger than 1024Kb that you got online from untrustworthy sources.<br />
# The import code files feature.<br />
# The old emulator altogether, and settle for other options like mGBA or VBA-M. All of them support the same SRAM save data the cartridge uses.<br />
<br />
'''List of recommended GBA emulators for Android:'''<br />
* [https://www.androidauthority.com/best-game-boy-emulators-for-android-368530/ 10 best Game Boy Advanced, Game Boy Color, and Game Boy emulators for Android] (SEPTEMBER 2, 2018. Includes some emulators not found in above charts. Reviews may be subjective.)<br />
<br />
==Emulation issues==<br />
<br />
===Oversaturation===<br />
[[File:1406913527173-1-.png|400px|thumb|right|'''Left:''' The default game.<br/>'''Right:''' The "Gameboy Colors" mode on [[VisualBoy Advance#VBA-M|VBA-M]].]]<br />
The screen on the original Game Boy Advance is not backlit and can be hard to see in some conditions. To compensate, game developers often used oversaturated colors by default so that the result would look normal on hardware. On standard computer screens, saturation is not an issue so this can look jarring and undesirable for gameplay. Some games made after 2003 may have also taken the Game Boy Advance SP <abbr title="AGS-001">model</abbr> into account since its screen was actually <abbr title="A newer model, AGS-101, was released in 2005 that was actually backlit">frontlit</abbr>. For everything else though, emudevs have given some solutions:<br />
<br />
====Emulator Options====<br />
'''No$GBA:''' Under "Emulation Options", select "GBA Mode". There are four modes.<br />
<br />
* '''GBA (no backlight):''' Strong desaturation<br />
* '''GBA SP (backlight):''' Strong desaturation<br />
* '''Nintendo DS in GBA mode:''' Some desaturation<br />
* '''VGA Mode (poppy bright):''' No desaturation<br />
<br />
'''VBA-M''': Only applies to Windows. Under Options > Gameboy, you will find the options:<br />
<br />
* '''"Real Colors":''' No desaturation<br />
* '''"Gameboy Colors":''' Strong desaturation<br />
<br />
'''higan:''' Under Settings > Video Filter, you will find the "Color Emulation" checkbox.<br />
<br />
* '''Color Emulation off:''' No desaturation<br />
* '''Color Emulation on:''' Gamma correction and adjusted color range.<br />
<br />
====Shaders====<br />
Cg [[Shaders and Filters|shaders]] can be used in [[OpenEmu]] or [[RetroArch]] that adjust the colors to those of a real GBA screen, as well as other screen types. These are available in GLSL<ref name="GLSL">https://github.com/libretro/glsl-shaders/tree/master/handheld/shaders/color</ref> for OpenGL, and Slang<ref name="Slang">https://github.com/libretro/slang-shaders/tree/master/handheld/shaders/color</ref> for Vulkan.<br />
<br />
For GBA, there is <code>gba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/gba-color.cg</ref>, which simulates the color profile of a GBA screen under an external light source more accurately than VBA-M or No$GBA color options. If you prefer the darker color options that those emulators have, then use <code>vba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/vba-color.cg</ref> instead. <br />
<br />
There is also <code>nds-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/nds-color.cg</ref> and <code>psp-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/psp-color.cg</ref>, which simulates the color profiles of the original Nintendo DS frontlit screen and the PSP-1000/PSP-2000 backlit screen, respectively.<br />
<br />
===Horrible Sound Quality===<br />
As a handheld rushed to the market (because of the WonderSwan Color competition), the Game Boy Advance had some cut corners. The sound hardware was affected the hardest: while it could play Game Boy Color sound in addition to samples and sequenced music like what would be heard on the SNES, the actual sound playback quality is awful compared to the actual higher quality sound samples stored internally in the ROM.<br />
<br />
There were [https://www.romhacking.net/utilities/881/ tools] made to extract the internal high quality music (as midi files plus a sound font, to be played on foobar2000), however interest remains limited in implementing its playback in real time on emulators. It's worth noting it exists as a very experimental feature on [[mGBA]] (nightly versions) under Enhancements as "XQ GBA Audio", but very buggy and still limited to games using the standard sound engine, the so-called "Sappy" engine, which is still a big part of the GBA's software library.<br />
<br />
===High Resolution Affine Transformation Graphical Effects===<br />
Similar to the scaling effects used on the Super NES known commonly as "Mode 7" graphics, the Game Boy Advance has affine transformation effects for some backgrounds and individual sprites that can be done in hardware. Due to the GBA's lower resolution, some detail may be lost.<br />
<br />
The [[mGBA]] emulator added an Enhancements menu where you can change the resolution of those graphical effects, for a smoother effect. The graphical render engine will need to be OpenGL for those to take effect. It won't work on games where those effects are done in software instead of the hardware scaling features (like the 3D environment in Asterix & Obelix XXL)<br />
<br />
===Save formats===<br />
Originally, when saves were implemented, nobody settled on a format, so the Visual Boy Advance devs made its own. Because other emulators often went with raw data, having to exchange different saves caused problems. The original Visual Boy Advance tries to figure out which format a given save is but often fails at it. By explicitly telling the emulator to read it as a specific type using a file called <code>vba-over.ini</code>, VBA complies. VBA-M includes this config file by default, but older revisions like VBA 1.7.2 and VBALink do not.<br />
<br />
The VBA-Next and VBA-M cores in Libretro have the file baked into the binary so that it can load raw .sav files, but converts the format to its own derivative at exactly 136 KB every time, with save type info contained within the file. This completely avoids the previous issues at the cost of incompatibility with standalone VBA and most others.<br />
<br />
To solve this incompatibility, Libretro devs created a <br />
[https://github.com/libretro/vbam-libretro/blob/master/src/libretro/gbaconv/gbaconv.c command-line tool] to convert .srm save files made from these cores to raw .sav save data for other emulators. It takes standard input (i.e. just drag and drop the .srm onto the executable) and outputs accordingly. It can also be done in reverse. A 64-bit binary of this tool for Windows can be found <br />
[https://www.mediafire.com/?6bg8ag0bjs1b7ng here].<br />
<br />
==Connectivity==<br />
There are five different kinds of connectivity, support varying by game:<br />
*Single Pak<br />
*Multi Pak<br />
*Wireless<br />
*GameCube<br />
*Nintendo DS<br />
Purple end in GBA means player 1, while a grey end in GBA means P2, P3, or P4. Daisy chaining up to three cables will set up the additional P3 and P4 by connecting the purple end to a purple mid section.<ref>https://www.nintendo.com/consumer/downloads/agblink.pdf</ref><br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Supported Version<br />
! scope="col"|Single Pak<br />
! scope="col"|Multi Pak<br />
! scope="col"|Wireless<br />
! scope="col"|GameCube<br />
! scope="col"|Nintendo DS<br />
|-<br />
!colspan="8"|PC / x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
|[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[DeSmuME]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://ci.appveyor.com/project/zeromus/desmume {{DeSmuMEVer}}]<br />
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|}<br />
===GBA Mutli Pak Link Multiplayer (1~4GBA)===<br />
;VBA-M: This doesn't work with old VBA versions.<br />
:Just disable "Pause when Inactive", configure all four Joypads each with their own button layout, enable "Link, Enable GBA Link". Now open VBA-M again as many times needed for each player, and have them each use their separate Joypad configuration. Each player will have a separate SRAM save file.<br />
;VBA Link + e-Reader:Useful if you want to use the Pokémon Battle-eCards. Downloads and instructions reside [http://projectpokemon.org/forums/showthread.php?42433-RELEASE-VBA-LINK-E-READER here].<br />
;mGBA:Select "New multiplayer window" from the menu. As you load your ROMs into each window, "Player [X] of [Y]" will appear across the title bar. This can be done for up to four players. However, multiple instances of the same ROM will share a save file.<br />
;No$GBA:Set the number of Emulated Gameboys in the Emulation setting to be 2 or more, and the Link Gamepaks Options to Gamepak in all GBAs.<br />
<br />
===GBA Wireless Multiplayer===<br />
The [[Wikipedia:Game Boy Advance Wireless Adapter|wireless adapter]] has the ability to connect five players<ref>https://www.nintendo.com/consumer/downloads/agbwireless_trilingual.pdf</ref> to each other and includes its own software to download a subset of another player's game that runs when no cartridge is inserted. ''Pokémon Fire Red'' and ''Leaf Green'' came bundled with this accessory but it can also work with ''Pokémon Emerald'' and the ''Classic NES Series''.<br />
<br />
No emulator has currently implemented this add-on. The only project whose developers put this on its roadmap is [[mGBA]].<br />
<br />
===GameCube Connectivity===<br />
The Game Boy Advance can also connect to the GameCube.<ref>https://www.nintendo.com/consumer/downloads/agbgcncable.pdf</ref> e-Reader functionality with GC games isn't emulated as of yet, but [[Dolphin]] supports connectivity through rudimentary joybus emulation made in parallel with VBA-M. Because this emulator has fallen behind, the Dolphin team is currently rewriting the feature from scratch to better interface with more accurate emulators. They showcased early higan support in a video, but nothing has been released as of yet.<br />
<br />
====Dolphin/VBA-M====<br />
:''Requires VBA-M r947 or newer.''<br />
<br />
# Reduce your volume. You won't want it to be high, especially with headphones.<br />
# Open Dolphin and VBA-M. Make sure neither are blocked by your firmware.<br />
# In Dolphin, launch the game and navigate to the area where you're asked to connect the GBA. Then, under the controller options, assign the GameCube controllers as "GBA" for whichever you need.<br />
# In VBA-M, uncheck Pause When Inactive in Options > Emulator. Then, under Options > Link > Joybus Options, Make sure to "Enable Joybus Connection" is on and set "IP/Hostname" to use default settings, that is <code>127.0.0.1</code> or <code>localhost</code>.<br />
# Dolphin will freeze.<br />
# Open the GBA BIOS in VBA-M as if it were a regular GBA ROM. The regular splash screen will stutter a bit.<br />
# Dolphin should recognize the Joybus Link by then and the GC game will detect that a GBA was connected.<br />
# To connect other units, open another VBA-M instance and repeat its process.<br />
<br />
Notable games that work:<br />
*[https://wiki.dolphin-emu.org/index.php?title=The_Legend_of_Zelda:_Four_Swords_Adventures The Legend of Zelda Four Swords Adventures]: Both two modes available for the US/PAL version work. The third Japan-only Navi Trackers mode works as well, but the game crashes after the naming screen due to a bug in the GC/GBA connectivity.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Final_Fantasy_Crystal_Chronicles Final Fantasy Crystal Chronicles]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Billy_Hatcher_and_the_Giant_Egg Billy Hatcher and the Giant Egg]: You can download games to your GBA. Amusingly, a RAM dump from VBA-M can be opened as a functional GBA ROM.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Kururin_Squash! Kururin Squash!]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Sonic_Adventure_2:_Battle Sonic Adventure 2: Battle] (buggy)<br />
<br />
Notable games that don't:<br />
*[https://wiki.dolphin-emu.org/index.php?title=Mr_Driller:_Drill_Land Mr. Driller: Drill Land]<br />
*lots more<br />
<br />
===GBA/DS Connectivity===<br />
:''Main section: [[Nintendo_DS_emulators#GBA.2FDS_Connectivity|Nintendo DS § GBA/DS Connectivity]]''<br />
<br />
===e-Reader===<br />
:''Main page: [[GBA e-Reader emulators]]''<br />
This device can read content off e-Card paper stripes either as standalone content, or additional content to GBA/GC games. Can be thought of as DLC.<br />
<br />
==Special Hardware==<br />
Most of these have not been emulated as of yet. There used to be patches that could be applied to GBA ROMs with a utility like Lunar IPS (mostly from [http://bubbz.pocketheaven.com/?system=gba&section=patch No Frills]), but they're for the most part lost to time nowadays. Your best bet is to use Action Replay to emulate those.<br />
<br />
===Solar Sensor===<br />
====Emulation====<br />
This feature has been emulated in mGBA, VBA-M, No$GBA 2.6 onwards, and My Boy!:<br />
* VBA-M: This emulator uses the keys of the lateral motion controls to change the Solar Sensor levels. You can find those keys and modify them in Options -> Input -> Configure... -> "Special" tab.<br />
* mGBA: In the shortcuts editor, shortcuts can be configured to raise/lower the solar level incrementally or to set any particular brightness level. <br />
* No$GBA: Under '''Options/Emulation Setup''', you can find the Solar Sensor Level option. You are given the choice between only three brightness levels though: Darkness, 100 Watts, and Bright Sunlight.<br />
* My Boy! This emulator uses a button combination or the devices light sensor to check the brightness level. You can change this under Settings -> Input -> Cartridge Features -> "Solar Emulation By" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM by various scene release groups to make it compatible with any emulator/flashcard, making the in-game brightness level controllable with L+Left/Right. It's argued this makes for a better experience actually, but sadly not all releases are covered.<br />
* '''Boktai 1:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1145 US], <s>EU</s>.<br />
* '''Boktai 2:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], <s>US</s>, [http://www.advanscene.com/html/Releases/dbreleases.php?id=1992 EU]. <br />
* '''Boktai 3:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=2048 JP Fix].<br />
* Combinations of Boktai 4 JP with earlier solar sensors to get solar sensor bonuses aren't emulated yet in any DS emulator.<br />
<br />
===Motion Control===<br />
VBA-M has an option for Motion controls "Input, Set, Motion". It currently works with all versions of the GBC title Kirby Tilt'n Tumble, which also was a special cartridge with a motion sensor built-in to control movement in-game. But VBA-M does not support motion controls for GBA games yet.<br />
====Emulation====<br />
* VBA '''doesn't''' emulate this feature, and its "Motion Control" option (with keys mapped to each tilt direction) covers the GBC title Kirby Tilt'n Tumble.<br />
* mGBA supposedly includes this feature but key remapping for tilt sensors is not present in the latest builds.<br />
* My Boy! uses the device's accelerometer to emulate this feature. You can change the sensitivity under Settings -> Input -> Cartridge Features -> "Motion sensitivity" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM (with the Lunar IPS utility, or at runtime using mGBA or VBA-M and naming them the same as the ROM in the same directory) by various scene release groups to make it compatible with any emulator/flashcard. D-Pad controls substituting motion controls don't work as well here as they tilt it "too much" at times to be very playable.<br />
* Yoshi Topsy Turvy/Universal Gravitation: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1799 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1947 EU], [http://www.advanscene.com/html/Releases/dbreleases.php?id=2001 US]<br />
* WarioWare Twisted! (Patch: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1682 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1979 US])<br />
<br />
===Rumble Feature===<br />
There are various rumble features found in GBA/GBC cards:<br />
* '''GBC Rumble:''' GBC games which came on special cartridges with additional hardware for the rumble feature. It was actually used by dozens of releases, and some games like Tarzan 2 GBC were programmed to have rumble support but shipped on regular cartridges. Emulated by VBA-M GX (Wii-only), which also cover the dummied-out rumble games. Not emulated anywhere else.<br />
* '''GBA Gyro Rumble:''' WarioWare Twisted was shipped on a cart with rumble support. It would rumble when you tilt to one "extreme". Emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds, <br />
* '''GBA Variable Rumble:''' Drill Dozer has rumble support, with variable force and speed depending on the rock type you drill through in-game. Partially emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds.<br />
* '''Game Boy Player Rumble:''' Many regular GBA games, shipped on regular cartridges, enable rumble during gameplay when played on GB Player hardware (which is essentially GBA hardware). These include Super Mario Advance 4, Summon Night Hajimari no Ishi, Mario & Luigi 1, Shikakui Atama wo Marukusuru Advance (both releases), Pokémon Pinball, as well as Drill Dozer which disables its original cartridge rumble scheme and enables this one instead. None of the emulators support this, though it's being under development for the mGBA emulator.<br />
<br />
===Figurine Readers===<br />
* '''Figurine Add-on:''' Legendz: Isle Of Trials, Legendz: Sign Of Necromu, Plaston Gate ([http://www.advanscene.com/html/Releases/dbreleases.php?id=1020 Fix]), Plaston Gate DX ([http://www.advanscene.com/html/Releases/dbreleases.php?id=2006 Fix]). The add-on is essentially Skylanders before it became popular.<br />
<br />
[[mGBA]] (dev channel only) and [[GBE+]] partially support the add-on used for the Legendz series.<br />
<br />
===BattleChip Gate===<br />
An peripheral device by Capcom and Takara compatible with ''Mega Man Battle Network 4'' (Japanese edition). It can be connected to the Game Boy Advance and allow the player to transmit real-life toy Battle Chips to the NetNavis in the game. It's also compatible with toy Advanced PETs and ''Rockman.EXE 4.5 Real Operation''. It can also unlock minigames in ''Mega Man Zero 3''.<br />
<br />
[[mGBA]] and [[GBE+]] partially support this add-on.<br />
<br />
===Glucoboy===<br />
* '''Glucoboy:''' An obscure medical peripheral designed to monitor a child's blood glucose levels and reward them for keeping tabs on their condition. No known emulator supports this so far, especially given the niche nature of this accessory. Not to mention that [https://assemblergames.com/threads/glucoboy-for-gameboy-is-this-the-rarest-game-accessory-for-gameboy-advance.41853/page-2 Bayer Healthcare destroyed all unsold stock] making it hard to find.<br />
<br />
==References==<br />
{{reflist|2}}<br />
<br />
<br />
{{Nintendo}}<br />
<br />
[[Category:Consoles]]<br />
[[Category:Nintendo consoles]]<br />
[[Category:Sixth-generation video game consoles]]<br />
[[Category:Game Boy Advance emulators|*]]</div>172.68.25.172https://emulation.gametechwiki.com/index.php?title=Game_Boy_Advance_emulators&diff=34623Game Boy Advance emulators2020-08-01T16:28:42Z<p>172.68.25.172: /* Connectivity */</p>
<hr />
<div>{{Infobox console<br />
|title = Nintendo Game Boy Advance<br />
|logo = gbagba.png<br />
|developer = [[:Nintendo]]<br />
|type = [[:Category:Consoles|Handheld game console]]<br />
|generation = [[:Category:Sixth-generation video game consoles|Sixth generation]]<br />
|release = 2001<br />
|discontinued = 2010<br />
|predecessor = [[Virtual Boy emulators|Virtual Boy]]<br />
|successor = [[Nintendo DS emulators|Nintendo DS]]<br />
|emulated = {{✓}}<br />
}}<br />
The '''[[wikipedia:Game_Boy_Advance|Game Boy Advance]]''' (often shortened to GBA) is a 32-bit handheld video game console developed by Nintendo. It is the successor to the Game Boy Color. It was released in Japan on March 21, 2001; in North America on June 11, 2001; in Australia and Europe on June 22, 2001. It has a ARM7TDMI CPU at 16.78 MHz and a Zilog Z80 CPU at 8 MHz and 4 MHz. It has 32KB of RAM and 96KB of VRAM. <br />
<br />
==Emulators==<br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Latest Version<br />
! scope="col"|GB/GBC<br />
! scope="col"|GBA<br />
! scope="col"|NDS<br />
! scope="col"|Game Link Support<br />
! scope="col"|e-Reader<br />
! scope="col"|[[libretro|Libretro Core]]<br />
! scope="col"|Active<br />
! scope="col"|[[Recommended Emulators|Recommended]]<br />
|-<br />
!colspan="11"|PC /x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa>Experimental separate build under the name of [[mGBA#medusa|medusa]].</ref> ||{{✓}} ||{{✓}}<ref group=N name=ereader>Latest development build only</ref> ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[higan]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://byuu.org/emulation/higan/ {{higanVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|iDeaS<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://web.archive.org/web/20150311100053/http://ciacin.site90.com/ideas.php 1.0.4.0]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[GBE+]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://github.com/shonumi/gbe-plus {{GBEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[https://fms.komkon.org/VGBA VGBA]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://fms.komkon.org/VGBA {{VGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[MAME]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.mamedev.org/release.html {{MAMEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|Meteor<br />
|align=left|{{Icon|Linux}}<br />
|[https://github.com/blastrock/meteor 1.4.2]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|NanoboyAdvance<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://github.com/fleroviux/NanoboyAdvance Git]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
|[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|BoyCottAdvance<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://boycottadvance.emuunlim.org/Downloads.htm 0.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|PlayBoy Advance<br />
|align=left|{{Icon|macOS}}<br />
|[https://www.zophar.net/macintosh/gba/playboy-advance.html 1.0]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Mobile / ARM<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa /> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://www.explusalpha.com/ GBA.emu]<br/><small>(VBA-M r1097 based)</small><br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.explusalpha.GbaEmu 1.5.43]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://allaboutwindowsphone.com/software/content/VBA8_1.php VBA8]<br />
|align=left|{{Icon|W8P}}<br />
|[https://www.appx4fun.com/xap/15223/ 2.27]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}}<br />
|-<br />
|[https://forums.windowscentral.com/app-spotlight/252987-trio-nintendo-emulators-vba8-vgbc8-snes8x.html VBA10]<br />
|align=left|{{Icon|W10P}}<br />
|[https://forum.xda-developers.com/windows-10-mobile/windows-10-mobile-apps-and-games/app-vba10-emulator-t3588704 1.22]<br/>[https://emulator.games/emulators/gameboy-advance/vba10/ Alt]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|Pandora}}<br />
|[http://repo.openpandora.org/?page=detail&app=package.gpsp.notaz 0.9.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://github.com/visualboyadvance-m/visualboyadvance-m v2.0.1]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||? ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[https://sites.google.com/site/fastemulator/ My Boy!]<br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.fastemulator.gba 1.8.0]<br />
|{{✓}}<ref group=N name=myoldboy>Separate paid app called My OldBoy!.</ref> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|GBA4iOS<br />
|align=left|{{Icon|iOS}}<br />
|[https://iemulators.com/gba4ios v2.1]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{~}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Consoles<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Wii|Switch}}<br>{{Icon|3DS|PSV}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA emGBA]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://files.extremscorner.org/gamecube/apps/mgba/latest Git]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[gpSP#PSP_version|TempGBA4PSP]]<br />
|align=left|{{Icon|PSP}}<br />
|[http://www.mediafire.com/download/41ny5xrwxizalx4/TempGBA4PSP-26750221.zip 26750221]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-GX|VBA GX]]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://github.com/dborth/vbagx/releases 2.4.0]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<ref group=N>As VBA-Next.</ref> ||{{✓}} ||{{✗}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|PSP}}<br />
|0.9<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[Virtual Console]]<br />
|align=left|{{Icon|3DS|WiiU}}<br />
|8.10<br />
|{{✓}} <small>(Nintendo 3DS only)<small> ||{{✓}} ||{{✓}} <small>(Wii U only)<small> ||{{✓}} <small>(Pokemon only)</small> ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|}<br />
<references group=N /><br />
<br />
===Comparisons===<br />
;[[VisualBoy Advance|Visual Boy Advance (VBA)]]:The original GBA emulator. Has stopped development and lacks features compared to other offerings, it also has an <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability which was corrected in VBA-M.<br />
:;[[VisualBoy Advance#VBA-M|Visual Boy Advance-M (VBA-M)]]:A fork with additional improvements. The SVN1507 build is the only recommended one, as it is perfectly stable and is the best GBA emulator to date. VBA-M after the 2.0 releases became riddled with stability and performance problems.<br />
::;VBA-Next:A [[RetroArch]] fork from an older revision of VBA-M with added speedhacks and tweaks, making it useful for lower-end devices. A bit less accurate in some respects, but fixes a few games such as Advance Wars 2.<br />
;[[mGBA]]:Aims for accuracy, speed, and features. It's actively developed and has features VBA-M lacks such as a Tilt Sensor, and more recently Game Boy Camera support. Performance is still a problem, as it lacks support for the efficient DirectX APIs.<br />
;[[higan]]:Its GBA core is cycle-accurate as of v095, but it is behind in terms of performance compared to mGBA and VBA-M.<br />
;[[gpSP]]:Its last official version was 0.9. There are, however, two forks of interest: [http://dl.qj.net/psp/emulators/gpsp-mod-20090720.html gpSPmod], and [http://filetrip.net/psp-downloads/homebrew/download-gpsp-j-12-06-16-f29570.htmlgpSP-J gpSP-J]. gpSP-J has superior compatibility, while gpSPmod has more options for customization (full screen, cheats, etc). Both are superior to Kai.<br />
;[[MAME]]:Has a <code>gba</code> driver markup as working but both graphics and sound are "imperfect".<br />
<br />
'''NOTE:''' There's a ''huge'' <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability affecting VBA and most of its forks, except for VBA-M. The function for adding GameShark codes ("Import > Gameshark code file") doesn't check if the file's size is within 1024 kilobits, meaning cheat code files from dubious sources can be engineered with malware in mind. There is good news; VBA-M still doesn't do a sanity check for those files, but it just crashes instead of letting the code wreak havoc. So, depending on your use case, avoid using:<br />
# Cheat code files bigger than 1024Kb that you got online from untrustworthy sources.<br />
# The import code files feature.<br />
# The old emulator altogether, and settle for other options like mGBA or VBA-M. All of them support the same SRAM save data the cartridge uses.<br />
<br />
'''List of recommended GBA emulators for Android:'''<br />
* [https://www.androidauthority.com/best-game-boy-emulators-for-android-368530/ 10 best Game Boy Advanced, Game Boy Color, and Game Boy emulators for Android] (SEPTEMBER 2, 2018. Includes some emulators not found in above charts. Reviews may be subjective.)<br />
<br />
==Emulation issues==<br />
<br />
===Oversaturation===<br />
[[File:1406913527173-1-.png|400px|thumb|right|'''Left:''' The default game.<br/>'''Right:''' The "Gameboy Colors" mode on [[VisualBoy Advance#VBA-M|VBA-M]].]]<br />
The screen on the original Game Boy Advance is not backlit and can be hard to see in some conditions. To compensate, game developers often used oversaturated colors by default so that the result would look normal on hardware. On standard computer screens, saturation is not an issue so this can look jarring and undesirable for gameplay. Some games made after 2003 may have also taken the Game Boy Advance SP <abbr title="AGS-001">model</abbr> into account since its screen was actually <abbr title="A newer model, AGS-101, was released in 2005 that was actually backlit">frontlit</abbr>. For everything else though, emudevs have given some solutions:<br />
<br />
====Emulator Options====<br />
'''No$GBA:''' Under "Emulation Options", select "GBA Mode". There are four modes.<br />
<br />
* '''GBA (no backlight):''' Strong desaturation<br />
* '''GBA SP (backlight):''' Strong desaturation<br />
* '''Nintendo DS in GBA mode:''' Some desaturation<br />
* '''VGA Mode (poppy bright):''' No desaturation<br />
<br />
'''VBA-M''': Only applies to Windows. Under Options > Gameboy, you will find the options:<br />
<br />
* '''"Real Colors":''' No desaturation<br />
* '''"Gameboy Colors":''' Strong desaturation<br />
<br />
'''higan:''' Under Settings > Video Filter, you will find the "Color Emulation" checkbox.<br />
<br />
* '''Color Emulation off:''' No desaturation<br />
* '''Color Emulation on:''' Gamma correction and adjusted color range.<br />
<br />
====Shaders====<br />
Cg [[Shaders and Filters|shaders]] can be used in [[OpenEmu]] or [[RetroArch]] that adjust the colors to those of a real GBA screen, as well as other screen types. These are available in GLSL<ref name="GLSL">https://github.com/libretro/glsl-shaders/tree/master/handheld/shaders/color</ref> for OpenGL, and Slang<ref name="Slang">https://github.com/libretro/slang-shaders/tree/master/handheld/shaders/color</ref> for Vulkan.<br />
<br />
For GBA, there is <code>gba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/gba-color.cg</ref>, which simulates the color profile of a GBA screen under an external light source more accurately than VBA-M or No$GBA color options. If you prefer the darker color options that those emulators have, then use <code>vba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/vba-color.cg</ref> instead. <br />
<br />
There is also <code>nds-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/nds-color.cg</ref> and <code>psp-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/psp-color.cg</ref>, which simulates the color profiles of the original Nintendo DS frontlit screen and the PSP-1000/PSP-2000 backlit screen, respectively.<br />
<br />
===Horrible Sound Quality===<br />
As a handheld rushed to the market (because of the WonderSwan Color competition), the Game Boy Advance had some cut corners. The sound hardware was affected the hardest: while it could play Game Boy Color sound in addition to samples and sequenced music like what would be heard on the SNES, the actual sound playback quality is awful compared to the actual higher quality sound samples stored internally in the ROM.<br />
<br />
There were [https://www.romhacking.net/utilities/881/ tools] made to extract the internal high quality music (as midi files plus a sound font, to be played on foobar2000), however interest remains limited in implementing its playback in real time on emulators. It's worth noting it exists as a very experimental feature on [[mGBA]] (nightly versions) under Enhancements as "XQ GBA Audio", but very buggy and still limited to games using the standard sound engine, the so-called "Sappy" engine, which is still a big part of the GBA's software library.<br />
<br />
===High Resolution Affine Transformation Graphical Effects===<br />
Similar to the scaling effects used on the Super NES known commonly as "Mode 7" graphics, the Game Boy Advance has affine transformation effects for some backgrounds and individual sprites that can be done in hardware. Due to the GBA's lower resolution, some detail may be lost.<br />
<br />
The [[mGBA]] emulator added an Enhancements menu where you can change the resolution of those graphical effects, for a smoother effect. The graphical render engine will need to be OpenGL for those to take effect. It won't work on games where those effects are done in software instead of the hardware scaling features (like the 3D environment in Asterix & Obelix XXL)<br />
<br />
===Save formats===<br />
Originally, when saves were implemented, nobody settled on a format, so the Visual Boy Advance devs made its own. Because other emulators often went with raw data, having to exchange different saves caused problems. The original Visual Boy Advance tries to figure out which format a given save is but often fails at it. By explicitly telling the emulator to read it as a specific type using a file called <code>vba-over.ini</code>, VBA complies. VBA-M includes this config file by default, but older revisions like VBA 1.7.2 and VBALink do not.<br />
<br />
The VBA-Next and VBA-M cores in Libretro have the file baked into the binary so that it can load raw .sav files, but converts the format to its own derivative at exactly 136 KB every time, with save type info contained within the file. This completely avoids the previous issues at the cost of incompatibility with standalone VBA and most others.<br />
<br />
To solve this incompatibility, Libretro devs created a <br />
[https://github.com/libretro/vbam-libretro/blob/master/src/libretro/gbaconv/gbaconv.c command-line tool] to convert .srm save files made from these cores to raw .sav save data for other emulators. It takes standard input (i.e. just drag and drop the .srm onto the executable) and outputs accordingly. It can also be done in reverse. A 64-bit binary of this tool for Windows can be found <br />
[https://www.mediafire.com/?6bg8ag0bjs1b7ng here].<br />
<br />
==Connectivity==<br />
There are five different kinds of connectivity, support varying by game:<br />
*Single Pak<br />
*Multi Pak<br />
*Wireless<br />
*GameCube<br />
*Nintendo DS<br />
Purple end in GBA means player 1, while a grey end in GBA means P2, P3, or P4. Daisy chaining up to three cables will set up the additional P3 and P4 by connecting the purple end to a purple mid section.<ref>https://www.nintendo.com/consumer/downloads/agblink.pdf</ref><br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Supported Version<br />
! scope="col"|Single Pak<br />
! scope="col"|Multi Pak<br />
! scope="col"|Wireless<br />
! scope="col"|GameCube<br />
! scope="col"|Nintendo DS<br />
|-<br />
!colspan="8"|PC / x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
|[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[DeSmuME]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://ci.appveyor.com/project/zeromus/desmume {{DeSmuMEVer}}]<br />
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|}<br />
===GBA Mutli Pak Link Multiplayer (1~4GBA)===<br />
;VBA-M: This doesn't work with old VBA versions.<br />
:Just disable "Pause when Inactive", configure all four Joypads each with their own button layout, enable "Link, Enable GBA Link". Now open VBA-M again as many times needed for each player, and have them each use their separate Joypad configuration. Each player will have a separate SRAM save file.<br />
;VBA Link + e-Reader:Useful if you want to use the Pokémon Battle-eCards. Downloads and instructions reside [http://projectpokemon.org/forums/showthread.php?42433-RELEASE-VBA-LINK-E-READER here].<br />
;mGBA:Select "New multiplayer window" from the menu. As you load your ROMs into each window, "Player [X] of [Y]" will appear across the title bar. This can be done for up to four players. However, multiple instances of the same ROM will share a save file.<br />
;No$GBA:Set the number of Emulated Gameboys in the Emulation setting to be 2 or more, and the Link Gamepaks Options to Gamepak in all GBAs.<br />
<br />
===GBA Wireless Multiplayer===<br />
The [[Wikipedia:Game Boy Advance Wireless Adapter|wireless adapter]] has the ability to connect five players<ref>https://www.nintendo.com/consumer/downloads/agbwireless_trilingual.pdf</ref> to each other and includes its own software to download a subset of another player's game that runs when no cartridge is inserted. ''Pokémon Fire Red'' and ''Leaf Green'' came bundled with this accessory but it can also work with ''Pokémon Emerald'' and the ''Classic NES Series''.<br />
<br />
No emulator has currently implemented this add-on. The only project whose developers put this on its roadmap is [[mGBA]].<br />
<br />
===GameCube Connectivity===<br />
The Game Boy Advance can also connect to the GameCube.<ref>https://www.nintendo.com/consumer/downloads/agbgcncable.pdf</ref> e-Reader functionality with GC games isn't emulated as of yet, but [[Dolphin]] supports connectivity through rudimentary joybus emulation made in parallel with VBA-M. Because this emulator has fallen behind, the Dolphin team is currently rewriting the feature from scratch to better interface with more accurate emulators. They showcased early higan support in a video, but nothing has been released as of yet.<br />
<br />
====Dolphin/VBA-M====<br />
:''Requires VBA-M r947 or newer.''<br />
<br />
# Reduce your volume. You won't want it to be high, especially with headphones.<br />
# Open Dolphin and VBA-M. Make sure neither are blocked by your firmware.<br />
# In Dolphin, launch the game and navigate to the area where you're asked to connect the GBA. Then, under the controller options, assign the GameCube controllers as "GBA" for whichever you need.<br />
# In VBA-M, uncheck Pause When Inactive in Options > Emulator. Then, under Options > Link > Joybus Options, Make sure to "Enable Joybus Connection" is on and set "IP/Hostname" to use default settings, that is <code>127.0.0.1</code> or <code>localhost</code>.<br />
# Dolphin will freeze.<br />
# Open the GBA BIOS in VBA-M as if it were a regular GBA ROM. The regular splash screen will stutter a bit.<br />
# Dolphin should recognize the Joybus Link by then and the GC game will detect that a GBA was connected.<br />
# To connect other units, open another VBA-M instance and repeat its process.<br />
<br />
Notable games that work:<br />
*[https://wiki.dolphin-emu.org/index.php?title=The_Legend_of_Zelda:_Four_Swords_Adventures The Legend of Zelda Four Swords Adventures]: Both two modes available for the US/PAL version work. The third Japan-only Navi Trackers mode works as well, but the game crashes after the naming screen due to a bug in the GC/GBA connectivity.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Final_Fantasy_Crystal_Chronicles Final Fantasy Crystal Chronicles]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Billy_Hatcher_and_the_Giant_Egg Billy Hatcher and the Giant Egg]: You can download games to your GBA. Amusingly, a RAM dump from VBA-M can be opened as a functional GBA ROM.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Kururin_Squash! Kururin Squash!]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Sonic_Adventure_2:_Battle Sonic Adventure 2: Battle] (buggy)<br />
<br />
Notable games that don't:<br />
*[https://wiki.dolphin-emu.org/index.php?title=Mr_Driller:_Drill_Land Mr. Driller: Drill Land]<br />
*lots more<br />
<br />
===GBA/DS Connectivity===<br />
:''Main section: [[Nintendo_DS_emulators#GBA.2FDS_Connectivity|Nintendo DS § GBA/DS Connectivity]]''<br />
<br />
===e-Reader===<br />
:''Main page: [[GBA e-Reader emulators]]''<br />
This device can read content off e-Card paper stripes either as standalone content, or additional content to GBA/GC games. Can be thought of as DLC.<br />
<br />
==Special Hardware==<br />
Most of these have not been emulated as of yet. There used to be patches that could be applied to GBA ROMs with a utility like Lunar IPS (mostly from [http://bubbz.pocketheaven.com/?system=gba&section=patch No Frills]), but they're for the most part lost to time nowadays. Your best bet is to use Action Replay to emulate those.<br />
<br />
===Solar Sensor===<br />
====Emulation====<br />
This feature has been emulated in mGBA, VBA-M, No$GBA 2.6 onwards, and My Boy!:<br />
* VBA-M: This emulator uses the keys of the lateral motion controls to change the Solar Sensor levels. You can find those keys and modify them in Options -> Input -> Configure... -> "Special" tab.<br />
* mGBA: In the shortcuts editor, shortcuts can be configured to raise/lower the solar level incrementally or to set any particular brightness level. <br />
* No$GBA: Under '''Options/Emulation Setup''', you can find the Solar Sensor Level option. You are given the choice between only three brightness levels though: Darkness, 100 Watts, and Bright Sunlight.<br />
* My Boy! This emulator uses a button combination or the devices light sensor to check the brightness level. You can change this under Settings -> Input -> Cartridge Features -> "Solar Emulation By" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM by various scene release groups to make it compatible with any emulator/flashcard, making the in-game brightness level controllable with L+Left/Right. It's argued this makes for a better experience actually, but sadly not all releases are covered.<br />
* '''Boktai 1:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1145 US], <s>EU</s>.<br />
* '''Boktai 2:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], <s>US</s>, [http://www.advanscene.com/html/Releases/dbreleases.php?id=1992 EU]. <br />
* '''Boktai 3:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=2048 JP Fix].<br />
* Combinations of Boktai 4 JP with earlier solar sensors to get solar sensor bonuses aren't emulated yet in any DS emulator.<br />
<br />
===Motion Control===<br />
VBA-M has an option for Motion controls "Input, Set, Motion". It currently works with all versions of the GBC title Kirby Tilt'n Tumble, which also was a special cartridge with a motion sensor built-in to control movement in-game. But VBA-M does not support motion controls for GBA games yet.<br />
====Emulation====<br />
* VBA '''doesn't''' emulate this feature, and its "Motion Control" option (with keys mapped to each tilt direction) covers the GBC title Kirby Tilt'n Tumble.<br />
* mGBA supposedly includes this feature but key remapping for tilt sensors is not present in the latest builds.<br />
* My Boy! uses the device's accelerometer to emulate this feature. You can change the sensitivity under Settings -> Input -> Cartridge Features -> "Motion sensitivity" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM (with the Lunar IPS utility, or at runtime using mGBA or VBA-M and naming them the same as the ROM in the same directory) by various scene release groups to make it compatible with any emulator/flashcard. D-Pad controls substituting motion controls don't work as well here as they tilt it "too much" at times to be very playable.<br />
* Yoshi Topsy Turvy/Universal Gravitation: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1799 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1947 EU], [http://www.advanscene.com/html/Releases/dbreleases.php?id=2001 US]<br />
* WarioWare Twisted! (Patch: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1682 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1979 US])<br />
<br />
===Rumble Feature===<br />
There are various rumble features found in GBA/GBC cards:<br />
* '''GBC Rumble:''' GBC games which came on special cartridges with additional hardware for the rumble feature. It was actually used by dozens of releases, and some games like Tarzan 2 GBC were programmed to have rumble support but shipped on regular cartridges. Emulated by VBA-M GX (Wii-only), which also cover the dummied-out rumble games. Not emulated anywhere else.<br />
* '''GBA Gyro Rumble:''' WarioWare Twisted was shipped on a cart with rumble support. It would rumble when you tilt to one "extreme". Emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds, <br />
* '''GBA Variable Rumble:''' Drill Dozer has rumble support, with variable force and speed depending on the rock type you drill through in-game. Partially emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds.<br />
* '''Game Boy Player Rumble:''' Many regular GBA games, shipped on regular cartridges, enable rumble during gameplay when played on GB Player hardware (which is essentially GBA hardware). These include Super Mario Advance 4, Summon Night Hajimari no Ishi, Mario & Luigi 1, Shikakui Atama wo Marukusuru Advance (both releases), Pokémon Pinball, as well as Drill Dozer which disables its original cartridge rumble scheme and enables this one instead. None of the emulators support this, though it's being under development for the mGBA emulator.<br />
<br />
===Figurine Readers===<br />
* '''Figurine Add-on:''' Legendz: Isle Of Trials, Legendz: Sign Of Necromu, Plaston Gate ([http://www.advanscene.com/html/Releases/dbreleases.php?id=1020 Fix]), Plaston Gate DX ([http://www.advanscene.com/html/Releases/dbreleases.php?id=2006 Fix]). The add-on is essentially Skylanders before it became popular.<br />
<br />
[[mGBA]] (dev channel only) and [[GBE+]] partially support the add-on used for the Legendz series.<br />
<br />
===BattleChip Gate===<br />
An peripheral device by Capcom and Takara compatible with ''Mega Man Battle Network 4'' (Japanese edition). It can be connected to the Game Boy Advance and allow the player to transmit real-life toy Battle Chips to the NetNavis in the game. It's also compatible with toy Advanced PETs and ''Rockman.EXE 4.5 Real Operation''. It can also unlock minigames in ''Mega Man Zero 3''.<br />
<br />
[[mGBA]] and [[GBE+]] partially support this add-on.<br />
<br />
===Glucoboy===<br />
* '''Glucoboy:''' An obscure medical peripheral designed to monitor a child's blood glucose levels and reward them for keeping tabs on their condition. No known emulator supports this so far, especially given the niche nature of this accessory. Not to mention that [https://assemblergames.com/threads/glucoboy-for-gameboy-is-this-the-rarest-game-accessory-for-gameboy-advance.41853/page-2 Bayer Healthcare destroyed all unsold stock] making it hard to find.<br />
<br />
==References==<br />
{{reflist|2}}<br />
<br />
<br />
{{Nintendo}}<br />
<br />
[[Category:Consoles]]<br />
[[Category:Nintendo consoles]]<br />
[[Category:Sixth-generation video game consoles]]<br />
[[Category:Game Boy Advance emulators|*]]</div>172.68.25.172https://emulation.gametechwiki.com/index.php?title=Game_Boy_Advance_emulators&diff=34622Game Boy Advance emulators2020-08-01T16:27:20Z<p>172.68.25.172: /* Special Hardware */</p>
<hr />
<div>{{Infobox console<br />
|title = Nintendo Game Boy Advance<br />
|logo = gbagba.png<br />
|developer = [[:Nintendo]]<br />
|type = [[:Category:Consoles|Handheld game console]]<br />
|generation = [[:Category:Sixth-generation video game consoles|Sixth generation]]<br />
|release = 2001<br />
|discontinued = 2010<br />
|predecessor = [[Virtual Boy emulators|Virtual Boy]]<br />
|successor = [[Nintendo DS emulators|Nintendo DS]]<br />
|emulated = {{✓}}<br />
}}<br />
The '''[[wikipedia:Game_Boy_Advance|Game Boy Advance]]''' (often shortened to GBA) is a 32-bit handheld video game console developed by Nintendo. It is the successor to the Game Boy Color. It was released in Japan on March 21, 2001; in North America on June 11, 2001; in Australia and Europe on June 22, 2001. It has a ARM7TDMI CPU at 16.78 MHz and a Zilog Z80 CPU at 8 MHz and 4 MHz. It has 32KB of RAM and 96KB of VRAM. <br />
<br />
==Emulators==<br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Latest Version<br />
! scope="col"|GB/GBC<br />
! scope="col"|GBA<br />
! scope="col"|NDS<br />
! scope="col"|Game Link Support<br />
! scope="col"|e-Reader<br />
! scope="col"|[[libretro|Libretro Core]]<br />
! scope="col"|Active<br />
! scope="col"|[[Recommended Emulators|Recommended]]<br />
|-<br />
!colspan="11"|PC /x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa>Experimental separate build under the name of [[mGBA#medusa|medusa]].</ref> ||{{✓}} ||{{✓}}<ref group=N name=ereader>Latest development build only</ref> ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[higan]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://byuu.org/emulation/higan/ {{higanVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|iDeaS<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://web.archive.org/web/20150311100053/http://ciacin.site90.com/ideas.php 1.0.4.0]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[GBE+]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://github.com/shonumi/gbe-plus {{GBEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[https://fms.komkon.org/VGBA VGBA]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://fms.komkon.org/VGBA {{VGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[MAME]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.mamedev.org/release.html {{MAMEVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|Meteor<br />
|align=left|{{Icon|Linux}}<br />
|[https://github.com/blastrock/meteor 1.4.2]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|NanoboyAdvance<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://github.com/fleroviux/NanoboyAdvance Git]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
|[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|BoyCottAdvance<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://boycottadvance.emuunlim.org/Downloads.htm 0.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|PlayBoy Advance<br />
|align=left|{{Icon|macOS}}<br />
|[https://www.zophar.net/macintosh/gba/playboy-advance.html 1.0]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Mobile / ARM<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✓}}<ref group=N name=medusa /> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://www.explusalpha.com/ GBA.emu]<br/><small>(VBA-M r1097 based)</small><br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.explusalpha.GbaEmu 1.5.43]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://allaboutwindowsphone.com/software/content/VBA8_1.php VBA8]<br />
|align=left|{{Icon|W8P}}<br />
|[https://www.appx4fun.com/xap/15223/ 2.27]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}}<br />
|-<br />
|[https://forums.windowscentral.com/app-spotlight/252987-trio-nintendo-emulators-vba8-vgbc8-snes8x.html VBA10]<br />
|align=left|{{Icon|W10P}}<br />
|[https://forum.xda-developers.com/windows-10-mobile/windows-10-mobile-apps-and-games/app-vba10-emulator-t3588704 1.22]<br/>[https://emulator.games/emulators/gameboy-advance/vba10/ Alt]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|Pandora}}<br />
|[http://repo.openpandora.org/?page=detail&app=package.gpsp.notaz 0.9.2.8]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://github.com/visualboyadvance-m/visualboyadvance-m v2.0.1]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✓}} ||? ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[https://sites.google.com/site/fastemulator/ My Boy!]<br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.fastemulator.gba 1.8.0]<br />
|{{✓}}<ref group=N name=myoldboy>Separate paid app called My OldBoy!.</ref> ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|GBA4iOS<br />
|align=left|{{Icon|iOS}}<br />
|[https://iemulators.com/gba4ios v2.1]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{~}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="11"|Consoles<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Wii|Switch}}<br>{{Icon|3DS|PSV}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA emGBA]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://files.extremscorner.org/gamecube/apps/mgba/latest Git]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[gpSP#PSP_version|TempGBA4PSP]]<br />
|align=left|{{Icon|PSP}}<br />
|[http://www.mediafire.com/download/41ny5xrwxizalx4/TempGBA4PSP-26750221.zip 26750221]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance#VBA-GX|VBA GX]]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|[https://github.com/dborth/vbagx/releases 2.4.0]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<ref group=N>As VBA-Next.</ref> ||{{✓}} ||{{✗}}<br />
|-<br />
|[[gpSP]]<br />
|align=left|{{Icon|PSP}}<br />
|0.9<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[Virtual Console]]<br />
|align=left|{{Icon|3DS|WiiU}}<br />
|8.10<br />
|{{✓}} <small>(Nintendo 3DS only)<small> ||{{✓}} ||{{✓}} <small>(Wii U only)<small> ||{{✓}} <small>(Pokemon only)</small> ||{{✗}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|}<br />
<references group=N /><br />
<br />
===Comparisons===<br />
;[[VisualBoy Advance|Visual Boy Advance (VBA)]]:The original GBA emulator. Has stopped development and lacks features compared to other offerings, it also has an <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability which was corrected in VBA-M.<br />
:;[[VisualBoy Advance#VBA-M|Visual Boy Advance-M (VBA-M)]]:A fork with additional improvements. The SVN1507 build is the only recommended one, as it is perfectly stable and is the best GBA emulator to date. VBA-M after the 2.0 releases became riddled with stability and performance problems.<br />
::;VBA-Next:A [[RetroArch]] fork from an older revision of VBA-M with added speedhacks and tweaks, making it useful for lower-end devices. A bit less accurate in some respects, but fixes a few games such as Advance Wars 2.<br />
;[[mGBA]]:Aims for accuracy, speed, and features. It's actively developed and has features VBA-M lacks such as a Tilt Sensor, and more recently Game Boy Camera support. Performance is still a problem, as it lacks support for the efficient DirectX APIs.<br />
;[[higan]]:Its GBA core is cycle-accurate as of v095, but it is behind in terms of performance compared to mGBA and VBA-M.<br />
;[[gpSP]]:Its last official version was 0.9. There are, however, two forks of interest: [http://dl.qj.net/psp/emulators/gpsp-mod-20090720.html gpSPmod], and [http://filetrip.net/psp-downloads/homebrew/download-gpsp-j-12-06-16-f29570.htmlgpSP-J gpSP-J]. gpSP-J has superior compatibility, while gpSPmod has more options for customization (full screen, cheats, etc). Both are superior to Kai.<br />
;[[MAME]]:Has a <code>gba</code> driver markup as working but both graphics and sound are "imperfect".<br />
<br />
'''NOTE:''' There's a ''huge'' <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability affecting VBA and most of its forks, except for VBA-M. The function for adding GameShark codes ("Import > Gameshark code file") doesn't check if the file's size is within 1024 kilobits, meaning cheat code files from dubious sources can be engineered with malware in mind. There is good news; VBA-M still doesn't do a sanity check for those files, but it just crashes instead of letting the code wreak havoc. So, depending on your use case, avoid using:<br />
# Cheat code files bigger than 1024Kb that you got online from untrustworthy sources.<br />
# The import code files feature.<br />
# The old emulator altogether, and settle for other options like mGBA or VBA-M. All of them support the same SRAM save data the cartridge uses.<br />
<br />
'''List of recommended GBA emulators for Android:'''<br />
* [https://www.androidauthority.com/best-game-boy-emulators-for-android-368530/ 10 best Game Boy Advanced, Game Boy Color, and Game Boy emulators for Android] (SEPTEMBER 2, 2018. Includes some emulators not found in above charts. Reviews may be subjective.)<br />
<br />
==Emulation issues==<br />
<br />
===Oversaturation===<br />
[[File:1406913527173-1-.png|400px|thumb|right|'''Left:''' The default game.<br/>'''Right:''' The "Gameboy Colors" mode on [[VisualBoy Advance#VBA-M|VBA-M]].]]<br />
The screen on the original Game Boy Advance is not backlit and can be hard to see in some conditions. To compensate, game developers often used oversaturated colors by default so that the result would look normal on hardware. On standard computer screens, saturation is not an issue so this can look jarring and undesirable for gameplay. Some games made after 2003 may have also taken the Game Boy Advance SP <abbr title="AGS-001">model</abbr> into account since its screen was actually <abbr title="A newer model, AGS-101, was released in 2005 that was actually backlit">frontlit</abbr>. For everything else though, emudevs have given some solutions:<br />
<br />
====Emulator Options====<br />
'''No$GBA:''' Under "Emulation Options", select "GBA Mode". There are four modes.<br />
<br />
* '''GBA (no backlight):''' Strong desaturation<br />
* '''GBA SP (backlight):''' Strong desaturation<br />
* '''Nintendo DS in GBA mode:''' Some desaturation<br />
* '''VGA Mode (poppy bright):''' No desaturation<br />
<br />
'''VBA-M''': Only applies to Windows. Under Options > Gameboy, you will find the options:<br />
<br />
* '''"Real Colors":''' No desaturation<br />
* '''"Gameboy Colors":''' Strong desaturation<br />
<br />
'''higan:''' Under Settings > Video Filter, you will find the "Color Emulation" checkbox.<br />
<br />
* '''Color Emulation off:''' No desaturation<br />
* '''Color Emulation on:''' Gamma correction and adjusted color range.<br />
<br />
====Shaders====<br />
Cg [[Shaders and Filters|shaders]] can be used in [[OpenEmu]] or [[RetroArch]] that adjust the colors to those of a real GBA screen, as well as other screen types. These are available in GLSL<ref name="GLSL">https://github.com/libretro/glsl-shaders/tree/master/handheld/shaders/color</ref> for OpenGL, and Slang<ref name="Slang">https://github.com/libretro/slang-shaders/tree/master/handheld/shaders/color</ref> for Vulkan.<br />
<br />
For GBA, there is <code>gba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/gba-color.cg</ref>, which simulates the color profile of a GBA screen under an external light source more accurately than VBA-M or No$GBA color options. If you prefer the darker color options that those emulators have, then use <code>vba-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/vba-color.cg</ref> instead. <br />
<br />
There is also <code>nds-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/nds-color.cg</ref> and <code>psp-color.cg</code><ref>https://github.com/libretro/common-shaders/blob/master/handheld/shaders/color/psp-color.cg</ref>, which simulates the color profiles of the original Nintendo DS frontlit screen and the PSP-1000/PSP-2000 backlit screen, respectively.<br />
<br />
===Horrible Sound Quality===<br />
As a handheld rushed to the market (because of the WonderSwan Color competition), the Game Boy Advance had some cut corners. The sound hardware was affected the hardest: while it could play Game Boy Color sound in addition to samples and sequenced music like what would be heard on the SNES, the actual sound playback quality is awful compared to the actual higher quality sound samples stored internally in the ROM.<br />
<br />
There were [https://www.romhacking.net/utilities/881/ tools] made to extract the internal high quality music (as midi files plus a sound font, to be played on foobar2000), however interest remains limited in implementing its playback in real time on emulators. It's worth noting it exists as a very experimental feature on [[mGBA]] (nightly versions) under Enhancements as "XQ GBA Audio", but very buggy and still limited to games using the standard sound engine, the so-called "Sappy" engine, which is still a big part of the GBA's software library.<br />
<br />
===High Resolution Affine Transformation Graphical Effects===<br />
Similar to the scaling effects used on the Super NES known commonly as "Mode 7" graphics, the Game Boy Advance has affine transformation effects for some backgrounds and individual sprites that can be done in hardware. Due to the GBA's lower resolution, some detail may be lost.<br />
<br />
The [[mGBA]] emulator added an Enhancements menu where you can change the resolution of those graphical effects, for a smoother effect. The graphical render engine will need to be OpenGL for those to take effect. It won't work on games where those effects are done in software instead of the hardware scaling features (like the 3D environment in Asterix & Obelix XXL)<br />
<br />
===Save formats===<br />
Originally, when saves were implemented, nobody settled on a format, so the Visual Boy Advance devs made its own. Because other emulators often went with raw data, having to exchange different saves caused problems. The original Visual Boy Advance tries to figure out which format a given save is but often fails at it. By explicitly telling the emulator to read it as a specific type using a file called <code>vba-over.ini</code>, VBA complies. VBA-M includes this config file by default, but older revisions like VBA 1.7.2 and VBALink do not.<br />
<br />
The VBA-Next and VBA-M cores in Libretro have the file baked into the binary so that it can load raw .sav files, but converts the format to its own derivative at exactly 136 KB every time, with save type info contained within the file. This completely avoids the previous issues at the cost of incompatibility with standalone VBA and most others.<br />
<br />
To solve this incompatibility, Libretro devs created a <br />
[https://github.com/libretro/vbam-libretro/blob/master/src/libretro/gbaconv/gbaconv.c command-line tool] to convert .srm save files made from these cores to raw .sav save data for other emulators. It takes standard input (i.e. just drag and drop the .srm onto the executable) and outputs accordingly. It can also be done in reverse. A 64-bit binary of this tool for Windows can be found <br />
[https://www.mediafire.com/?6bg8ag0bjs1b7ng here].<br />
<br />
==Connectivity==<br />
There are five different kinds of connectivity, support varying by game:<br />
*Single Pak<br />
*Multi Pak<br />
*Wireless<br />
*GameCube<br />
*Nintendo DS<br />
Purple end in GBA means player 1, while a grey end in GBA means P2, P3, or P4. Daisy chaining up to three cables will set up the additional P3 and P4 by connecting the purple end to a purple mid section.<ref>https://www.nintendo.com/consumer/downloads/agblink.pdf</ref><br />
{| class="wikitable" style="text-align:center;"<br />
|-<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Supported Version<br />
! scope="col"|Single Pak<br />
! scope="col"|Multi Pak<br />
! scope="col"|Wireless<br />
! scope="col"|GameCube<br />
! scope="col"|Nintendo DS<br />
|-<br />
!colspan="8"|PC / x86<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
||[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}}]<br />
|{{✗}} ||{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[No$|No$GBA]]<br />
|align=left|{{Icon|Windows|DOS}}<br />
||[http://problemkaputt.de/gba.htm {{No$GBAVer}}]<br />
|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[DeSmuME]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://ci.appveyor.com/project/zeromus/desmume {{DeSmuMEVer}}]<br />
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|}<br />
===GBA Mutli Pak Link Multiplayer (1~4GBA)===<br />
;VBA-M: This doesn't work with old VBA versions.<br />
:Just disable "Pause when Inactive", configure all four Joypads each with their own button layout, enable "Link, Enable GBA Link". Now open VBA-M again as many times needed for each player, and have them each use their separate Joypad configuration. Each player will have a separate SRAM save file.<br />
;VBA Link + e-Reader:Useful if you want to use the Pokémon Battle-eCards. Downloads and instructions reside [http://projectpokemon.org/forums/showthread.php?42433-RELEASE-VBA-LINK-E-READER here].<br />
;mGBA:Select "New multiplayer window" from the menu. As you load your ROMs into each window, "Player [X] of [Y]" will appear across the title bar. This can be done for up to four players. However, multiple instances of the same ROM will share a save file.<br />
;No$GBA:Set the number of Emulated Gameboys in the Emulation setting to be 2 or more, and the Link Gamepaks Options to Gamepak in all GBAs.<br />
<br />
===GBA Wireless Multiplayer===<br />
The [[Wikipedia:Game Boy Advance Wireless Adapter|wireless adapter]] has the ability to connect five players<ref>https://www.nintendo.com/consumer/downloads/agbwireless_trilingual.pdf</ref> to each other and includes its own software to download a subset of another player's game that runs when no cartridge is inserted. ''Pokémon Fire Red'' and ''Leaf Green'' came bundled with this accessory but it can also work with ''Pokémon Emerald'' and the ''Classic NES Series''.<br />
<br />
No emulator has currently implemented this add-on. The only project whose developers put this on its roadmap is [[mGBA]].<br />
<br />
===GameCube Connectivity===<br />
The Game Boy Advance can also connect to the GameCube.<ref>https://www.nintendo.com/consumer/downloads/agbgcncable.pdf</ref> e-Reader functionality with GC games isn't emulated as of yet, but [[Dolphin]] supports connectivity through rudimentary joybus emulation made in parallel with VBA-M. Because this emulator has fallen behind, the Dolphin team is currently rewriting the feature from scratch to better interface with more accurate emulators. They showcased early higan support in a video, but nothing has been released as of yet.<br />
<br />
====Dolphin/VBA-M====<br />
:''Requires VBA-M r947 or newer.''<br />
<br />
# Reduce your volume. You won't want it to be high, especially with headphones.<br />
# Open Dolphin and VBA-M. Make sure neither are blocked by your firmware.<br />
# In Dolphin, launch the game and navigate to the area where you're asked to connect the GBA. Then, under the controller options, assign the GameCube controllers as "GBA" for whichever you need.<br />
# In VBA-M, uncheck Pause When Inactive in Options > Emulator. Then, under Options > Link > Joybus Options, Make sure to "Enable Joybus Connection" is on and set "IP/Hostname" to use default settings, that is <code>127.0.0.1</code> or <code>localhost</code>.<br />
# Dolphin will freeze.<br />
# Open the GBA BIOS in VBA-M as if it were a regular GBA ROM. The regular splash screen will stutter a bit.<br />
# Dolphin should recognize the Joybus Link by then and the GC game will detect that a GBA was connected.<br />
# To connect other units, open another VBA-M instance and repeat its process.<br />
<br />
Notable games that work:<br />
*[https://wiki.dolphin-emu.org/index.php?title=The_Legend_of_Zelda:_Four_Swords_Adventures The Legend of Zelda Four Swords Adventures]: Both two modes available for the US/PAL version work. The third Japan-only Navi Trackers mode works as well, but the game crashes after the naming screen due to a bug in the GC/GBA connectivity.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Final_Fantasy_Crystal_Chronicles Final Fantasy Crystal Chronicles]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Billy_Hatcher_and_the_Giant_Egg Billy Hatcher and the Giant Egg]: You can download games to your GBA. Amusingly, a RAM dump from VBA-M can be opened as a functional GBA ROM.<br />
*[https://wiki.dolphin-emu.org/index.php?title=Kururin_Squash! Kururin Squash!]<br />
*[https://wiki.dolphin-emu.org/index.php?title=Sonic_Adventure_2:_Battle Sonic Adventure 2: Battle] (buggy)<br />
<br />
Notable games that don't:<br />
*[https://wiki.dolphin-emu.org/index.php?title=Mr_Driller:_Drill_Land Mr. Driller: Drill Land]<br />
*lots more<br />
<br />
===GBA/DS Connectivity===<br />
:''Main section: [[Nintendo_DS_emulators#GBA.2FDS_Connectivity|Nintendo DS § GBA/DS Connectivity]]''<br />
<br />
===e-Reader===<br />
:''Main page: [[GBA e-Reader emulators]]''<br />
This device can read content off e-Card paper stripes either as standalone content, or additional content to GBA/GC games. Can be thought of as DLC.<br />
<br />
==Special Hardware==<br />
Most of these have not been emulated as of yet. There used to be patches that could be applied to GBA ROMs with a utility like Lunar IPS (mostly from [http://bubbz.pocketheaven.com/?system=gba&section=patch No Frills]), but they're for the most part lost to time nowadays. Your best bet is to use Action Replay to emulate those.<br />
<br />
===Solar Sensor===<br />
====Emulation====<br />
This feature has been emulated in mGBA, VBA-M, No$GBA 2.6 onwards, and My Boy!:<br />
* VBA-M: This emulator uses the keys of the lateral motion controls to change the Solar Sensor levels. You can find those keys and modify them in Options -> Input -> Configure... -> "Special" tab.<br />
* mGBA: In the shortcuts editor, shortcuts can be configured to raise/lower the solar level incrementally or to set any particular brightness level. <br />
* No$GBA: Under '''Options/Emulation Setup''', you can find the Solar Sensor Level option. You are given the choice between only three brightness levels though: Darkness, 100 Watts, and Bright Sunlight.<br />
* My Boy! This emulator uses a button combination or the devices light sensor to check the brightness level. You can change this under Settings -> Input -> Cartridge Features -> "Solar Emulation By" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM by various scene release groups to make it compatible with any emulator/flashcard, making the in-game brightness level controllable with L+Left/Right. It's argued this makes for a better experience actually, but sadly not all releases are covered.<br />
* '''Boktai 1:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1145 US], <s>EU</s>.<br />
* '''Boktai 2:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=1567 JP], <s>US</s>, [http://www.advanscene.com/html/Releases/dbreleases.php?id=1992 EU]. <br />
* '''Boktai 3:''' [http://www.advanscene.com/html/Releases/dbreleases.php?id=2048 JP Fix].<br />
* Combinations of Boktai 4 JP with earlier solar sensors to get solar sensor bonuses aren't emulated yet in any DS emulator.<br />
<br />
===Motion Control===<br />
VBA-M has an option for Motion controls "Input, Set, Motion". It currently works with all versions of the GBC title Kirby Tilt'n Tumble, which also was a special cartridge with a motion sensor built-in to control movement in-game. But VBA-M does not support motion controls for GBA games yet.<br />
====Emulation====<br />
* VBA '''doesn't''' emulate this feature, and its "Motion Control" option (with keys mapped to each tilt direction) covers the GBC title Kirby Tilt'n Tumble.<br />
* mGBA supposedly includes this feature but key remapping for tilt sensors is not present in the latest builds.<br />
* My Boy! uses the device's accelerometer to emulate this feature. You can change the sensitivity under Settings -> Input -> Cartridge Features -> "Motion sensitivity" menu.<br />
<br />
====ROM Patches====<br />
Fixes applied directly to the ROM (with the Lunar IPS utility, or at runtime using mGBA or VBA-M and naming them the same as the ROM in the same directory) by various scene release groups to make it compatible with any emulator/flashcard. D-Pad controls substituting motion controls don't work as well here as they tilt it "too much" at times to be very playable.<br />
* Yoshi Topsy Turvy/Universal Gravitation: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1799 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1947 EU], [http://www.advanscene.com/html/Releases/dbreleases.php?id=2001 US]<br />
* WarioWare Twisted! (Patch: [http://www.advanscene.com/html/Releases/dbreleases.php?id=1682 JP], [http://www.advanscene.com/html/Releases/dbreleases.php?id=1979 US])<br />
<br />
===Rumble Feature===<br />
There are various rumble features found in GBA/GBC cards:<br />
* '''GBC Rumble:''' GBC games which came on special cartridges with additional hardware for the rumble feature. It was actually used by dozens of releases, and some games like Tarzan 2 GBC were programmed to have rumble support but shipped on regular cartridges. Emulated by VBA-M GX (Wii-only), which also cover the dummied-out rumble games. Not emulated anywhere else.<br />
* '''GBA Gyro Rumble:''' WarioWare Twisted was shipped on a cart with rumble support. It would rumble when you tilt to one "extreme". Emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds, <br />
* '''GBA Variable Rumble:''' Drill Dozer has rumble support, with variable force and speed depending on the rock type you drill through in-game. Partially emulated by VBA-M GX (Wii-only, functional), mGBA has this feature but it's not enabled in current builds.<br />
* '''Game Boy Player Rumble:''' Many regular GBA games, shipped on regular cartridges, enable rumble during gameplay when played on GB Player hardware (which is essentially GBA hardware). These include Super Mario Advance 4, Summon Night Hajimari no Ishi, Mario & Luigi 1, Shikakui Atama wo Marukusuru Advance (both releases), Pokémon Pinball, as well as Drill Dozer which disables its original cartridge rumble scheme and enables this one instead. None of the emulators support this, though it's being under development for the mGBA emulator.<br />
<br />
===Figurine Readers===<br />
* '''Figurine Add-on:''' Legendz: Isle Of Trials, Legendz: Sign Of Necromu, Plaston Gate ([http://www.advanscene.com/html/Releases/dbreleases.php?id=1020 Fix]), Plaston Gate DX ([http://www.advanscene.com/html/Releases/dbreleases.php?id=2006 Fix]). The add-on is essentially Skylanders before it became popular.<br />
<br />
[[mGBA]] (dev channel only) and [[GBE+]] partially support the add-on used for the Legendz series.<br />
<br />
===BattleChip Gate===<br />
An peripheral device by Capcom and Takara compatible with ''Mega Man Battle Network 4'' (Japanese edition). It can be connected to the Game Boy Advance and allow the player to transmit real-life toy Battle Chips to the NetNavis in the game. It's also compatible with toy Advanced PETs and ''Rockman.EXE 4.5 Real Operation''. It can also unlock minigames in ''Mega Man Zero 3''.<br />
<br />
[[mGBA]] and [[GBE+]] partially support this add-on.<br />
<br />
===Glucoboy===<br />
* '''Glucoboy:''' An obscure medical peripheral designed to monitor a child's blood glucose levels and reward them for keeping tabs on their condition. No known emulator supports this so far, especially given the niche nature of this accessory. Not to mention that [https://assemblergames.com/threads/glucoboy-for-gameboy-is-this-the-rarest-game-accessory-for-gameboy-advance.41853/page-2 Bayer Healthcare destroyed all unsold stock] making it hard to find.<br />
<br />
==References==<br />
{{reflist|2}}<br />
<br />
<br />
{{Nintendo}}<br />
<br />
[[Category:Consoles]]<br />
[[Category:Nintendo consoles]]<br />
[[Category:Sixth-generation video game consoles]]<br />
[[Category:Game Boy Advance emulators|*]]</div>172.68.25.172https://emulation.gametechwiki.com/index.php?title=MGBA&diff=34621MGBA2020-08-01T16:24:27Z<p>172.68.25.172: </p>
<hr />
<div>{{lowercase title}}<br />
{{Infobox emulator<br />
|title = mGBA<br />
|logo = Mgba-logo.png<br />
|logowidth = 140<br />
|version = {{mGBAVer}}<br />
|active = Yes<br />
|platform = Multi-platform<br />
|target = [[Game Boy Advance emulators|Game Boy Advance]]<br/>[[Game Boy/Game Boy Color emulators|Game Boy]]<br/>[[Game Boy/Game Boy Color emulators|Game Boy Color]]<br />
|developer = [https://github.com/endrift Vicki Pfau (endrift)]<br />
|accuracy = Highly-Accurate<br />
|prog-lang = C, C++<br />
|website = [https://mgba.io/ mGBA]<br />
|support = [https://www.patreon.com/mgba Patreon]<br />
|license = MPL v2.0<br />
|source = [https://github.com/mgba-emu/mgba/ GitHub]<br />
}}<br />
'''mGBA''' is an open-source [[Game Boy/Game Boy Color emulators|Game Boy/Color]] and [[Game Boy Advance emulators|Game Boy Advance emulator]] developed by endrift. Being written from scratch, it aims for speed, accuracy, and portability. It's also available as a [[libretro]] core for [[RetroArch]].<br />
<br />
==Download==<br />
{| cellpadding="4"<br />
|-<br />
|align=center|{{Icon|Win|Lin|Mac|NX|3DS|Vita|Wii}}<br />
|'''[https://mgba.io/downloads.html#current-downloads mGBA Stable and Nightly builds]'''<br />
|-<br />
|align=center|{{Icon|Win|Lin|Mac}}<br />
|'''[https://mgba.io/downloads.html#medusa-1 medusa Dev builds]'''<br />
|}<br />
<br />
==Notable features==<br />
* [https://mgba.io/2014/12/28/classic-nes/ NES Classic series compatibility]<br />
* Local multi-pak link cable support, up to 4 players<br />
* Extensive hardware-based emulation that removes the need for game-specific patches<br />
** Solar sensor emulation for the Boktai series<br />
** Tilt sensor emulation for games like WarioWare: Twisted! and Yoshi's Universal Gravity<br />
** Rumble Pak emulation for games like Drill Dozer and WarioWare: Twisted!<br />
** Battle Chip Gate, Progress Chip Gate, and Beast Link Gate emulation for Rockman.EXE 4, 4.5, 5, and 6<br />
** Real-time clock (Boktai series, Pokémon series, Rockman EXE 4.5 Real Operation), synced to system time or set arbitrarily<br />
* Support for BPS/beat, IPS and UPS patching at runtime, including ROMs in compressed archives (.7z/.zip)<br />
* Game overrides, forcing games to use specific save formats or sensors (tilt, solar, etc.)<br />
* Very basic cheat code support (AR, GS, CB), though without search options<br />
* Save states <!-- would be more notable if it didn't support them --><br />
* Fast-forwarding and rewinding<br />
<br />
Some features that are still planned include:<ref>https://mgba.io/2014/12/09/announcing-mgba/</ref><br />
<br />
* ''Networked'' multiplayer link cable support<br />
* Dolphin/JOY bus link cable support (which is being taken up on Dolphin's side since they specifically developed connectivity for VBA)<br />
* M4A audio mixing, for higher quality sound than hardware<br />
* Re-recording support for tool-assist runs<br />
* Lua support for scripting<br />
* A comprehensive debug suite<br />
* e-Reader support<br />
* Wireless adapter support (Mario Golf, Classic NES Series, Pokémon FireRed/LeafGreen/Emerald, the built-in software when no game is inserted)<br />
<br />
==medusa==<br />
'''medusa''' is a [[Nintendo DS emulators|Nintendo DS emulator]] being developed by mGBA developer endrift.<ref>https://mgba.io/2017/04/08/medusa</ref> The plan was for medusa to eventually merge with and replace mGBA sometime after mGBA 1.0 is released to form medusa 2.0, making it an emulator that could play GB/C, GBA, and NDS. Development began in 2016 and was expected to merge sometime in 2018. However, as of March 2018, medusa has been "suspended until further notice"<ref>https://mgba.io/2018/03/09/holy-grail-bugs-revisited/</ref> due to a slowdown in development for both medusa and mGBA. There is an alpha version available, but accuracy is spotty and some features are lacking.<br />
<br />
==Manual (CLI version)==<br />
:''<small>'''Note:''' The [[Emulation on Ubuntu|Ubuntu]] version consists of both a command-line version (<code>mgba-sdl</code>) and GUI version (<code>mgba-qt</code>). The command-line version does not need to be installed if you aren't going to run it. The main dependency for both is <code>libmgba</code>.</small>''<br />
<pre>usage: mgba [option ...] file<br />
<br />
Generic options:<br />
-b, --bios FILE GBA BIOS file to use<br />
-c, --cheats FILE Apply cheat codes from a file<br />
-g, --gdb Start GDB session (default port 2345)<br />
-v, --movie FILE Playback a movie of recorded input<br />
-p, --patch FILE Apply a specified patch file when running<br />
-s, --frameskip N Skip every N frames<br />
--version Print version and exit<br />
<br />
Graphics options:<br />
-1 1x viewport<br />
-2 2x viewport<br />
-3 3x viewport<br />
-4 4x viewport<br />
-5 5x viewport<br />
-6 6x viewport<br />
-f Start full-screen</pre><br />
<br />
==References==<br />
{{reflist}}<br />
<br />
==External links==<br />
* [https://twitter.com/mgba_emu Twitter]<br />
* [https://mgba.io/2017/10/01/mgba-0.6.1/ 0.6.1 release notes and feature list]<br />
<br />
{{Game Boy Advance emulators}}<br />
[[Category:Emulators]]<br />
[[Category:Game Boy/Game Boy Color emulators]]<br />
[[Category:Game Boy Advance emulators]]<br />
[[Category:Windows emulation software]]<br />
[[Category:macOS emulation software]]<br />
[[Category:Linux emulation software]]<br />
[[Category:IOS emulation software]]</div>172.68.25.172https://emulation.gametechwiki.com/index.php?title=Game_Boy/Game_Boy_Color_emulators&diff=34620Game Boy/Game Boy Color emulators2020-08-01T16:21:43Z<p>172.68.25.172: /* Game Boy Camera */</p>
<hr />
<div>{{Infobox console<br />
|title = Nintendo Game Boy/Color<br />
|logo = Game_Boy.png<br />
|developer = [[:Nintendo]]<br />
|type = [[:Category:Consoles|Handheld game console]]<br />
|generation = [[:Category:Fourth-generation video game consoles|Fourth generation]]<br />
|release = 1989<br />
|discontinued = 2003<br />
|predecessor = [[Game & Watch]]<br />
|successor = [[Virtual Boy emulators|Virtual Boy]]<br />
|emulated = {{✓}}<br />
}}<br />
The '''[[wikipedia:Game Boy|Game Boy]]''' (GB) and '''[[wikipedia:Game Boy Color|Game Boy Color]]''' (GBC) are 8-bit, fourth-generation handheld consoles released by Nintendo on July 31, 1989 and November 18, 1998 respectively and retailed for {{Inflation|USD|89.95|1998}}. The Game Boy has a Sharp LR35902 core CPU at 4.19 MHz. It had a monochrome display that could only show four shades of grey, albeit with a olive green tinge on the original. The Game Boy Color uses the same LR35902 core as the original; while it is clocked at 8.38 MHz, it can be underclocked to 4.19 MHz for backwards-compatibility purposes. It was named such from its color screen, but it also had a larger memory size and a faster CPU. The hardware similarities allow cross-compatibility between the two platforms and they are often treated as one. They would both be succeeded by the backward-compatible [[Game Boy Advance emulators|Game Boy Advance]].<br />
<br />
Nintendo re-released the console as the '''Game Boy Pocket''' in 1996, with a more compact body and a better screen. A front light was added to a special edition of the Pocket in Japan called the '''Game Boy Light''', a feature that wouldn't be seen outside of Japan until the Game Boy Advance SP.<br />
<br />
Nintendo released a peripheral for the [[Super Nintendo emulators|Super Nintendo Entertainment System]] called [[wikipedia:Super Game Boy|Super Game Boy]] in June 1994, which was modeled like a cartridge but included its own cartridge slot for Game Boy/Color games, as well as the hardware needed to translate the games. Many Game Boy/Color emulators offer at least some of the special features it included, such as added borders, colorization, custom button mappings, and other features. It was possible to link, but without the external port, as well as errors in the CPU, it would not be feasible to the end user. These issues would later be corrected in the Japan-exclusive Super Game Boy 2.<br />
<br />
==Emulators==<br />
Because of how relatively easy popular 8-bit consoles are to emulate, tons of Game Boy emulators exist. For a list of open-source projects, see [https://github.com/search?o=desc&q=gameboy+emulator&s=updated&type=Repositories&utf8=%E2%9C%93 this GitHub query]. For a list of accuracy tests, see [[GB/C Tests]].<br />
{| class="wikitable" style="text-align:center;"<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Latest Version<br />
! scope="col"|Game Link Support<br />
! scope="col"|[[libretro|Libretro Core]]<br />
! scope="col"|Active<br />
! scope="col"|[[Recommended Emulators|Recommended]]<br />
|-<br />
!colspan="7"|PC / x86<br />
|-<br />
|[[SameBoy]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://sameboy.github.io/downloads/ {{SameBoyVer}}]<br />
|{{✓}}<ref group=N name=sameboylink>SameBoy's libretro core supports Link Cable, standalone does not.</ref> ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[BGB]]<br />
|align=left|{{Icon|Windows}}<br />
|[http://bgb.bircd.org/#downloads {{BGBVer}}]<br />
|{{✓}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[Gambatte]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://sourceforge.net/projects/gambatte/files/gambatte/ {{GambatteVer}}]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[Gearboy]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://github.com/drhelius/Gearboy/releases {{GearboyVer}}]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[BizHawk]]<br />
|align=left|{{Icon|Windows}}<br />
|[http://tasvideos.org/BizHawk/ReleaseHistory.html {{BizHawkVer}}]<br />
|{{✓}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[VisualBoy Advance|VisualBoy Advance-M (VBA-M)]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.emucr.com/2015/06/visualboyadvance-m-svn-r1507.html SVN1507 (best)]<br/>[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}} (worst)]<br />
|{{✓}} ||{{✓}}<ref group=N name=one>Full GBC, GBA and GB support since version 2.1.3.</ref>||{{✓}} ||{{✓}}<br />
|-<br />
|[http://binji.github.io/binjgb/ binjgb]<br />
|align=left|{{Icon|Web}}<br />
|[https://github.com/binji/binjgb/releases {{binjgbVer}}]<br />
|{{✗}} ||{{✗}} ||{{✓}} ||{{~}}<br />
|-<br />
|[[MAME]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://www.mamedev.org/release.html {{MAMEVer}}]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{~}}<br />
|-<br />
|[http://emulicious.net Emulicious]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://emulicious.net/downloads/ {{EmuliciousVer}}]<br />
|{{✗}} ||{{✗}} ||{{✓}} ||{{~}}<br />
|-<br />
|[[higan]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[http://byuu.org/emulation/higan/ {{higanVer}}]<br />
|{{✗}} ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}}<ref group=N name=mgbalink>Pretty buggy but sometimes works.</ref> ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[GBE+]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[https://github.com/shonumi/gbe-plus/releases {{GBEVer}}]<br />
|{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[https://fms.komkon.org/VGB/ VGB]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://fms.komkon.org/VGB/ {{VGBVer}}]<br />
|{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[Pantheon]]<br />
|align=left|{{Icon|Windows}}<br />
|[http://bostjan-grandovec.si/Content/News.htm {{PantheonVer}}]<br />
|{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[http://hhug.me/ hhugboy]<br />
|align=left|{{Icon|Windows}}<br />
|[https://github.com/tzlion/hhugboy/releases/tag/v1.2.7 {{hhugboyVer}}]<br />
|{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|UGE<br />
|align=left|{{Icon|Windows}}<br />
|[https://github.com/SuperDisk/hUGETracker/releases {{UGEVer}}]<br />
|{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[[KiGB]]<br />
|align=left|{{Icon|Windows|Linux|macOS}}<br />
|[http://kigb.emuunlim.com/downloads.htm 2.05]<br />
|{{✓}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[[TGB Dual]]<br />
|align=left|{{Icon|Windows|Linux}}<ref group=N name=two>On Linux as an SDL port (and the [[libretro]] core is based on this version).</ref><br />
|[https://github.com/libertyernie/tgbdual_L/releases "L" v1.2]<br />
|{{✓}} ||{{✓}}<ref group=N name=two /> ||{{✗}} ||{{✗}}<br />
|-<br />
|GiiBiiAdvance<br />
|align=left|{{Icon|Windows|Linux}}<br />
|[https://github.com/AntonioND/giibiiadvance/releases 0.2.0]<br />
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|MetroBoy<br />
|align=left|{{Icon|Windows}}<br />
|[https://github.com/aappleby/MetroBoy/releases {{MetroBoyVer}}]<br />
|{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
!colspan="7"|Mobile / ARM<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}<br />
|[https://endrift.com/mgba/downloads.html {{MGBAVer}}]<br />
|? ||{{✓}} ||{{✓}} ||{{✓}}<br />
|-<br />
|GBA4iOS<br />
|align=left|{{Icon|iOS}}<br />
|[https://iemulators.com/gba4ios 2.1]<br />
|{{✓}} ||{{✗}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[Game Play Color]]<br />
|align=left|{{Icon|iOS}}<br />
|[https://github.com/gameplaycolor/gameplaycolor/releases {{GamePlayColorVer}}]<br />
|{{✗}}||{{?}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[http://www.explusalpha.com/home/gbc-emu GBC.emu]<br/><small>(Gambatte 0.5-wip based)</small><br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.explusalpha.GbcEmu 1.5.43]<br />
|? ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[https://my-oldboy-free-gbc-emulator.en.uptodown.com/android My OldBoy!]<br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.fastemulator.gbc 1.5.2]<br />
|{{✓}} ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|John GBC<br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.johnemulators.johngbc 3.80]<br />
|? ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[http://www.explusalpha.com/ GBA.emu]<br/><small>(VBA-M r1097 based)</small><br />
|align=left|{{Icon|Android}}<br />
|[https://play.google.com/store/apps/details?id=com.explusalpha.GbaEmu 1.5.43]<br />
|? ||{{✗}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[https://github.com/afjcjsbx/gambatte-droid GambatteDroid]<br />
|align=left|{{Icon|Android}}<br />
|1.2<br />
|? ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[http://arktos.se/meboy/ MeBoy]<br />
|align=left|{{Icon|Java}}<br />
|2.2<br />
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
!colspan="7"|Consoles<br />
|-<br />
|[http://gbatemp.net/threads/gameyob-a-gameboy-emulator-for-ds.343407/ GameYob DS]<br />
|align=left|{{Icon|NDS}}<br />
|[http://www.emucr.com/search/label/GameYob Git]<br />
|{{✓}} <small>(NiFi)</small> ||{{✗}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[https://gbatemp.net/threads/gameyob-3ds-gb-c-emu.372523/ GameYob 3DS]<br />
|align=left|{{Icon|3DS}}<br />
|[https://github.com/Steveice10/GameYob/releases v1.0.8]<br />
|? ||{{✗}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[VisualBoy_Advance#VBA-M|Visual Boy Advance-M (VBA-M)]]<br />
|align=left|{{Icon|GCN|Wii}}<br />
|r1231<br />
|{{✓}} ||{{✓}} <small>(as VBA-Next)</small> ||{{✓}} ||{{✓}}<br />
|-<br />
|[http://filetrip.net/psp-downloads/homebrew/download-masterboy-210-f28308.html MasterBoy]<br />
|align=left|{{Icon|PSP}}<br />
|2.10<br />
|{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<br />
|-<br />
|[[Virtual Console]]<br />
|align=left|{{Icon|3DS}}<br />
|8.10<br />
|{{✓}} <small>(Pokemon only)</small> ||{{✗}} ||{{✓}} ||{{✓}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Wii|3DS}}<br>{{Icon|PSV}}<br />
|[https://endrift.com/mgba/downloads.html {{MGBAVer}}]<br />
|? ||{{✓}} ||{{✓}} ||{{✗}}<br />
|-<br />
|[http://filetrip.net/psp-downloads/homebrew/download-gemp-homers-rin-33-final-f27565.html GeMP]<br />
|align=left|{{Icon|PSP}}<br />
|3.3 Final<br />
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|-<br />
|[http://dl.qj.net/psp/emulators/rin-v132-gameboy-emulator/gameboy-color-emulator.html RIN]<br />
|align=left|{{Icon|PSP}}<br />
|1.32<br />
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}}<br />
|}<br />
<references group=N /><br />
<br />
===Comparison===<br />
<br />
====Game Boy-only emulators====<br />
;[[SameBoy]]:A relatively new emulator, probably the most accurate Game Boy emulator currently. The UI is simple and easy to use. It includes open source bootroms, although these can be replaced with real ones. Also emulates Game Boy Camera and Game Boy Printer.<br />
;[[BGB]]:A closed-source emulator for Windows (and [[Wine]]) with 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 Game Boy colors and borders, though it doesn't emulate all of its functions. It also has an advanced debugger.<br />
;[[Gambatte]]:Extremely accurate open-source Game Boy/Color emulator. It has a good range of options and features, though not quite as much as some other emulators. It has not been as active lately.<br />
;[[TGB Dual]]:An ancient emulator that supports link cable emulation. It also supports [[netplay]], but it requires a VPN. The libretro port supports local multiplayer using player 2's controls.<br />
;[[KiGB]]:An old and obsolete emulator which boasted its 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 other emulators have caught up and are already doing much better.<br />
;[https://github.com/AntonioND/giibiiadvance GiiBiiAdvance]:Pioneered full GB Camera emulation, including webcam support. Aside from that, it's an unfinished emulator with the basics set up, but its promising future currently on hiatus. It has very accurate timing.<br />
<br />
;[https://github.com/aappleby/MetroBoy MetroBoy]:Extremely accurate Game Boy simulator which being written in a subset of C++ that's designed to to be mechanically translated into Verilog HDL.<br />
<br />
'''List of recommended GB/GBC emulators for Android:'''<br />
* [https://www.androidauthority.com/best-game-boy-emulators-for-android-368530/ 10 best Game Boy Advanced, Game Boy Color, and Game Boy emulators for Android] (SEPTEMBER 2, 2018. Includes some emulators not found in above charts. Reviews may be subjective.)<br />
<br />
====Backwards-compatible GBA emulators====<br />
;[[VisualBoy Advance#VBA-M|VisualBoy Advance-M <small>(VBA-M)</small>]]:Go-to emulator for both GBA and GB/C.<br />
;[[mGBA]]:Primarily emulates the [[Game Boy Advance emulators|Game Boy Advance]] but it also includes GB/C support much like the original system. It's still in development, but it's already on the level of many other emulators.<br />
;[[GBE+]]:A recently rewritten emulator that has a large effort in preserving the functions of [[#Game Boy Features|obscure accessories]] that other emulators don't focus on. It can also load custom tiles in games, including colorized tiles for original Game Boy titles.<br />
<br />
====[[Multi-system emulators]]====<br />
;[[higan]]:Because it started out as a [[Super Nintendo emulators|SNES emulator]] (its original name was bsnes), it was the first and only one that properly emulated all of the Super Game Boy's features, such as SPC sound chip utilization. Versions of bsnes at and before v073 used the Gambatte core for its Super Game Boy functionality, but byuu eventually made his own Game Boy core, which ended up having pretty good accuracy.<br />
;[[BizHawk]]:Uses a modified Gambatte core. It provides speedrunning tools.<br />
;[[MAME]]:Has solid Game Boy emulation through its <code>gameboy</code> driver despite the sound being imperfect, as well as slightly worse Game Boy Color compatibility through its <code>gbcolor</code> driver (where both the graphics and sound are imperfect). Despite its setbacks, it aims to feature compatibility with obscure mappers that other emulators usually ignore, like Wisdom Tree games or MMM01 multicarts. Accuracy was improved upon with contributions by Judge_.<br />
;[[Mednafen]]:Its Game Boy Advance core is forked from an old version of [[VisualBoy Advance]].<br />
<br />
==Emulation issues==<br />
<br />
===Oversaturation===<br />
[[File:Gbc over saturation2.png|thumb|right|350px|Comparison of saturation levels in [[VisualBoy Advance#VBA-M|VBA-M]] and [[Gambatte]].]]<br />
The Game Boy Color's screen is under-saturated. Game developers often work around this by using brighter colors knowing it'll be compensated for on hardware. This does not translate well in emulation, because standard LCD screens don't account for this sort of issue. Many emulators attempt to combat this issue with options that adjust accordingly; if not directly, then [[Shaders_and_Filters#Image_Adjustment|shader functionality]] may be implemented.<br />
<br />
This issue also affects [[Game Boy Advance emulators#Oversaturation|Game Boy Advance emulation]].<br />
<br />
===Unlicensed Mappers===<br />
Much like the NES, the Game Boy (and by extension, the Game Boy Color) used '''Memory Bank Controllers''' (MBC) (called MMCs on the NES) and also known informally as '''mappers''', to go beyond the restrictive initial hardware specifications. Nevertheless, Nintendo was much more careful to standardize their specifications to just a small number of possible mappers. Moreover, Game Boy ROMs now included an official internal header mandated by Nintendo that included the correct MMC type. This meant that for the officially licensed games, these mappers proved to be rarely a problem... with some notable unimplemented exceptions: Net de Get's MBC6 that offered downloadable content off the internet, and the MMM01 footer used for some official multi-cart games, among others.<br />
<br />
However, shit hits the fan when it comes to '''unlicensed games''', since they didn't necessarily respect Nintendo's specifications about how a given mapper type should handle its memory and behave in general, and internal headers were often filled with erroneous data to hinder dumping and emulation efforts. Some emulators like MESS and [http://hhug.me/?tags=hhugboy hhugboy] try to emulate that behavior with various degrees of success ([http://hhug.me/dump/ Compatibility List]). The hhugboy project also proposed a similar solution to iNES for this mapper problem, as the [http://hhug.me/gbx/1.0 gbx ROM format] that appends a footer with extra information needed for some unlicensed games. However, this format, much less unlicensed hardware quirks, isn't widely adopted aside from tentative mGBA support.<br />
<br />
==Hardware Features==<br />
===IR Transmitter===<br />
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+ had [https://shonumi.github.io/articles/art4.html basic IR emulation] back in July 2016 but it then only worked with Pokémon games. Now, as of [https://shonumi.github.io/articles/art11.html April 2018], it has full IR emulation for most IR-enabled games (Hudson Soft's HuC-1's IR capabilities need to be emulated for Japanese ''Pokémon TCG'').<br />
<br />
===Game Boy Camera===<br />
{| class="wikitable" style="text-align:center;"<br />
! scope="col"|Name<br />
! scope="col"|Platform(s)<br />
! scope="col"|Build to Use<br />
! scope="col"|[[Recommended Emulators|Recommended]]<br />
|-<br />
! colspan="4"|PC / x86<br />
|-<br />
|[[VisualBoy Advance#VBA-M|VBA-M]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}}]<br />
|{{✓}}<br />
|-<br />
|[[mGBA]]<br />
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}<br />
|[https://mgba.io/downloads.html {{MGBAVer}}]<br />
|{{✓}}<br />
|-<br />
|GiiBiiAdvance<br />
|align=left|{{Icon|Windows}}<br />
|?<br />
|{{✗}}<br />
|-<br />
|[[BGB]]<br />
|align=left|{{Icon|Windows}}<br />
|?<br />
|{{✗}}<br />
|-<br />
|Hashcam<br />
|align=left|{{Icon|Windows}}<br />
|[http://www.darkfader.net/gbc Source]<br />
|{{✗}}<br />
|}<br />
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.<br />
<br />
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.<br />
<br />
As of version 0.7.0, or any dev builds post 0.6.0, mGBA can emulate this accessory by either using the PC's webcam or sending a BMP, GIF, JPEG, PNG, or other image format to the game, as if it was coming from the camera itself.<ref name="mGBA_Cam">{{cite web|url=https://twitter.com/mGBA_emu/status/890954205472501762|title=Game Boy Camera in mGBA dev builds|publisher=Twitter|accessdate=2018-08-10|date=2017-07-28}}</ref> The camera is also functional on the 3DS port. 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>.<br />
<br />
===Game Boy Printer===<br />
Game Boy Printer is a thermal printer accessory released by Nintendo in 1998 used in conjunction with the Game Boy Camera and also used to prints images from compatible GB games such as ''Pokémon Gold and Silver'', ''Pokémon Crystal'', ''Super Mario Bros. Deluxe'', ''Donkey Kong Country'' and ''The Legend of Zelda: Link's Awakening DX''.<br />
<br />
[[VisualBoy Advance]] (including its forks), [[GBE+]] and [[mGBA]] have Game Boy Printer support that turn the signals into a bitmap form of the image.<br />
<br />
===Motion Control (Tilt Sensor)===<br />
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. [[VisualBoy Advance|VBA]] and [[KiGB]] have a "Motion Sensor" option to map four directional keys to emulate the cartridge tilting, but the controls aren't analog. [[BGB]] can emulate the tilting features with the use of the mouse.<br />
<br />
===Rumble===<br />
A good number of cartridges came with a built-in rumble that required an AAA battery to power, such as ''Pokémon Pinball'', but the feature is optional. It is unknown if any emulator supports this feature.<br />
<br />
===Multiplayer===<br />
* '''Link Cable:''' [[BGB]], [[KiGB]], some versions of [[VisualBoy Advance#VBA-M|VBA-M]] and [[TGB Dual|TGB-Dual]] supports link cable. It can also be used for Netplay on the corresponding [[RetroArch]] core.<br />
* '''4-Player Adapter:''' Currently only [[GBE+]] supports it. There is a 16-Player adapter as well, but it went unreleased outside of unused code in some games, and as such isn't emulated.<br />
<br />
===Online Features===<br />
====Mobile Game Boy Adapter====<br />
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 saw use on some Game Boy Color and Game Boy Advance games, but support was limited to Japan, and the servers went offline by 2002.<br />
<br />
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 and made [https://www.reddit.com/r/EmuDev/comments/9141oy/making_progress_with_gb_mobile_adapter_emulation/ some progress in July 2018], but otherwise, no emulators (except for a recently leaked at time of writing internal emulator) properly support this accessory.<br />
<br />
====Hudsonsoft KISS Link====<br />
This accessory both allowed IR communications between 2 gameboys before the Game Boy Color existed with it’s IR port and with a modem, it allowed users to download exclusive content by them from Hudsonsoft's website. No emulator supports this. Resources about this super obscure accessory include http://nectaris.tg-16.com/GB-KISS-LINK-FAQ-hudson-gameboy-nectaris.html and https://www.youtube.com/watch?v=uOuJ0EcA8IQ<br />
<br />
===Accessories===<br />
There are [[wikipedia:Game Boy accessories#Game Boy|a few accessories that the Game Boy and Game Boy Color]] had. Due to their very small and game-specific use, most emulators don't bother with them at all, save for GBE+.<br />
<br />
* '''Game Boy Pocket Sonar:''' Japan only cartridge released by Bandai. It is a sonar-enabled device used for fishing with a fishing game included. Only GBE+ [https://shonumi.github.io/articles/art13.html supports] this feature. A similar cartridge was released for the WonderSwan (still unemulated).<br />
* '''Barcode Boy:''' An obscure Japan-only barcode-scanning device released by Namcot (then-Namco's consumer division) in 1992. A 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 accepts it as a valid barcode. GBE+ has [https://shonumi.github.io/articles/art7.html proper emulation] with the ability to read barcodes from binary files.<br />
* '''Barcode Taisen Bardigun:''' Another Japan only barcode-scanning device with the dedicated game. GBE+ [https://shonumi.github.io/articles/art6.html supports this accessory].<br />
* '''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 name="IZEK_1">{{cite web|url=https://www.youtube.com/watch?v=AlhJKMXU7tg&t=5m25s|title=Game Boy Part 2 - Did You Know Gaming? Feat. Jake of Vsauce3|publisher=Youtube|accessdate=2018-08-10|date=2014-05-24}}</ref><ref name="IZEK_2">{{cite web|url=https://www.youtube.com/watch?v=K-Epj2_eJdA|title=Singer IZEK Digital Sewing Machine - Gameboy Color Controller (Game Boy Color) Review|publisher=Youtube|accessdate=2018-08-10|date=2014-06-24}}</ref> Despite the IZEK's rarity, support for it has been added in a recent GBE+ release.<ref>[https://shonumi.github.io/articles/art22.html Edge of Emulation: Game Boy Sewing Machines]</ref><br />
<br />
==References==<br />
{{reflist}}<br />
<br />
==External links==<br />
* [http://gbdev.gg8.se/wiki/articles/Main_Page Game Boy Development Wiki] – Information about the Game Boy<br />
* [http://www.youtube.com/watch?v=h_j0w7r6xSk Emulating Game Boy Camera and Game Boy Printer in BGB (work in progress)] – Game Boy Camera ROM running in BGB unofficially by exploiting linking capabilities <br />
<br />
<br />
{{Nintendo}}<br />
<br />
[[Category:Consoles]]<br />
[[Category:Nintendo consoles]]<br />
[[Category:Game Boy/Game Boy Color emulators|*]]<br />
[[Category:Fourth-generation video game consoles]]</div>172.68.25.172