mGBA

From Emulation General Wiki
Jump to navigation Jump to search

mGBA
Mgba-logo.png
Developer(s) Vicki Pfau (endrift)
Latest version 0.10.3 [+]
Active Yes
Platform(s) Windows
macOS
Linux
FreeBSD
Android (RetroArch)
iOS (RetroArch)
3DS
Wii
Switch
Vita
Emulates Game Boy Advance
Game Boy
Game Boy Color
Accuracy Highly-Accurate
Website mGBA
Support ($) Patreon
Programmed in C, C++
License MPL 2.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[edit]

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[edit]

  • 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[edit]

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)[edit]

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-qt [option ...] file

Generic options:
  -b, --bios FILE            GBA BIOS file to use
  -c, --cheats FILE          Apply cheat codes from a file
  -C, --config OPTION=VALUE  Override config value
  -d, --debug                Use command-line debugger
  -g, --gdb                  Start GDB session (default port 2345)
  -l, --log-level N          Log level mask
  -t, --savestate FILE       Load savestate when starting
  -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, -2, -3, -4, -5, -6, -7, -8  Scale viewport by 1-8 times
  -f, --fullscreen                Start full-screen
  --scale X                       Scale viewport by X times

Frontend options:
  --ecard FILE  Scan an e-Reader card in the first loaded game
                Can be passed multiple times for multiple cards
  --mb FILE     Boot a multiboot image with FILE inserted into the ROM slot

References[edit]

External links[edit]

Nintendo Game Boy Advance Emulators