- Home
- Game Boy Advance Emulators
- RustBoyAdvance-NG
RustBoyAdvance-NG
What it is
RustBoyAdvance-NG is a free, MIT-licensed Nintendo Game Boy Advance emulator and debugger written in Rust. Its WebAssembly demo accepts ROM files by drag and drop, while the desktop emulator can load ROM files or ZIP archives containing .gba files in the same way. Desktop use requires a GBA BIOS binary, and the project says an open-source GBA BIOS is supported. The repository lists SDL2 and minifb desktop frontends, but notes that minifb is not maintained. It also includes Java JNI bindings, a terminal frontend, and a proof-of-concept Android app that can be opened in Android Studio. Desktop builds require Rust 1.51 or later and SDL2 dependencies on Linux and macOS. The custom debugger and experimental GDB server are available behind build features. Desktop key bindings include saving and loading snapshot files, but the controls cannot currently be configured. The project lists CGB audio, including four wave-generator channels, as unfinished emulation work. The repository provides GitHub Issues and Discussions, and its releases page shows an Android Build [Debug] release.
For and against
For
- Free and distributed under the MIT License.
- Web demo loads ROMs by drag and drop.
- Desktop emulator can save and load snapshots.
- Custom debugger and experimental GDB server are available.
Against
- Desktop use requires a GBA BIOS binary.
- Desktop key bindings cannot be changed.
- CGB audio work remains unfinished.
- The minifb frontend is not maintained.
The verdict
RustBoyAdvance-NG offers a free emulator across several frontends, with debugger features and snapshot support. Desktop users should note the BIOS requirement and fixed controls, while some emulation work remains unfinished.
Who it suits
RustBoyAdvance-NG suits people looking for a free GBA emulator with desktop, web, and proof-of-concept Android options. It may also interest developers who want debugger features or Rust-based bindings and frontends.
Plans and prices
Free
MIT-licensed emulator and debugger
Read 30 Sep 2026 · github.com
On the record
- Android
- The repository includes a proof-of-concept Android application that can be opened in Android Studio and requires Rust Android targets with the NDK.github.com · read 29 Sep 2026
- Audio limit
- The emulation todo lists CGB audio, including four wave generator channels, as unfinished.github.com · read 30 Sep 2026
- BIOS requirement
- Desktop usage requires a GBA BIOS binary, and the README says an open-source GBA BIOS is supported.github.com · read 30 Sep 2026
- Controls limit
- The README says key bindings are currently not configurable.github.com · read 30 Sep 2026
- Debugger
- The README documents a custom debugger requiring the debugger feature and an experimental GDB server requiring the gdb feature.github.com · read 30 Sep 2026
- Desktop frontends
- The project includes SDL2 and minifb desktop applications, with the minifb frontend marked as unmaintained.github.com · read 30 Sep 2026
- Desktop setup
- Building the desktop application requires Rust 1.51 or later and SDL2 dependencies on Linux and macOS.github.com · read 30 Sep 2026
- Input limitation
- The README says desktop key bindings are currently not configurable.github.com · read 29 Sep 2026
- Known emulation gap
- The README lists CGB audio with four wave-generator channels as remaining emulation work.github.com · read 29 Sep 2026
- License
- The repository is distributed under the MIT License, which grants permission to use, copy, modify, distribute, sublicense, and sell copies subject to its conditions.github.com · read 30 Sep 2026
- Operating systems
- The build instructions cover Linux, Windows, and macOS desktop dependencies.github.com · read 29 Sep 2026
- Other frontends
- The project also lists Java JNI bindings, a terminal frontend using crossterm and viuer, and a proof-of-concept Android application.github.com · read 30 Sep 2026
- Purpose
- RustBoyAdvance-NG is a Nintendo Game Boy Advance emulator and debugger written in Rust.github.com · read 30 Sep 2026
- ROM loading
- The desktop emulator accepts ROM files or ZIP files containing .gba files by drag and drop.github.com · read 30 Sep 2026
- Save snapshots
- The desktop key bindings include F5 to save a snapshot file and F9 to load one.github.com · read 30 Sep 2026
- Save states
- The desktop key bindings include commands to save and load snapshot files.github.com · read 29 Sep 2026
- Support and project status
- The repository exposes GitHub Issues and Discussions, and its releases page currently shows an Android Build [Debug] release.github.com · read 30 Sep 2026
- Web emulator
- The browser demo is powered by WebAssembly and lets users load ROM files by dragging them into the screen.michelhe.github.io · read 30 Sep 2026
The review
Overview
RustBoyAdvance-NG is a free Game Boy Advance emulator and debugger built in Rust, with browser and desktop options alongside experimental mobile and terminal frontends. It is best for technically minded players and developers who value debugger access and can work around setup requirements. For a ready-to-use, configurable player experience, its unfinished emulation and fixed desktop controls are meaningful drawbacks.
Key features
The WebAssembly demo takes ROM files by drag and drop, so it offers a browser-based way to try the emulator. Desktop frontends accept ROMs or ZIP files containing .gba files, and F5 and F9 save and load snapshot files. Snapshots make it easier to return to a point in a game, but the desktop key bindings cannot be changed, which may make the controls a poor fit for some setups.
RustBoyAdvance-NG’s custom debugger is enabled through a build feature, while its GDB server is experimental and requires a separate feature. That makes the project more compelling for people investigating or debugging emulation than for players who simply want a straightforward launcher. The project also includes Java JNI bindings and a terminal frontend using crossterm and viuer. Its minifb desktop frontend is not maintained, so SDL2 is the more dependable desktop option among the listed frontends.
One emulation task remains unfinished: CGB audio, including its four wave-generator channels. Players who prioritize complete audio emulation may prefer a different emulator.
Pricing
Free — free. The plan covers the MIT-licensed emulator and debugger, with no paid tier or trial. The MIT License permits use, copying, modification, distribution, sublicensing, and sale subject to its conditions. The tradeoff is that users take on the work of building or setting up the frontends, and desktop use requires a GBA BIOS binary; the README says an open-source GBA BIOS is supported.
Platforms
RustBoyAdvance-NG targets Linux, Windows, macOS, Android, and the web. Desktop build instructions cover Linux, Windows, and macOS; the desktop application requires Rust 1.51 or later, with SDL2 dependencies on Linux and macOS. Android support is a proof of concept that requires Android Studio, Rust Android targets, and the NDK, so it is better suited to developers willing to build the app than to users seeking a finished mobile release. The project also offers a WebAssembly demo, while its releases page currently shows an Android Build [Debug] release.
Who it's for
This is a strong fit for developers and emulator enthusiasts who want a Rust-based GBA project with debugger options, multiple frontends, and the freedom to use or modify MIT-licensed software. Desktop users comfortable with dependencies and BIOS setup will get the clearest route to use it. Players who need configurable controls, polished Android support, or finished audio emulation should look elsewhere.
Pros and cons
- Pro: The browser demo accepts ROMs by drag and drop, avoiding a desktop build for a quick try.
- Pro: Desktop snapshot shortcuts and debugger features serve both game-state revisiting and development work.
- Pro: The MIT License allows modification and redistribution, subject to its conditions.
- Con: Desktop use needs a GBA BIOS binary, and desktop builds require Rust and, on Linux and macOS, SDL2 dependencies.
- Con: Desktop key bindings are fixed, limiting control customization.
- Con: CGB audio remains unfinished, and the minifb frontend is unmaintained.
- Con: The Android app is a proof of concept rather than a finished mobile offering.
Alternatives
Game Boy Advance Emulators is a useful place to compare more options. Choose RetroArch instead if you want a free, open-source option across Android, iOS, Linux, macOS, web, and Windows. Provenance is an iOS and macOS alternative with free emulation features when sideloaded or built from source. VisualBoyAdvance-M is another free, open-source emulator for Windows, macOS, Linux, and Android. On Apple devices, Delta offers a free app with in-app purchases. Android users may consider John NESS, which is free with ads and in-app purchases to remove them, or Lemuroid, a free open-source emulator that does not include games, firmware, or copyrighted system files. Pizza Boy C is an Android 8-bit handheld emulator with a free Basic plan and a Pro plan for $5.99, paid once. SkyEmu offers free stable builds across Android, iOS, Linux, macOS, web, and Windows, though its DS emulation is beta quality.
Verdict
Choose RustBoyAdvance-NG if you want a free, modifiable GBA emulator whose debugger and varied frontends are as important as playback. Its main strengths are the browser demo, snapshot support, and developer-oriented tools. Look elsewhere if you need configurable desktop controls, a finished Android app, or complete audio emulation.