Jorge Holgado Alvarez's PicoDMG Modernizes the Nintendo Game Boy — With an RP2040/RP2350

Raspberry Pi's low-cost RP2040 or RP2350 microcontroller sits at the heart of this project to replace a Game Boy motherboard and display.

Gareth Halfacree
1 hour agoRetro Tech / HW101 / Games

Engineer and self-described automation architect Jorge Holgado Alvarez managed to nerd-snipe himself into recreating Nintendo's classic Game Boy handheld console — turning a proof-of-concept breadboarded emulator into a full replacement motherboard powered by a Raspberry Pi RP2040 or RP2350 microcontroller.

"Everything started as a simple proof of concept," Alvarez explains of the PicoDMG project. "After discovering several Game Boy emulator projects for [Espressif] ESP32 and [Raspberry Pi] RP2040/RP2350 [microcontroller] boards, I couldn’t resist trying one myself using a spare RP2040 board and a small 1.8" TFT display I already had available. Then I realized I had an original DMG-LCD-06 board available from a previous Game Boy restoration project using an IPS display replacement. At that point, the goal stopped being a simple POC and became: "Let's build a [Nintendo] Game Boy."

Launched in 1989 to huge success, the Nintendo Game Boy was a black-and-white handheld console with user-exchangeable cartridges played on a dot-matrix display — a big upgrade over Nintendo's earlier Game & Watch family of handhelds, each capable of playing only variants of a single pre-loaded game. Including all variants and its upgraded successor the Game Boy Color, the handheld is estimated to have sold nearly 120 million units in its lifetime.

Alvarez's Game Boy is special, though. Its innards are gone, replaced with a custom motherboard running an open source emulator on Raspberry Pi's low-cost microcontrollers. "I realized I could probably fit everything required inside an original Game Boy shell while preserving the original button board and controls," Alvarez explains of the project, "keeping the look and feel as close as possible to the real hardware."

The finished PicoDMG uses a modern 240×320 color LCD in place of the black-and-white screen of the original Game Boy, providing a back-lit display playable in the dark — unlike the reflective screen of the original. A custom color palette reproduces the black-on-green of Nintendo's original, driven from a fork of the RP2040-GB Pico-GB emulator that is, in turn, a fork of the Peanut-GB emulator, tweaked and optimized to boost performance as close as possible to a real Game Boy board.

Crack its case open, though, and you might be surprised to find a protoboard instead of a dedicated PCB: the replacement motherboard is hand-soldered using a Raspberry Pi Pico 2 W microcontroller board and various other components, with the board cut to fit exactly in the original Game Boy housing. There's an added bonus, too: instead of cartridges, games can be selected using Near-Field Communication (NFC) cards: just tap them to the Game Boy and the game loads — selected from microSD storage using a tag ID to filename mapping, rather than storing and loading anything to and from the card itself.

More details on the PicoDMG are available on the project page, with source code available under an unspecified license — though it should be the permissive MIT license to match upstream — on GitHub.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles