MGBA: Difference between revisions

No edit summary
m page formatting
 
(18 intermediate revisions by 11 users not shown)
Line 4: Line 4:
|logo = Mgba-logo.png
|logo = Mgba-logo.png
|logowidth = 140
|logowidth = 140
|version = {{mGBAVer}}
|version = {{Version|mGBA}}
|active = Yes
|active = Yes
|platform = Windows, macOS, Ubuntu, 3DS, Wii Switch, PS Vita
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on Linux|Linux]]<br>[[Emulators on BSD|FreeBSD]]<br/>[[Emulators on Android|Android]] (RetroArch)<br/>[[Emulators on iOS|iOS]] (RetroArch)<br/>[[Emulators on 3DS|3DS]]<br/>[[Emulators on Wii|Wii]]<br/>[[Emulators on Switch|Switch]]<br/>[[Emulators on Vita|Vita]]
|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]]
|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]]
|developer = [https://github.com/endrift Vicki Pfau (endrift)]
|developer = [https://github.com/endrift Vicki Pfau (endrift)]
|accuracy = Highly-Accurate
|accuracy = Highly-Accurate
|prog-lang = C, C++
|prog-lang = {{Proglang|C}}, {{Proglang|C++}}
|website = [https://mgba.io/ mGBA]
|website = [https://mgba.io/ mGBA]
|support = [https://www.patreon.com/mgba Patreon]
|support = [https://www.patreon.com/mgba Patreon]
|license = MPL v2.0
|license = {{License|MPL2}}
|source = [https://github.com/mgba-emu/mgba/ GitHub]
|source = [https://github.com/mgba-emu/mgba/ GitHub]
|issuetracker = [https://github.com/mgba-emu/mgba/issues GitHub]
}}
}}
'''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]].
 
'''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.  


==Download==
==Download==
{| cellpadding="4"
{| cellpadding="4"
|-
|-
|align=center|{{Icon|Win|Lin|Mac|NX|3DS|Vita|Wii}}
|align=center|{{Icon|Win|Lin|LinuxARM|macOSARM|macOSx64|W7}}
|'''[https://mgba.io/downloads.html#current-downloads mGBA Stable and Nightly builds]'''
|'''[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}}
|align=center|{{Icon|Win|Lin|Mac}}
|'''[https://mgba.io/downloads.html#medusa-1 medusa Dev builds]'''
|'''[https://mgba.io/downloads.html#medusa-1 medusa Dev builds]'''
|}
|}
==Overview==
Being written from scratch, mGBA 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>


==Notable features==
==Notable features==
Line 33: Line 41:
* Extensive hardware-based emulation that removes the need for game-specific patches
* Extensive hardware-based emulation that removes the need for game-specific patches
** Solar sensor emulation for the Boktai series
** Solar sensor emulation for the Boktai series
** Tilt sensor emulation for games like WarioWare: Twisted! and Yoshi's Universal Gravity
** 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!
** 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
** Battle Chip Gate, Progress Chip Gate, and Beast Link Gate emulation for Rockman.EXE 4, 4.5, 5, and 6
Line 42: Line 50:
* 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
* e-Reader support
* Dolphin/JOY bus link cable support


Some features that are still planned include:<ref>https://mgba.io/2014/12/09/announcing-mgba/</ref>
Some features that are still planned include<ref>https://mgba.io/2014/12/09/announcing-mgba/</ref>:


* ''Networked'' multiplayer link cable support
* ''Networked'' multiplayer link cable support
* Dolphin/JOY bus link cable support (which is being taken up on Dolphin's side since they specifically developed connectivity for VBA)
* M4A audio mixing, for higher quality sound than hardware
* M4A audio mixing, for higher quality sound than hardware
* Re-recording support for tool-assist runs
* Re-recording support for tool-assist runs
* Lua support for scripting
* Lua support for scripting
* A comprehensive debug suite
* A comprehensive debug suite
* e-Reader support
* Wireless adapter support (Mario Golf, Classic NES Series, Pokémon FireRed/LeafGreen/Emerald, the built-in software when no game is inserted)
* Wireless adapter support (Mario Golf, Classic NES Series, Pokémon FireRed/LeafGreen/Emerald, the built-in software when no game is inserted)


==medusa==
==medusa==
'''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.
'''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.


==Manual (CLI version)==
==Manual (CLI version)==
:''<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>''
:''<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
<pre>usage: mgba-qt [option ...] file


Generic options:
Generic options:
   -b, --bios FILE     GBA BIOS file to use
   -b, --bios FILE           GBA BIOS file to use
   -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)
  -C, --config OPTION=VALUE  Override config value
   -v, --movie FILE   Playback a movie of recorded input
  -d, --debug                Use command-line debugger
   -p, --patch FILE   Apply a specified patch file when running
   -g, --gdb                 Start GDB session (default port 2345)
   -s, --frameskip N   Skip every N frames
   -l, --log-level N          Log level mask
   --version           Print version and exit
  -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:
Graphics options:
   -1               1x viewport
   -1, -2, -3, -4, -5, -6, -7, -8  Scale viewport by 1-8 times
  -2               2x viewport
   -f, --fullscreen                Start full-screen
  -3               3x viewport
   --scale X                      Scale viewport by X times
   -4              4x viewport
 
   -5              5x viewport
Frontend options:
   -6              6x viewport
   --ecard FILE  Scan an e-Reader card in the first loaded game
   -f              Start full-screen</pre>
                Can be passed multiple times for multiple cards
   --mb FILE    Boot a multiboot image with FILE inserted into the ROM slot</pre>


==References==
==References==
Line 85: Line 97:
* [https://twitter.com/mgba_emu Twitter]
* [https://twitter.com/mgba_emu Twitter]


{{Game Boy/Game Boy Color emulators}}
{{Game Boy Advance emulators}}
{{Game Boy Advance emulators}}
[[Category:Emulators]]
[[Category:Emulators]]
[[Category:Multi-emulators]]
[[Category:Console emulators]]
[[Category:Handheld console emulators]]
[[Category:Game Boy/Game Boy Color emulators]]
[[Category:Game Boy/Game Boy Color emulators]]
[[Category:Game Boy Advance emulators]]
[[Category:Game Boy Advance emulators]]
Line 92: Line 109:
[[Category:macOS emulation software]]
[[Category:macOS emulation software]]
[[Category:Linux emulation software]]
[[Category:Linux emulation software]]
[[Category:IOS emulation software]]
[[Category:BSD emulation software]]
[[Category:Android emulation software]]
[[Category:iOS emulation software]]
[[Category:3DS emulation software]]
[[Category:Switch emulation software]]
[[Category:PlayStation Vita emulation software]]
[[Category:Active emulation software]]