Open-source project
shonumi/gbe-plus avatar
shonumi/gbe-plus

GB Enhanced+: a Game Boy emulator that documents the hardware while it runs

DMG/GBC/GBA emulator and experimental NDS emulator.

600 stars85 forksC++GPL-2.0

At a glance

What is it?
GB Enhanced+ emulates the DMG, Game Boy Color, GBA and Pokemon Mini with an experimental NDS core, and the stated goal is not only to run games but to document the Game Boy's functions through clear C++ and SDL code. The README is short, and the manual is where the detail lives.
Who is it for?
Adopt GB Enhanced+ if you want the Game Boy, Game Boy Color, GBA and Pokemon Mini on one portable codebase, and you are the kind of user who reads a manual before touching settings, because netplay, rumble and motion controls are documented there rather than in the README.
Can I use it commercially?
Yes, with conditions. GPL-2.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
Is it still maintained?
Yes. The repository last received commits 22 days ago.
What is it written in?
Mainly C++, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 22, 2026, and from our analysis. They are not legal advice.

Editorial analysis

Four handheld generations, one emulator

GB Enhanced+, shortened to GBE+, covers the DMG, the Game Boy Color, the GBA and the Pokemon Mini, plus an experimental Nintendo DS emulator. It is the successor to the original GB Enhanced project, and the difference in ambition is stated in the README. The goal is a fully functional Game Boy emulator built as a highly portable emulator using C++ and SDL, with the Game Boy's functions documented through clear code, and the project strives to emulate everything about the Game Boy including obscure hardware and features. The emphasis on peripherals and accessories is the distinguishing claim, since the Game Boy is remembered as much for its link cable, its Game Boy Printer and its camera as for its games, and an emulator that covers only cartridges will feel like a subset of the real thing.

Documenting the hardware is part of the goal, not a side effect

The most unusual sentence in the README is that the project aims to document the Game Boy's functions through clear code, and that is worth unpacking because it changes how you read the source. The emulator is presented as a reference implementation as much as a way to play, so the code is written to be read and to explain the behaviour it reproduces, and the ambition extends to obscure hardware and features rather than only to what commercial games exercise. This is a different maintenance philosophy from a project that only implements what a test suite needs. It also has a practical consequence for you as a user, since the documentation of a peripheral may exist in the code even when the manual does not cover it, and the licence reinforces the point. The technical documentation and the Dan Docs are placed in the public domain, so the reference material can be reused freely even though the emulator itself is copyleft.

The build needs SDL and OpenGL, and the extras are optional

The compiling section is a dependency list rather than a recipe, and it is short. The only requirements are SDL 2.0, OpenGL 3.3 or greater, a C++ compiler and CMake. Two further dependencies are optional, Qt for the GUI and SDL2_net for netplay, and one is conditional, with GLEW described as a Windows-only mandatory dependency. The repository itself is minimal, with a CMakeLists.txt, the LICENSE, the README and a src/ directory, so the build is a straightforward CMake project rather than something with generated sources or vendored submodules to fight with. The one thing the README does not spell out is the exact CMake invocation, so you would configure it yourself against the two hard requirements, SDL 2.0 and OpenGL 3.3, and decide up front whether you want the Qt front end and the netplay support before you build.

The manual is part of the deliverable

The README devotes a section to the documentation and makes a request with a capitalisation that is easy to miss. GBE+ comes with PDF and ODT manuals explaining everything about its operation, and the project devotes extensive time to covering complex topics such as setting up netplay, enabling rumble support or motion controls. Then comes the instruction to please read the manual if you have any questions about the emulator. That is a meaningful signal about the audience. A Game Boy emulator with netplay, rumble and motion control is a project where the settings and the caveats around them carry as much weight as the emulation itself, and the ODT format additionally means the manual is editable, which fits with the open documentation policy. If you are coming from a different emulator, expect a different user interface model and expect to spend an evening in the manual rather than in the source.

Two licences, and an annually paced release line

The licensing section draws a line that most emulators do not. GB Enhanced+ as an emulator is free open source software under GPLv2, with full details in license.txt, while the technical documentation and the Dan Docs are public domain. So the code carries copyleft obligations and the reference material does not, which is a sensible split if you want to quote the hardware documentation in your own write-up or feed it to a language model without tainting the output. The release history is annual rather than frequent, with version 1.8 on 2024-04-01, 1.9 on 2025-04-01 and 1.10 on 2026-04-01, so the project ships a major version each spring, and the last push was on 2026-10-01. The project is not archived. The version numbering without a patch component suggests that upgrades are infrequent and that a release can change more than a bug fix.

What the README does not say

For a project with this much claimed coverage, the README leaves several questions open, and they are worth listing before you install it. It does not state which peripherals are implemented and which are not, it does not mention the Game Boy Printer, the camera or the link cable in passing, so the peripheral coverage claim has to be checked against the manual or the source. It does not describe the state of the experimental NDS emulator, which is enough to say that support exists and not enough to judge whether it is usable. It also says nothing about the accuracy of the emulated audio, the behaviour of save states, or the performance on a Raspberry Pi, and the source tree is not documented in the README either, so a contributor would need to read the code to find the boundaries between the emulated systems. None of that makes the project a bad bet, but it does make the manual the first thing to open.

Editorial conclusion

Adopt GB Enhanced+ if you want the Game Boy, Game Boy Color, GBA and Pokemon Mini on one portable codebase, and you are the kind of user who reads a manual before touching settings, because netplay, rumble and motion controls are documented there rather than in the README. Do not adopt it expecting a mature Nintendo DS emulator, since the NDS support is described as experimental, and do not adopt it if you need a build without a compiler, since the project ships source and a CMake build rather than binaries. Verify first that your system has SDL 2.0 and OpenGL 3.3 or newer, decide whether you want the Qt GUI and netplay, since both are optional dependencies, and read the PDF or ODT manual that the project ships before you conclude that a peripheral is unsupported.

Frequently asked questions

What platforms does GB Enhanced+ emulate?

It is described as a DMG, GBC, GBA and Pokemon Mini emulator with an experimental NDS emulator, and it is the successor to the original GB Enhanced project with a focus on emulating as much of the Game Boy as possible, including peripherals and accessories.

What do I need to compile GB Enhanced+?

The requirements are SDL 2.0, OpenGL 3.3 or greater, a C++ compiler and CMake. Qt for the GUI and SDL2_net for netplay are optional dependencies, and GLEW is a mandatory dependency on Windows only.

Is the Nintendo DS emulation usable in GB Enhanced+?

The README calls the NDS emulator experimental, and it does not describe what works or how complete it is. It also does not list which Game Boy peripherals are implemented, so the manual is the place to check before you plan around a specific accessory.

What licence does GB Enhanced+ use?

The emulator itself is free open source software under GPLv2, with details in license.txt, while the technical documentation and the Dan Docs are public domain. Versions 1.8, 1.9 and 1.10 were released in April 2024, April 2025 and April 2026.

Does GB Enhanced+ support netplay and rumble?

The project ships PDF and ODT manuals that cover complex topics including setting up netplay, enabling rumble support and motion controls, and it asks users to read the manual when they have questions about the emulator.

Official sources

  1. Issues
  2. License: GPL-2.0
  3. README
  4. Releases
  5. shonumi/gbe-plus on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/shonumi-gbe-plus.svg)](https://hysenlabs.com/projects/shonumi-gbe-plus)

Was this useful?