Nintendo Game Boy (DMG & GBC)

Edit on Github | Updated: 10 August 2020

Game Boy Basics

Interested in learning more about the the original Game Boy or Game Boy Color? Excellent! This section will guide you through the basics, starting from basic assembly language all the way to reverse engineering your first game!

Game Boy Exclusive Games (DMG & Color)

When it comes to finding a game to reverse engineer it can be helpful to look at games that are cross-platform to compare builds. But the most valuable reverse engineering projects tend to be the platform exclusives as these are games people can no longer play on modern consoles.

List of Original DMG Game Boy exclusives

Wikipedia has compiled an excellent list of games that have never been re-released and thus need a Game Boy to be able to play

List of Game Boy Color exclusives

Wikipedia has compiled an excellent list of games that have never been re-released and thus need a Game Boy Color to be able to play


Game Boy Technology

Game Boy Assembly Language (Z80-like)

The Game Boy has a variant of the Zilog Z80 processor, well technically it is a CPU between the i8080 and the Z80, it is not binary compatible with either but there are similarities. You need a assembler that can handle the Game Boy specific opcodes in order to write functional code for the Game Boy in assembly language.

gbZ80 Assembly programming for the Gameboy and Gameboy Color

ChibiAkumas has an excellent page with tutorials and information to get started with Game Boy assembly language

Game Boy Boot ROM (Bootstrapping)

Every game produced for the Game Boy required a little piece of code known as the “bootloader” or boot code to initialise the state of the console. You don’t have to know anything about this, but it can be fascinating to find out what the Game Boy does as soon as you hit that power button.

A Look At The Game Boy Bootstrap: Let The Fun Begin!

RealBoy has an excellent page that gives you an in-depth look at how the Game Boy's bootloader works


Reverse Engineering Game Boy Games

There have been a few very successful reverse engineering projects for the Game Boy, one of the most successful is the Pokemon dissassembly which managed to reverse engineer the entire game into a rebuildable ROM!

Pokemon Red/Blue/Yellow

The Pokemon Reverse Engineering Team (PRET) have managed to pull off a marvellous achievement, they have fully reverse engineered Pokemon Red and Blue back into retail-matching assembly code.

Reversing Pokemon Red and Blue (Game Boy)

For more information about the project check out this post.

In August 2016 the website KZone started a full disassembly of the classic Game Boy game Link’s Awakening, along the way they have written some excellent in-depth articles about how the game works. Check it out!

Disassembling Link’s Awakening

Find out how Zelda Link's Awakening for Game Boy works at KZone!

Looney Tunes: Carrot Crazy

Reverse Engineering Carrot Crazy

Find out how to reverse engineer Looney Tunes: Carrot Crazy for the GBC


Game Boy Development

Game Boy Development Kit Hardware

Gameboy (DMG & GBC) Development Kit Hardware

For more information about the development hardware used for Game Boy projects check out this post.

Game Boy Software Development Kit

Game Boy Software Development Kits

For more information about the SDK used to make Game Boy games check out this post.


Source Code

Mr Do! For Original Game Boy

The source code for the Game Boy classic Mr Do! has been kindly released by two of the original game developers and can provide an excellent reference for how retail Game Boy games were developed in 1990!

Mr Do! Source Code (Game Boy)

For more information about the source code check out this post.


All Posts

Game Boy Software Development Kits

Read all about Game Boy Software Development Kits in this s...

Gameboy (DMG & GBC) Development Kit Hardware

Read all about Gameboy (DMG & GBC) Development Kit Hardware in this s...

Mr Do! Source Code (Game Boy)

Read all about Mr Do! Source Code (Game Boy) in this s...

NES Sprite Tile Editing

Read all about NES Sprite Tile Editing in this s...

Reversing Pokemon Red and Blue (Game Boy)

Read all about Reversing Pokemon Red and Blue (Game Boy) in this s...

The Ultimate Game Boy Talk

Read all about The Ultimate Game Boy Talk in this s...

Introduction to Gameboy Reverse engineering

GameBoy Introduction

...

</div>
How Pokemon Gold/Silver Worked (Game Boy)

Read all about How Pokemon Gold/Silver Worked (Game Boy) in this s...

Create Twitch Plays Pokemon Emulator Script

Read all about Create Twitch Plays Pokemon Emulator Script in this s...

</div>