Changes

Jump to navigation Jump to search

Game Boy Advance emulators

1,044 bytes added, 00:12, 30 November 2022
m
Emulators: Mobile/ARM and Consoles: moved some emulators for a cleaner "recommandation order"
{{for|other emulators that run on GBA hardware|Emulators on GBA}}
 
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 288KB of RAM and 96KB of VRAM.
! scope="col"|[[Recommended Emulators|Recommended]]
|-
!colspan="1312"|PC /x86
|-
|[[mGBA]]
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
|[https://mgba.io/builds/1/ Dev builds]<br/> [https://mgba.io/downloads.html {{MGBAVer}}]
|{{✓}} ||{{~}}<ref group=N name=medusa>Experimental separate build under the name of [[mGBA#medusa|medusa]].</ref> ||{{✓}} ||{{✓}} ||{{✓}} ||Mid-High ||{{✓}} ||{{✓}} ||{{✓}}
|-
|[[VisualBoy Advance#VBA-M|VBA-M]]
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
|[https://nightly.vba-m.com/ Nightly builds]<br/> [http://buildbot.libretro.com/nightly/ libretro core] <br/> [https://github.com/visualboyadvance-m/visualboyadvance-m/releases {{VBAMVer}}]
|{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||Mid ||{{✓}} ||{{✓}} ||{{~}}
|-
|[[NanoBoyAdvance]]
|align=left|{{Icon|Windows|Linux|macOS}}
|[https://nightly.link/nba-emu/NanoBoyAdvance/workflows/build/master Dev builds]<br/> [https://github.com/nba-emu/NanoBoyAdvance/releases 1.6]|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||[https://old.reddit.com/r/emulation/comments/wnn3pk/nanoboyadvance_16_is_released/ik8vrea/ High-Cycle] ||{{✓}} ||{{✓}} ||{{~}}
|-
|[[ares]]
|align=left|{{Icon|Windows|Linux|macOS}}
|[https://github.com/ares-emulator/ares/actions/workflows/build.yml git]<br/> [https://github.com/ares-emulator/ares/releases {{aresVer}}]
|{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||High ||{{✓}} ||{{✓}} ||{{~}}
|-
|[[higan]]SkyEmu|align=left|{{Icon|Windows|Linux|macOS|Web}}|[httphttps://byuugithub.orgcom/emulationskylersaleh/higan {{higanVer}}SkyEmu/releases/ v2]|{{✓}} ||{{✗}} ||{{✗}} [https://github.com/skylersaleh/SkyEmu/issues/44 *] ||{{✗}} ||{{}} ||High ||{{✓}} ||{{✓}} ||{{~}}|-|[[VisualBoy Advance#VBA-M|VBA-M]]|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}|[https://github.com/visualboyadvance-mskylersaleh/visualboyadvanceSkyEmu#accuracycompatibility High-m/releases {{VBAMVer}}Cycle]|{{✓}} ||{{✗}} ||{{✓}} ||{{✓}} ||{{✓}} ||Mid ||{{✓}} ||{{✓}} ||{{~}}[https://old.reddit.com/r/emulation/comments/vve0em/release_of_skyemu_10/ifnhj8y/ *]
|-
|[[GBE+]]
|align=left|{{Icon|Windows|Linux|macOS}}
|[https://github.com/shonumi/gbe-plus /releases {{GBEVer}}]|{{✓}} ||{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||? ||{{✓}} ||{{✓}} ||{{~}}|-|SkyEmu|align<ref group=N name=left|{{Icon|Windows|Linux|macOS}}|[https:GBE+DS>Experimental //githubWIP.com</skylersaleh/SkyEmu git]|{{✓}} ref> ||{{~}} ||{{~}} ||{{~}} ||{{✗}} ||[https://github.com/skylersaleh/SkyEmu#accuracycompatibility High-Cycle] ? ||{{✓}} ||{{✓}} ||{{✗}}
|-
|[[MAME]]
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
|[http://www.mamedev.org/release.html {{MAMEVer}}]
|{{✓}} ||{{✗}} ||? ||{{✗}} ||{{✓}} ||High? ||{{✓}} ||{{✓}} ||{{✗}}|-Cycle |[[higan]]|align=left|{{Icon|Windows|Linux|macOS}}|[https://github.com/higan-emu/higan/releases/tag/v110 {{higanVer}}]|{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||High ||{{✓}} ||{{✗}} ||{{✗}}
|-
|iDeaS
|[https://fms.komkon.org/VGBA VGBA]
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
|[https://fms.komkon.org/VGBA /#Downloads {{VGBAVer}}]
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||? ||{{✗}} ||{{✓}} ||{{✗}}
|-
|{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||Mid ||{{✗}} ||{{✓}} ||?
|-
!colspan="1312"|Mobile / ARM
|-
|[[mGBA]]<ref group=N name=libretro>Only available on mobile as a libretro core (e.g. [[RetroArch]]).</ref>
|{{✓}}<ref group=N name=pizzaboygbc>Separate app called Pizza Boy GBC.</ref> ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}} ||Mid ||{{✗}} ||{{✓}} ||{{✓}}
|-
|[httphttps://www.explusalpha.com/ contents/gba-emu GBA.emu]<br/><small>(VBA-M 2.1.4 based)</small>
|align=left|{{Icon|Android|Pyra}}
|[https://play.google.com/store/apps/details?id=com.explusalpha.GbaEmu {{.emuVer}}][https://github.com/Rakashazi/emu-ex-plus-alpha git]</br>[https://pyra-handheld.com/repo/apps/75 1.5.46.02 Pyra]
|[http://repo.openpandora.org/?page=detail&app=package.gpsp.notaz 0.9.2.8 Pandora]
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||Mid ||{{✓}} ||{{✗}} ||{{✓}}
|-
|SkyEmu
|align=left|{{Icon|Android|iOS}}
|[https://github.com/skylersaleh/SkyEmu v3]
|{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} || ||{{✓}} ||{{✓}} ||{{~}}
|-
|[https://forums.windowscentral.com/app-spotlight/252987-trio-nintendo-emulators-vba8-vgbc8-snes8x.html VBA10]
|[[VisualBoy Advance#VBA-M|VBA-M]]<ref group=N name=libretro />
|align=left|{{Icon|Android|iOS|Linux|Pandora}}
|[https://github.com/visualboyadvance-m/visualboyadvance-m /releases 2.1.4]
|{{✓}} ||{{✗}} ||{{✓}} ||? ||{{✓}} ||? ||{{✓}} ||{{✓}} ||{{✗}}
|-
!colspan="1312"|Consoles
|-
|[[mGBA]]
|align=left|{{Icon|Wii|Switch}}<br>{{Icon|3DS|PSV}}
|[https://mgba.io/downloads.html {{MGBAVer}}]
|{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||Mid ||{{✓}} ||{{✓}} ||{{✓}}<small>(3DS just new models work)<small>
|-
|[[gpSP]]
|align=left|{{Icon|PSP|DC}}<br/>{{Icon|PS2}}<br/>{{Icon|3DS}}
|?
|? ||? ||? ||? ||{{}} <small>(PS2/3DS)</small> ||? ||{{✓}} ||{{✗}} ||{{}}<small>(3DS just new models work)<small>
|-
|[[gpSP#PSP_version|TempGBA4PSP]]
|align=left|{{Icon|3DS|WiiU}}
|8.10
|{{✓}} <small>(3DS only)<small> ||{{✓}} <small>(Wii U only)<small> ||{{✓}} <small>(Pokemon only)</small> ||{{✗}} ||{{✗}} ||Native (3DS only)||{{✗}} ||{{✗}} ||{{✓}}|-|[[ReGBA]]|Align=left|{{Icon|PS2}}|[https://www.ps2-home.com/forum/viewtopic.php? t=1332]|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||Low-Mid ||{{✓}} ||{{?}} ||{{✓}}
|-
|[https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA emGBA]
|align=left|{{Icon|GCN|Wii}}
|[https://files.extremscorner.org/gamecube/apps/mgba/latest git]
|{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||Mid ||{{✓}} ||{{✓}} ||{{✓}}|-|[[gpSP]]|align=left|{{Icon|PSP}}|0.91|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||Mid ||{{✓}} ||{{✗}} ||{{✓}}
|-
|[[VisualBoy Advance#VBA-GX|VBA GX]]
|[https://github.com/dborth/vbagx/releases git]
|{{✓}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}<ref group=N>As VBA-Next.</ref> ||Mid ||{{✓}} ||{{✓}} ||{{✗}}
|-
|[[gpSP]]
|align=left|{{Icon|PSP}}
|0.91
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||Mid ||{{✓}} ||{{✗}} ||{{✗}}
|-
|Gbaemu4DS
===Comparisons===
;[[mGBA]]:Aims for accuracy, speed, and features. For its accuracy, it's gradually becoming the best at that. It's actively developed and has features VBA-M lacks such as a Tilt Sensor, and more recently Game Boy Camera support. It currently does not have an official Android build.
;[[SkyEmu]]:Low level Game Boy, Game Boy Color and Game Boy Advance emulator. Its primary focus is to provide a good user experience through a good mixture of tradeoffs of [https://github.com/skylersaleh/SkyEmu/blob/dev/docs/Accuracy.md accuracy], performance, features and usability. Per Pixel PPU Implementation capable of both scan line and mid scan line effects [https://github.com/skylersaleh/SkyEmu#accuracycompatibility (SkyEmu is the only GBA emulator released to support this)] and Full instruction pipeline and prefetch emulation;[[NanoBoyAdvance]]:[https://github.com/nba-emu/NanoBoyAdvance/blob/master/docs/ACCURACY.md Highly accurate] Game Boy Advance emulator. It aims for cycle-accurate emulation when possible, while also offering enhancements such as improved audio quality. Cycle-accurate emulation of the CPU, DMA, timers and Game Pak prefetch buffer but [https://github.com/nba-emu/NanoBoyAdvance#accuracy /pull/258 Cycle-accurate PPU emulation is an active topic of research and will be implemented, once the timing has been understood and documented well enough.]
;[[VisualBoy Advance|Visual Boy Advance (VBA)]]:The original GBA emulator. Discovered to have an <abbr title="Arbitrary Code Execution">ACE</abbr> vulnerability detailed below.
:;[[VisualBoy Advance#VBA-M|Visual Boy Advance-M (VBA-M)]]:A fork with additional improvements. It is behind in terms of accuracy and performance compared to mGBA.
::;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.
;[[SkyEmu]]:Low level Game Boy, Game Boy Color and Game Boy Advance emulator. Its primary focus is to provide a [https://old.reddit.com/r/emulation/comments/ybejxv/skyemu_v2_release/itutt2h/ good user experience] through a good mixture of tradeoffs of [https://github.com/skylersaleh/SkyEmu/blob/dev/docs/Accuracy.md accuracy], performance, features and usability. [https://github.com/skylersaleh/SkyEmu#accuracycompatibility Per Pixel PPU Implementation capable of both scan line and mid scan line effects] and Full instruction pipeline and prefetch emulation
;[[higan]] / [[ares]]:It is behind in terms of performance compared to mGBA and VBA-M.
;[[MAME]]:Has a <code>gba</code> driver markup as working but both graphics and sound are [http://adb.arcadeitalia.net/dettaglio_mame.php?game_name=gba "imperfect"] as of version 0.249.
;[[gpSP]]:Its last official version was 0.91. 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.
;[[higan]] / [[ares]]:Its GBA core is cycle-accurate as of v095, but it is behind in terms of performance compared to mGBA and VBA-M.
;[[MAME]]:Has a <code>gba</code> driver markup as working but both graphics and sound are "imperfect".
'''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:
|[[DeSmuME]]
|align=left|{{Icon|Windows|Linux|macOS}}
|[https://ci.appveyor.com/project/zeromus/desmume /build/artifacts {{DeSmuMEVer}}]
|{{✗}} ||{{✗}} ||{{✗}} ||{{✗}} ||{{✓}}
|}
===GBA/DS Connectivity===
:''Main section: [[Nintendo_DS_emulators#GBA.2FDS_Connectivity2FDS_connectivity|Nintendo DS § GBA/DS Connectivity]]''
===e-Reader===
|-
| Motion Control
| {{~}}[https://github.com/shonumi/gbe-plus/issues/131#issuecomment-1197607060 *]
| {{✓}}
| {{✗}}
====Emulation====
* mGBA includes full motion control support using the motion sensor present in controllers like DualShock 4, DualSense and Switch Pro Controller.
* 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.
* VBA-M core on RetroArch includes motion control support by using a controller stick (left or right)
* mGBA includes full motion control support in latest dev builds using the motion sensor present in controllers like DualShock 4, Switch Pro Controller, etc.
* My Boy! uses the device's accelerometer to emulate this feature. You can change the sensitivity under Settings -> Input -> Cartridge Features -> "Motion sensitivity" menu.
* Pizza Boy GBA also used the device's accelerometer to emulate this feature for games like WarioWare: Twisted and Yoshi's Universal Gravitation.
67
edits

Navigation menu