Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

MGBA Wii

From GameBrew
Revision as of 00:49, 19 March 2023 by HydeWing (talk | contribs)
mGBA
Mgbawii2.png
General
Authorendrift
TypeHandheld
Version0.10.1
LicenseMPL-2.0
Last Updated2023/01/10
Links
Download
Website
Source

mGBA is an emulator for Game Boy Advance, Game Boy and Game Boy Color games. It aims to provide a faster and more accurate emulation experience than other available emulators. Additionally, it includes features that are not found in other emulators. It supports all games of GBA,GB and GBC.

Features

  • Highly accurate Game Boy Advance hardware support.
  • Game Boy/Game Boy Color hardware support.
  • Fast emulation. Known to run at full speed even on low end hardware, such as netbooks.
  • Qt and SDL ports for a heavy-weight and a light-weight frontend.
  • Local (same computer) link cable support.
  • Save type detection, even for flash memory size.
  • Support for cartridges with motion sensors and rumble (only usable with game controllers).
  • Real-time clock support, even without configuration.
  • Solar sensor support for Boktai games.
  • Game Boy Camera and Game Boy Printer support.
  • A built-in BIOS implementation, and ability to load external BIOS files.
  • Scripting support using Lua.
  • Turbo/fast-forward support by holding Tab.
  • Rewind by holding Backquote.
  • Frameskip, configurable up to 10.
  • Screenshot support.
  • Cheat code support.
  • 9 savestate slots. Savestates are also viewable as screenshots.
  • Video, GIF, WebP, and APNG recording.
  • e-Reader support.
  • Remappable controls for both keyboards and gamepads.
  • Loading from ZIP and 7z files.
  • IPS, UPS and BPS patch support.
  • Game debugging via a command-line interface and GDB remote support, compatible with Ghidra and IDA Pro.
  • Configurable emulation rewinding.
  • Support for loading and exporting GameShark and Action Replay snapshots.
  • Cores available for RetroArch/Libretro and OpenEmu.
  • Community-provided translations for several languages via Weblate.
  • Many, many smaller things.

User guide

Game Boy mappers

The following mappers are fully supported:

  • MBC1
  • MBC1M
  • MBC2
  • MBC3
  • MBC3+RTC
  • MBC5
  • MBC5+Rumble
  • MBC7
  • Wisdom Tree (unlicensed)
  • NT "new type" (unlicensed MBC5-like)
  • Pokémon Jade/Diamond (unlicensed)
  • BBD (unlicensed MBC5-like)
  • Hitek (unlicensed MBC5-like)
  • Sachen MMC1

The following mappers are partially supported:

  • MBC6 (missing flash memory write support)
  • MMM01
  • Pocket Cam
  • TAMA5 (incomplete RTC support)
  • HuC-1 (missing IR support)
  • HuC-3 (missing IR support)
  • Sachen MMC2 (missing alternate wiring support)

Controls

Controls are configurable in the settings menu. Many game controllers should be automatically mapped by default.

Wiimote

Interface:

2 - Select option

1 - Go back

A - Cancel

D-Pad - Navigate

In game:

2 - A

1 - B

Minus - Select

Plus - Start

D-Pad - D-Pad

A - R

B - L

Classic Controller

Interface:

A - Select option

B - Go back

Home - Cancel

D-Pad - Navigate

In game:

A/B/L/R/D-Pad - A/B/L/R/D-Pad

Minus - Select

Plus - Start

GameCube Controller

Interface:

A - Select option

B - Go back

Z - Cancel

D-Pad - Navigate

In game:

A/B/L/R/D-Pad - A/B/L/R/D-Pad

X - Select

Start -Start

Screenshots

mgbawii3.png mgbawii4.png

mgbawii5.png mgbawii6.png

Media

Adjusting mGBA Emulator for the Best video on Wii (Joe's Retro World)

Changelog

0.10.1 2023/01/10

Emulation fixes:

  • GB Audio: Fix channels 1/2 not playing when resetting volume (fixes mgba.io/i/2614).
  • GB Audio: Fix channel 3 volume being changed between samples (fixes mgba.io/i/1896).
  • GB Audio: Fix up boot sequence.
  • GB Audio: Fix updating channels other than 2 when writing NR5x.
  • GB Memory: Actually, HDMAs should start when LCD is off (fixes mgba.io/i/2662).
  • GB Serialize: Don't write BGP/OBP when loading SCGB state (fixes mgba.io/i/2694).
  • GB SIO: Further fix bidirectional transfer starting.
  • GBA: Fix resetting key IRQ state (fixes mgba.io/i/2716).
  • GBA BIOS: Include timing in degenerate ArcTan2 cases (fixes mgba.io/i/2763).
  • GBA Video: Ignore disabled backgrounds as OBJ blend target (fixes mgba.io/i/2489).

Other fixes:

  • GBA: Fix forceskip BIOS logic for multiboot ROMs (fixes mgba.io/i/2753).
  • GBA Cheats: Fix issues detecting unencrypted cheats (fixes mgba.io/i/2724).
  • Qt: Manually split filename to avoid overzealous splitting (fixes mgba.io/i/2681).
  • Qt: Fix scanning specific e-Reader dotcodes (fixes mgba.io/i/2693).
  • Qt: Don't re-enable sync if GBA link modes aren't the same (fixes mgba.io/i/2044).
  • Qt: Improve handling of multiplayer syncing (fixes mgba.io/i/2720).
  • Qt: Fix initializing update revision info.
  • Qt: Redo stable branch detection heuristic (fixes mgba.io/i/2679).
  • Res: Fix species name location in Ruby/Sapphire revs 1/2 (fixes mgba.io/i/2685).
  • VFS: Fix minizip write returning 0 on success instead of size.

Misc:

  • macOS: Add category to plist (closes mgba.io/i/2691).
  • macOS: Fix modern build with libepoxy (fixes mgba.io/i/2700).
  • Qt: Keep track of current palette preset name (fixes mgba.io/i/2680).
  • Qt: Move OpenGL proxy onto its own thread (fixes mgba.io/i/2493).

0.10.0 2022/10/11.

  • Preliminary Lua scripting support.
  • Presets for Game Boy palettes.
  • Add Super Game Boy palettes for original Game Boy games.
  • Tool for converting scanned pictures of e-Reader cards to raw dotcode data.
  • Options for muting when inactive, minimized, or for different players in multiplayer.
  • Cheat code support in homebrew ports.
  • Acclerometer and gyro support for controllers on PC.
  • Support for combo "Super Game Boy Color" SGB + GBC ROM hacks.
  • Improved support for HuC-3 mapper, including RTC.
  • Support for 64 kiB SRAM saves used in some bootlegs.
  • Discord Rich Presence now supports time elapsed.
  • Additional scaling shaders.
  • Support for GameShark Advance SP (.gsv) save file importing.
  • Support for multiple saves per game using .sa2, .sa3, etc..
  • Support for GBX format Game Boy ROMs.
  • New unlicensed GB mappers: NT (newer type), Sachen (MMC1, MMC2).

Emulation fixes:

  • ARM7: Fix unsigned multiply timing.
  • GB: Copy logo from ROM if not running the BIOS intro (fixes mgba.io/i/2378).
  • GB: Fix HALT breaking M-cycle alignment (fixes mgba.io/i/250).
  • GB Audio: Fix channel 1/2 reseting edge cases (fixes mgba.io/i/1925).
  • GB Audio: Properly apply per-model audio differences.
  • GB Audio: Revamp channel rendering.
  • GB Audio: Fix APU re-enable timing glitch.
  • GB I/O: Fix writing to WAVE RAM behavior (fixes mgba.io/i/1334).
  • GB MBC: Fix edge case with Pocket Cam register accesses (fixes mgba.io/i/2557).
  • GB Memory: Add cursory cartridge open bus emulation (fixes mgba.io/i/2032).
  • GB Serialize: Fix loading MBC1 states that affect bank 0 (fixes mgba.io/i/2402).
  • GB SIO: Fix bidirectional transfer starting (fixes mgba.io/i/2290).
  • GB Video: Draw SGB border pieces that overlap GB graphics (fixes mgba.io/i/1339).
  • GBA: Improve timing when not booting from BIOS.
  • GBA: Fix expected entry point for multiboot ELFs (fixes mgba.io/i/2450).
  • GBA: Fix booting multiboot ROMs with no JOY entrypoint.
  • GBA: Fix 1 MiB ROM mirroring to only mirror 4 times.
  • GBA Audio: Adjust PSG sampling rate with SOUNDBIAS.
  • GBA Audio: Sample FIFOs at SOUNDBIAS-set frequency.
  • GBA BIOS: Work around IRQ handling hiccup in Mario & Luigi (fixes mgba.io/i/1059).
  • GBA BIOS: Initial HLE timing estimation of UnLz77 functions (fixes mgba.io/i/2141).
  • GBA DMA: Fix DMA source direction bits being cleared (fixes mgba.io/i/2410).
  • GBA I/O: Redo internal key input, enabling edge-based key IRQs.
  • GBA I/O: Disable open bus behavior on invalid register 06A.
  • GBA Memory: Fix misaligned 32-bit I/O loads (fixes mgba.io/i/2307).
  • GBA Video: Fix OpenGL rendering on M1 Macs.
  • GBA Video: Ignore horizontally off-screen sprite timing (fixes mgba.io/i/2391).
  • GBA Video: Fix Hblank timing (fixes mgba.io/i/2131, mgba.io/i/2310).
  • GBA Video: Fix rare crash in modes 3-5.
  • GBA Video: Fix sprites with mid-frame palette changes in GL (fixes mgba.io/i/2476).
  • GBA Video: Fix OBJ tile wrapping with 2D char mapping (fixes mgba.io/i/2443).
  • GBA Video: Fix horizontal lines in GL when charbase is changed (fixes mgba.io/i/1631).
  • GBA Video: Fix sprite layer priority updating in GL.

Other fixes:

  • ARM: Disassemble Thumb mov pseudo-instruction properly.
  • ARM: Disassemble ARM asr/lsr #32 properly.
  • ARM: Disassemble ARM movs properly.
  • Core: Don't attempt to restore rewind diffs past start of rewind.
  • Core: Fix the runloop resuming after a game has crashed (fixes mgba.io/i/2451).
  • Core: Fix crash if library can't be opened.
  • Debugger: Fix crash with extremely long CLI strings.
  • Debugger: Fix multiple conditional watchpoints at the same address.
  • FFmpeg: Fix crash when encoding audio with some containers.
  • FFmpeg: Fix GIF recording (fixes mgba.io/i/2393).
  • GB: Fix temporary saves.
  • GB: Fix replacing the ROM crashing when accessing ROM base.
  • GB: Don't try to map a 0-byte SRAM (fixes mgba.io/i/2668).
  • GB, GBA: Save writeback-pending masked saves on unload (fixes mgba.io/i/2396).
  • mGUI: Fix FPS counter after closing menu.
  • Qt: Fix some hangs when using the debugger console.
  • Qt: Fix crash when clicking past last tile in viewer.
  • Qt: Fix preloading for ROM replacing.
  • Qt: Fix screen not displaying on Wayland (fixes mgba.io/i/2190).
  • Qt: Fix crash when selecting 256-color sprite in sprite view.
  • Qt: Fix coloration of swatches on styles with distinct frame backgrounds.
  • VFS: Failed file mapping should return NULL on POSIX.

Misc:

  • Core: Suspend runloop when a core crashes.
  • Core: Add wallclock offset RTC type.
  • Debugger: Save and restore CLI history.
  • Debugger: GDB now works while the game is paused.
  • Debugger: Add command to load external symbol file (fixes mgba.io/i/2480).
  • FFmpeg: Support dynamic audio sample rate.
  • GB: Support CGB0 boot ROM loading.
  • GB Audio: Increase sample rate.
  • GB MBC: Filter out MBC errors when cartridge is yanked (fixes mgba.io/i/2488).
  • GB MBC: Partially implement TAMA5 RTC.
  • GB Video: Add default SGB border.
  • GBA: Automatically skip BIOS if ROM has invalid logo.
  • GBA: Refine multiboot detection (fixes mgba.io/i/2192).
  • GBA Cheats: Implement "never" type codes (closes mgba.io/i/915).
  • GBA DMA: Enhanced logging (closes mgba.io/i/2454).
  • GBA Memory: Implement adjustable EWRAM waitstates (closes mgba.io/i/1276).
  • GBA Savedata: Store RTC data in savegames (closes mgba.io/i/240).
  • GBA Video: Implement layer placement for OpenGL renderer (fixes mgba.io/i/1962).
  • GBA Video: Fix highlighting for sprites with mid-frame palette changes.
  • mGUI: Add margin to right-aligned menu text (fixes mgba.io/i/871).
  • mGUI: Autosave less frequently when fast-forwarding.
  • Qt: Rearrange menus some.
  • Qt: Clean up cheats dialog.
  • Qt: Only set default controller bindings if loading fails (fixes mgba.io/i/799).
  • Qt: Save converter now supports importing GameShark Advance saves.
  • Qt: Save positions of multiplayer windows (closes mgba.io/i/2128).
  • Qt: Add optional frame counter to OSD (closes mgba.io/i/1728).
  • Qt: Add optional emulation-related information on reset (closes mgba.io/i/1780).
  • Qt: Add QOpenGLWidget cross-thread codepath for macOS (fixes mgba.io/i/1754).
  • Qt: Enable -b for Boot BIOS menu option (fixes mgba.io/i/2074).
  • Qt: Add tile range selection to tile viewer (closes mgba.io/i/2455).
  • Qt: Show warning if XQ audio is toggled while loaded (fixes mgba.io/i/2295).
  • Qt: Add e-Card passing to the command line (closes mgba.io/i/2474).
  • Qt: Boot both a multiboot image and ROM with CLI args (closes mgba.io/i/1941).
  • Qt: Improve cheat parsing (fixes mgba.io/i/2297).
  • Qt: Change lossless setting to use WavPack audio.
  • Qt: Use FFmpeg to convert additional camera formats, if available.
  • Qt: Resume crashed game when loading a save state.
  • Qt: Include cheats in bug report.
  • SDL: Support exposing an axis directly as the gyro value (closes mgba.io/i/2531).
  • Windows: Attach to console if present.
  • VFS: Early return NULL if attempting to map 0 bytes from a file.
  • Vita: Add bilinear filtering option (closes mgba.io/i/344).

External links

Advertising: