« Game Boy / Color Architecture (index)

Game Boy / Color Architecture

Chapter 7: Games


Table of Contents

  1. Modernised cartridges
  2. External communications
    1. Wireless methods

One of the main constraints of 70s-80s consumer hardware was its programming limitations: while promising, high-level languages like C or Pascal were not yet ready for performance-critical applications, as compilers lacked maturity and games had to squeeze as much performance as possible. As a result, Game Boy games were mainly written in assembly language.

Image
The original Game Pak design .

Apart from this, commercial games were distributed in the form of Game Paks, which were cartridges designed by Nintendo for the Game Boy series. In terms of storage options, games had a maximum size of 32 KB, owing to the limited address space available. However, with the help of a Memory Bank Controller (mapper), games could reach bigger sizes. The largest Game Pak found in the market featured a 1 MB ROM (or 8 MB, in the case of the Game Boy Color).

Finally, some Game Paks also included a real-time clock and/or extra Static RAM (SRAM), along with an external battery to hold saves.

Modernised cartridges

Image
Black design , denoting 'Game Boy Color enhanced'.

Image
Translucent design , denoting 'Game Boy Color exclusive'.

Color-era revisions of the Game Pak.

With the addition of an extra mode of operation (supported by the Game Boy Color), Nintendo categorised three different types of Game Boy games:

The three types were also given official colours to help differentiate them. Yet, some games like Pokémon and Donkey Kong featured alternative designs.

External communications

For the first time, games could communicate with external hardware using a Game Boy Link cable, enabling multiplayer functionality and the use of accessories. The Link cable connected to the 6-pin subconnector on the console, with the other end attached to another Game Boy or accessory.

The interface relies on the Serial Peripheral Interface (SPI) protocol, where one Game Boy designates itself as the master (driving the clock signal) and the other becomes the slave. During each transfer, both master and slave exchange an 8-bit packet (1 byte) .

Image
The Game Boy Link cable, with alternative plugs to support multiple variants of the console . Since the release of the original Game Boy, subsequent revisions miniaturised the socket while keeping the same number of pins.

The original Game Boy transferred information at 8 Kbit/second (1 KB/sec), while the Color variant could drive a higher clock speed, reaching up to 512 Kbit/second (64 KB/sec). This was known as 'high speed' mode.

At one point, Nintendo also shipped a '4-Player Adapter' to allow up to four Game Boys to exchange data simultaneously. The base protocol (SPI) remained the same, but the adapter, now acting as the master, implemented an extra layer of communication that games had to follow to broadcast data to the other consoles .

Wireless methods

The Color model also bundled an infrared emitter and receiver (made of an LED and a phototransistor, respectively) . This made it possible to exchange data wirelessly between Game Boy Colors, as seen in titles such as Pokémon Gold and similar. However, you will find that the system didn't implement a communication protocol - only a single register (RP) that encoded the IR sensor's action (emit or receive), the bit (0 or 1) being transferred, and the last bit received. Nevertheless, to alleviate things for developers, Nintendo did provide a reference implementation in the official Game Boy Developer Manual .


Previous: 6. Operating System

Next: 8. Anti-piracy


Rodrigo Copetti © 2026 RSS Feed

Switch to modern edition

Home · Writings · Support · About author · About website