What's new

mGBA 0.10.2 is released!

A new release of mGBA, version 0.10.2 is available. This version is a bugfix release, which contains several important fixes. Important fixes include crashing on start on very old graphics cards and flickering issues on Nvidia GPUs when using the OpenGL renderer. An extensive list of changes follows after the cut.

Emulation fixes:

  • GBA Audio: Fix improperly deserializing GB audio registers (fixes #2793)
  • GBA Audio: Clear GB audio state when disabled
  • GBA Memory: Make VRAM access stalls only apply to BG RAM
  • GBA Overrides: Fix saving in PMD:RRT (JP) (fixes #2862)
  • GBA SIO: Fix SIOCNT SI pin value after attaching player 2 (fixes #2805)
  • GBA SIO: Fix unconnected normal mode SIOCNT SI bit (fixes #2810)
  • GBA SIO: Normal mode transfers with no clock should not finish (fixes #2811)
  • GBA Timers: Cascading timers don’t tick when disabled (fixes #2812)
  • GBA Video: Fix interpolation issues with OpenGL renderer

Other fixes:

  • Core: Allow sending thread requests to a crashed core (fixes #2784)
  • FFmpeg: Force lower sample rate for codecs not supporting high rates (fixes #2869)
  • Qt: Fix crash when attempting to use OpenGL 2.1 to 3.1 (fixes #2794)
  • Qt: Disable sync while running scripts from main thread (fixes #2738)
  • Qt: Properly cap number of attached players by platform (fixes #2807)
  • Qt: Disable attempted linking betwen incompatible platforms (fixes #2702)
  • Qt: Fix modifier key names in shortcut editor (fixes #2817)
  • Qt: Fix a handful of edge cases with graphics viewers (fixes #2827)
  • Qt: Fix full-buffer rewind
  • Qt: Fix crash if loading a shader fails
  • Qt: Fix black screen when starting with a game (fixes #2781)
  • Qt: Fix OSD on modern macOS (fixes #2736)
  • Qt: Fix checked state of mute menu option at load (fixes #2701)
  • Qt: Remove OpenGL proxy thread and override SwapInterval directly instead
  • Scripting: Fix receiving packets for client sockets
  • Scripting: Fix empty receive calls returning unknown error on Windows
  • Scripting: Return proper callback ID from socket.add
  • Vita: Work around broken mktime implementation in Vita SDK (fixes #2876)


  • Qt: Include wayland QPA in AppImage (fixes #2796)
  • Qt: Stop eating boolean action key events (fixes #2636)
  • Qt: Automatically change video file extension as appropriate
  • Qt: Swap P1 and other player’s save if P1 loaded it first (closes #2750)

Get it now in the Downloads section. Binaries are available for Windows, Ubuntu, other Linux distros (via AppImage), macOS, Nintendo Switch, 3DS, Wii, and PlayStation Vita, and the source code is available for all other platforms.

If you enjoy using mGBA and wish to give back, there is a list of ways to donate on the donations page, including an mGBA Patreon.