A new release of mGBA, version 0.2.1, is available. This version is primarily a bugfix release. An extensive list of changes follows after the cut.

Bugfixes:

All: Fix sanitize-deb script not cleaning up after itself

All: Fix dependencies for libavcodec on Debian-derived platforms

ARM7: Handle writeback for PC in addressing modes 2 and 3

ARM7: Make illegal instruction decoding consistent between ARM and Thumb

ARM7: Fix ARM multiply instructions when PC is a destination register

Debugger: Fix use-after-free in breakpoint clearing code

Debugger: Fix boundary conditions in tab completion

GBA: Fix timers not updating timing when writing to only the reload register

GBA: Fix rewind boundary conditions

GBA: Add initial I/O register settings for background matrix registers

GBA: Fix hang when loading a savestate if sync to video is enabled

GBA: Handle out-of-bounds I/O access

GBA: Fix bounds-checking on EEPROM access

GBA Audio: FIFOs should not poll DMAs that are not scheduled for audio

GBA BIOS: Initialize a variable that may be uninitialized in very rare cases

GBA Memory: Allow SRAM to be 64kB

GBA Memory: Fix 32-bit loads from unaddress cartridge space

GBA Memory: Fix jumping to invalid memory when switching from Thumb to ARM

GBA Video: Fix second frame mode 5

Perf: Fix race condition if a game crashes immediately on start

Qt: Fix Display object leak when closing a window

Qt: Fix .deb dependencies

Qt: Fix “QOpenGLContext::swapBuffers() called with non-exposed window” warning

Qt: Fix window not regaining focus after exiting savestate window

Qt: Fix regression where video would not record if the game had already started

Qt: Fix potential crash if a gamepad causes focus to change

Qt: Fix controller axis querying

Qt: Fix multiplayer windows opening as the wrong size

Qt: Fix controllers sometimes not loading the right profile

SDL: Fix boundary conditions for joystick adjustments

SDL: Allocate properly sized input maps

SDL: Fix potential build issues when Qt and SDL2 are in use

Util: Fix resource leak in UTF-8 handling code

Util: Fix a null-pointer issue when attempting to delete a key

VFS: Fix resource leaks if some allocations fail

Video: Fix an issue with very long filenames

Misc:

GBA Memory: Soft-crash if jumping past the end of a ROM

Qt: Show multiplayer numbers in window title

Qt: Solar sensor can have shortcuts set

Get it now in the Downloads section. Binaries are available for Windows, Ubuntu and OS X, and the source code is available for all other platforms.