GAME BOY COLOR EMULATOR
gb-net
gb-net is an open-source Game Boy / Game Boy Color emulator implemented in C# for .NET 6. It provides a WinForms desktop frontend and a WebAssembly (browser) build; Game Boy Color support is noted as incomplete and some test ROMs do not pass.

WHY IT MATTERS
Who this is for
Hobbyists and developers who want a .NET/C# example Game Boy implementation they can read, modify, and run. The author flags it as a learning/hacking project rather than a top-choice player emulator.
BEST FOR
Strengths
Readable C#/.NET 6 codebase with multiple frontends (WinForms, WASM). Includes a runnable WinForms build with sound and a browser-targeted WASM build for experimentation.
The people behind gb-net
History & status
gb-net is a personal/open-source project on GitHub that implements a Game Boy (and partly Game Boy Color) emulator in .NET 6 / C#. The repository references CoreBoy as an influence. The README states the WinForms version runs smoothly with sound but warns that not all test ROMs pass and that GBC support is not fully implemented. A WebAssembly build (GB.WASM) is included; the README mentions a launch.bat to publish an AOT WASM build and start a local web server. The project has ongoing commits in its GitHub history and is presented as a learning/hacking project rather than a finished, highly compatible player.
What gb-net supports
- Game Boy (DMG) — implemented (desktop WinForms)
- Game Boy Color (CGB) — partial / incomplete support
- Windows (WinForms frontend)
- Browser (WebAssembly frontend via GB.WASM)
Download and availability
OFFICIAL DOWNLOADS
Get gb-net
Source and release assets are published on the project's GitHub repository and releases page. There is no bundled commercial firmware or BIOS included in the repository; any required BIOS files are not provided by this project.
Get gb-net ↗DOCUMENTATION
Official documentation
Read the official configuration, compatibility, and troubleshooting material before changing advanced options.
Read official documentation ↗gb-net setup guide
Setup note: This guide explains how to build and run the available frontends from source. It assumes basic familiarity with git and the .NET SDK.
- Prerequisites: Install the .NET 6 (or compatible) SDK for your platform. Install git and a C#-capable code editor if you plan to read or modify the source. For the WinForms desktop build you will need a Windows system to run the WinForms binary; the WASM frontend targets browsers (via .NET AOT WebAssembly).
- Get the source: Clone the repository from the official GitHub: clone the wcabus/gb-net repository and inspect folders such as GB.WinForms, GB.WASM, GB.Core, and GB.Console.
- Build and run the WinForms frontend (Windows): From the repository root open a command prompt or Developer PowerShell and run dotnet build. Then change directory into GB.WinForms and run dotnet run (or build and run the produced executable). The README indicates the WinForms version is the most complete desktop frontend and includes sound. If you make changes, rebuild with dotnet build in the GB.WinForms project folder.
- Run the WebAssembly build in a browser: The GB.WASM folder contains a WASM-targeted version. The repository README references a launch.bat that publishes an AOT version and starts a local web server. To use this: open GB.WASM, inspect launch.bat, and run it on a supported platform (Windows or other platforms where the script works). Alternatively, publish the WASM build manually with dotnet publish -c Release -r browser-wasm (adjust command to your .NET SDK). Serve the published output from a local static web server and open the provided HTML page in a browser. The README includes keyboard key mappings for the browser frontend; click the page to focus it before using the keys.
- ROMs, BIOS and legal notes: The project README warns that not all test ROMs pass and that GBC support is not complete. The repository does not include commercial ROMs, BIOS, or firmware. Obtain any ROMs or BIOS files only from sources you legally own; the emulator may require certain BIOS/boot ROM files for some functionality and those are not provided by the project.
- Testing and development notes: Use known test ROMs and homebrew to exercise features. Expect occasional incompatibilities — the author explicitly says there are better emulators for playing games. If you intend to contribute, follow the repository's contribution workflow, open issues, and run unit/tests present in the source.
Software reminder: This project targets .NET 6 and is distributed under the repository's MIT license. The repository README warns it is primarily a learning/hacking project and not a fully compatible emulator for all commercial games.
Sources and further reading
Detailed guides and tutorials
Explore step-by-step guides for gb-net as they are published.
Retro Replay Retro Gaming History, Reviews & Emulation
