Difference between revisions of "MGBA"

From Emulation General Wiki
Jump to navigation Jump to search
(Notable features)
(43 intermediate revisions by 32 users not shown)
Line 1: Line 1:
 
{{lowercase title}}
 
{{lowercase title}}
{{infobox
+
{{Infobox emulator
|image = Mgba-logo.png
+
|title = mGBA
|imagecaption =
+
|logo = Mgba-logo.png
|imagewidth = 128
+
|logowidth = 140
|first = {{mGBAVer}}
+
|version = {{mGBAVer}}
|second = Active
+
|active = Yes
|third = Multi-platform
+
|platform = Windows, macOS, Ubuntu, 3DS, Wii Switch, PS Vita
|fourth = [https://github.com/endrift Jeffrey Pfau (endrift)]
+
|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]]
|fifth = [https://endrift.com/mgba/ mGBA]
+
|developer = [https://github.com/endrift Vicki Pfau (endrift)]
|sixth = [https://github.com/mgba-emu/mgba/ GitHub]}}
+
|accuracy = Highly-Accurate
 +
|prog-lang = C, C++
 +
|website = [https://mgba.io/ mGBA]
 +
|support = [https://www.patreon.com/mgba Patreon]
 +
|license = MPL v2.0
 +
|source = [https://github.com/mgba-emu/mgba/ GitHub]
 +
}}
  
[[mGBA]] is an open-source [[Game Boy Advance emulators|Game Boy Advance emulator]]. It aims for both speed and accuracy.
+
'''mGBA''' is a free and 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. As of yet, it's the most complete GBA emulation effort, passing the older project [[VisualBoy_Advance|VBA and its forks]]. It is also available as a [[Libretro]] core for [[RetroArch]]. As of 0.9.0, mGBA with a stripped-down GUI has been integrated into [[Dolphin]] recently for games supporting connectivity features.<ref>[https://dolphin-emu.org/blog/2021/07/21/integrated-gba/ mGBA Integration: Introducing the Integrated GBA]</ref>
  
==Downloads==
+
==Download==
* [https://endrift.com/mgba/downloads.html Stable and nightly builds]
+
{| cellpadding="4"
 +
|-
 +
|align=center|{{Icon|Win|Lin|Mac}}
 +
|'''[https://mgba.io/downloads.html#current-downloads mGBA Stable and Nightly builds for computers]'''
 +
|-
 +
|align=center|{{Icon|NX|3DS|Vita|Wii}}
 +
|'''[https://mgba.io/downloads.html#current-downloads mGBA Stable and Nightly builds for consoles (homebrew)]'''
 +
|-
 +
|align=center|{{Icon|Win|Lin|Mac}}
 +
|'''[https://mgba.io/downloads.html#medusa-1 medusa Dev builds]'''
 +
|}
  
 
==Notable features==
 
==Notable features==
mGBA is a GBA emulator written from scratch with portability, accuracy and performance in mind. As of yet, it is the most complete GBA emulation effort. It aims to be easier to port and maintain than its older counterpart, [[VBA]] (or VBA-M). It's also available as a [[Libretro|libretro]] core. Notable features over other GBA emulators include:
 
 
 
* [https://mgba.io/2014/12/28/classic-nes/ NES Classic series compatibility]
 
* [https://mgba.io/2014/12/28/classic-nes/ NES Classic series compatibility]
 
* Local multi-pak link cable support, up to 4 players
 
* Local multi-pak link cable support, up to 4 players
* Complete solar sensor emulation (Boktai series), without the need of game-specific patches
+
* Extensive hardware-based emulation that removes the need for game-specific patches
* Tilt sensor (WarioWare: Twisted!, Yoshi's Universal Gravity)
+
** Solar sensor emulation for the Boktai series
* Rumble Pak (Drill Dozer, WarioWare: Twisted!)
+
** Tilt sensor emulation for games like WarioWare: Twisted! and Yoshi Topsy-Turvy (Yoshi's Universal Gravitation)
* As of April 8, 2017, a separate build named Medusa introduced the ability to emulate [[Nintendo DS emulators|DS]] games.<ref>https://mgba.io/2017/04/08/medusa</ref> This feature is a work in progress and in alpha, which means accuracy is spotty and features are lacking. The author has no plans to have Medusa replace mGBA.
+
** Rumble Pak emulation for games like Drill Dozer and WarioWare: Twisted!
 
+
** Battle Chip Gate, Progress Chip Gate, and Beast Link Gate emulation for Rockman.EXE 4, 4.5, 5, and 6
Some other perks mGBA offers are:
+
** Real-time clock (Boktai series, Pokémon series, Rockman EXE 4.5 Real Operation), synced to system time or set arbitrarily
 
+
* Support for BPS/beat, IPS and UPS patching at runtime, including ROMs in compressed archives (.7z/.zip)
 +
* Game overrides, forcing games to use specific save formats or sensors (tilt, solar, etc.)
 +
* Very basic cheat code support (AR, GS, CB), though without search options
 
* Save states <!-- would be more notable if it didn't support them -->
 
* Save states <!-- would be more notable if it didn't support them -->
 
* Fast-forwarding and rewinding
 
* Fast-forwarding and rewinding
* Very basic cheat code support (AR, GS, CB), though without search options
+
* e-Reader support
* Real-time clock (Boktai series, Pokémon series, Rockman EXE 4.5 Real Operation), synced to system time or set arbitrarily
+
* Dolphin/JOY bus link cable support
* Support for BPS/beat, IPS and UPS patching at runtime, including ROMs in compresed archives (.7z/.zip)
+
 
* Game overrides, forcing games to use specific save formats or sensors (tilt, solar, etc.)
+
Some features that are still planned include<ref>https://mgba.io/2014/12/09/announcing-mgba/</ref>:
  
And finally, there are some other currently unimplemented but planned features.<ref>https://mgba.io/2014/12/09/announcing-mgba/</ref> These include:
+
* ''Networked'' multiplayer link cable support
 +
* M4A audio mixing, for higher quality sound than hardware
 +
* Re-recording support for tool-assist runs
 +
* Lua support for scripting
 +
* A comprehensive debug suite
 +
* Wireless adapter support (Mario Golf, Classic NES Series, Pokémon FireRed/LeafGreen/Emerald, the built-in software when no game is inserted)
  
* GC/GBA connectivity with Dolphin
+
==medusa==
* e-Reader emulation
+
'''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.
* TAS and ROM hacking-oriented options
 
* Single-pak link cable emulation
 
* Wireless adapter emulation (Mario Golf, Classic NES Series, Pokémon FireRed/LeafGreen/Emerald, built-in software when no game is inserted)
 
  
==Command line shortcuts==
+
==Manual (CLI version)==
usage: mgba [option ...] file
+
:''<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>''
 +
<pre>usage: mgba [option ...] file
  
 
Generic options:
 
Generic options:
Line 50: Line 69:
 
   -c, --cheats FILE  Apply cheat codes from a file
 
   -c, --cheats FILE  Apply cheat codes from a file
 
   -g, --gdb          Start GDB session (default port 2345)
 
   -g, --gdb          Start GDB session (default port 2345)
   -v, --movie FILE    Play back a movie of recorded input
+
   -v, --movie FILE    Playback a movie of recorded input
 
   -p, --patch FILE    Apply a specified patch file when running
 
   -p, --patch FILE    Apply a specified patch file when running
 
   -s, --frameskip N  Skip every N frames
 
   -s, --frameskip N  Skip every N frames
Line 62: Line 81:
 
   -5              5x viewport
 
   -5              5x viewport
 
   -6              6x viewport
 
   -6              6x viewport
   -f              Start full-screen
+
   -f              Start full-screen</pre>
  
 
==References==
 
==References==
Line 68: Line 87:
  
 
==External links==
 
==External links==
* [https://mgba.io/2016/07/11/mgba-0.4.1/ 0.4.1 release notes and feature list]
+
* [https://twitter.com/mgba_emu Twitter]
* [https://twitter.com/mgba_emu mGBA Twitter account]
 
  
<!--{{Game Boy Advance emulators}}-->
+
{{Game Boy Advance emulators}}
 
[[Category:Emulators]]
 
[[Category:Emulators]]
 +
[[Category:Console emulators]]
 +
[[Category:Handheld console emulators]]
 +
[[Category:Game Boy/Game Boy Color emulators]]
 
[[Category:Game Boy Advance emulators]]
 
[[Category:Game Boy Advance emulators]]
 
[[Category:Windows emulation software‏‎]]
 
[[Category:Windows emulation software‏‎]]
[[Category:OS X emulation software]]
+
[[Category:macOS emulation software]]
 
[[Category:Linux emulation software]]
 
[[Category:Linux emulation software]]
[[Category:Game Boy emulators]]
+
[[Category:iOS emulation software]]
 +
[[Category:3DS emulation software]]
 +
[[Category:Switch emulation software]]
 +
[[Category:PlayStation Vita emulation software]]

Revision as of 18:30, 27 December 2021

mGBA
Mgba-logo.png
Developer(s) Vicki Pfau (endrift)
Latest version 0.10.3
Active Yes
Platform(s) Windows, macOS, Ubuntu, 3DS, Wii Switch, PS Vita
Emulates Game Boy Advance
Game Boy
Game Boy Color
Accuracy Highly-Accurate
Website mGBA
Support ($) Patreon
Programmed in C, C++
License MPL v2.0
Source code GitHub

mGBA is a free and open-source Game Boy/Color and Game Boy Advance emulator developed by endrift. Being written from scratch, it aims for speed, accuracy, and portability. As of yet, it's the most complete GBA emulation effort, passing the older project VBA and its forks. It is also available as a Libretro core for RetroArch. As of 0.9.0, mGBA with a stripped-down GUI has been integrated into Dolphin recently for games supporting connectivity features.[1]

Download

Windows Linux macOS mGBA Stable and Nightly builds for computers
Switch Nintendo 3DS Vita Wii mGBA Stable and Nightly builds for consoles (homebrew)
Windows Linux macOS medusa Dev builds

Notable features

  • NES Classic series compatibility
  • Local multi-pak link cable support, up to 4 players
  • Extensive hardware-based emulation that removes the need for game-specific patches
    • Solar sensor emulation for the Boktai series
    • Tilt sensor emulation for games like WarioWare: Twisted! and Yoshi Topsy-Turvy (Yoshi's Universal Gravitation)
    • Rumble Pak emulation for games like Drill Dozer and WarioWare: Twisted!
    • Battle Chip Gate, Progress Chip Gate, and Beast Link Gate emulation for Rockman.EXE 4, 4.5, 5, and 6
    • Real-time clock (Boktai series, Pokémon series, Rockman EXE 4.5 Real Operation), synced to system time or set arbitrarily
  • Support for BPS/beat, IPS and UPS patching at runtime, including ROMs in compressed archives (.7z/.zip)
  • Game overrides, forcing games to use specific save formats or sensors (tilt, solar, etc.)
  • Very basic cheat code support (AR, GS, CB), though without search options
  • Save states
  • Fast-forwarding and rewinding
  • e-Reader support
  • Dolphin/JOY bus link cable support

Some features that are still planned include[2]:

  • Networked multiplayer link cable support
  • M4A audio mixing, for higher quality sound than hardware
  • Re-recording support for tool-assist runs
  • Lua support for scripting
  • A comprehensive debug suite
  • Wireless adapter support (Mario Golf, Classic NES Series, Pokémon FireRed/LeafGreen/Emerald, the built-in software when no game is inserted)

medusa

medusa is a Nintendo DS emulator being developed by mGBA developer endrift[3]. 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"[4] 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.

Manual (CLI version)

Note: The Ubuntu version consists of both a command-line version (mgba-sdl) and GUI version (mgba-qt). The command-line version does not need to be installed if you aren't going to run it. The main dependency for both is libmgba.
usage: mgba [option ...] file

Generic options:
  -b, --bios FILE     GBA BIOS file to use
  -c, --cheats FILE   Apply cheat codes from a file
  -g, --gdb           Start GDB session (default port 2345)
  -v, --movie FILE    Playback a movie of recorded input
  -p, --patch FILE    Apply a specified patch file when running
  -s, --frameskip N   Skip every N frames
  --version           Print version and exit

Graphics options:
  -1               1x viewport
  -2               2x viewport
  -3               3x viewport
  -4               4x viewport
  -5               5x viewport
  -6               6x viewport
  -f               Start full-screen

References

External links

Nintendo Game Boy Advance Emulators