GAME BOY COLOR EMULATOR
pico-peanutGB
pico-peanutGB is an open-source Game Boy / Game Boy Color emulator implementation targeted at RP2350/Raspberry Pi Pico 2 microcontroller boards that runs cartridges/games from an SD card and outputs video and audio (HDMI) from the microcontroller platform.

WHY IT MATTERS
Why this project exists
Designed to bring Game Boy (DMG) and Game Boy Color (CGB/GBC) software to very small RP2350-class microcontroller boards (for example the Raspberry Pi Pico 2), providing a compact hardware-based retro experience with SD-card game loading, HDMI video output and onboard audio support.
BEST FOR
Key strengths
Targets small RP2350 microcontroller hardware (Pico 2 family) with direct HDMI and audio output; integrates SD card loading and a simple menu; leverages Peanut-GB / SameBoy code and embedded libraries to fit Game Boy emulation into constrained hardware.
The people behind pico-peanutGB
Project history and lineage
pico-peanutGB is an RP2350-targeted fork/port of the Peanut-GB family of Game Boy emulation code adapted to run on RP2350-class microcontrollers (Raspberry Pi Pico 2 and similar). The repository and recent releases show active development and packaging for RP2350 targets. The codebase references Peanut-GB and SameBoy components (used as code sources or inspiration) within its source. Development and related RP2350 retro-emulation projects (bootloaders and other console ports) are grouped in the same PicoPlus-devel organization and related forks, indicating an ecosystem of microcontroller-targeted retro emulators and a UF2-based distribution workflow for these devices.
What pico-peanutGB supports
- Game Boy (DMG)
- Game Boy Color (CGB/GBC) — as implemented/ported for RP2350 boards
- RP2350 / Raspberry Pi Pico 2 and similar RP2350-based microcontroller boards
- SD card (FAT/exFAT) game loading
- HDMI video output and on-board audio output (as supported by the board and build)
Download and availability
OFFICIAL DOWNLOADS
Get pico-peanutGB
Official builds and source are published in the project's GitHub repository releases. Use the releases page to fetch prebuilt UF2 files or source tarballs; for development or custom builds clone the repository and follow the project README build steps.
Get pico-peanutGB ↗DOCUMENTATION
Official documentation
Read the official configuration, compatibility, and troubleshooting material before changing advanced options.
Read official documentation ↗pico-peanutGB setup guide
Setup note: This setup guide covers the practical steps to run pico-peanutGB on an RP2350 board (example: Raspberry Pi Pico 2). It assumes you will use the project's released UF2 or build from source. Do not copy or distribute commercial ROMs, BIOS, or firmware files with the project.
- 1) Confirm hardware and prerequisites: You need an RP2350-class board (Raspberry Pi Pico 2 or compatible), an HDMI-capable display, a microSD card (FAT32 or exFAT) and a USB cable for flashing. On the host computer install required build tools only if building from source (C/C++ toolchain, Pico SDK or toolchain indicated by the project's README).
- 2) Obtain official release or source: Visit the project's GitHub repository and Releases page to download a prebuilt UF2 (if provided) or the source archive. The repository and releases are hosted under the project's GitHub organization. Use the Releases page for official distributed UF2 images.
- 3) Prepare the SD card: Format the microSD card as FAT32 or exFAT (follow the project's release notes if a specific structure is required). Copy the emulator's data files as instructed in the release README — typically a metadata pack, configuration files and folders for ROMs. Do not put commercial game ROMs on a public device unless you own the original cartridge and follow local law.
- 4) Flash the RP2350 board: If using a prebuilt UF2: put the Pico/RP2350 into bootloader mode (hold BOOTSEL while plugging into USB), copy the UF2 to the board which will appear as a USB mass storage device, then eject and reboot. If building: follow the repository build instructions (clone, configure with the Pico SDK or the toolchain the project documents, then build the UF2) and flash the generated UF2 in the same UF2 bootloader manner.
- 5) Boot and load games: Insert the prepared SD card, connect HDMI and audio outputs, and power the board. The emulator should present a menu or scan the SD card for supported game files. Use the project's documented key/button mappings or a USB/Bluetooth controller as supported to select and run games.
- 6) Troubleshooting and tuning: If video/audio do not appear, check that the specific RP2350 board build supports HDMI and audio (not all RP23xx boards have the same pinouts or HDMI output). Check the repository issue tracker and README for board-specific notes, SD card driver versions, or required firmware (some projects in the same ecosystem provide a UF2 bootloader and metadata packs to place on the SD card). When building from source, ensure you use the exact SDK/toolchain versions specified by the project to avoid build failures.
Software reminder: The project does not include commercial ROMs, BIOS, or copyrighted firmware. You must supply legally owned game files yourself. Follow the repository README and release notes for exact file placement and any required auxiliary files.
Sources and further reading
- pico-peanutGB GitHub repository (project page, README/source)
- pico-peanutGB releases (releases page showing downloadable builds and release notes)
- Fork / source files referencing Peanut-GB and SameBoy code (example: peanut_gb.h in a fork)
- PicoPlus-devel organization releases and bootloader packaging (pico-bootLoader repository showing packaging approach used by PicoPlus projects)
Detailed guides and tutorials
Explore step-by-step guides for pico-peanutGB as they are published.
Retro Replay Retro Gaming History, Reviews & Emulation
