65
votes

Why does the Game Boy specifically support four shades of grey, why not three or five? Is there something about the hardware that made four colours optimal?

Was there a precedent to using four shades of grey in computer graphics before the Game Boy, or was this an invention of the system?

1

3 Answers 3

112
votes

The first computers were monochrome; they only knew 2 colors, as for each pixel, you only had 1 bit:

0
1

As for the Gameboy, it supported 2 bits per pixel, which gives us 4 possible colors to choose from:

00
01
10
11

How did the makers decide on four and why not three

Because they already had 4 colors to choose from. When people have 10 fingers, why not count up to 10?

or five?

Because that would've required they increase the screen's bit depth to 3 bits per pixel, which would have given us 8 colors to choose from. Why didn't they do it? Probably for performance reasons. As you increase the amount of bits per pixel, you increase the amount of data to process, which in turn requires more powerful hardware to process.


Was there a precedent to using four shades of grey in computing graphics before the Gameboy, or was this an invention of the system?

Of course there were precedents.

CGA, gray-scale early NeXTstation, color Macintoshes, Atari ST.

19
  • 84
    3 bit per pixel also causes byte alignment issues. The game boy used an 8 bit CPU, so with 2 bit per color it could store 4 pixels in a cpu-word. With 3 bits per pixel it would either have been restricted to 2 pixels per cpu-word with 2 unused bits or use some fiendishly complex arithmetics to process 8 pixels with 3 cpu-words. That means 2 bpp or 4bpp would have been reasonable choices, but 4bpp displays didn't seem feasible at that time for handheld gaming systems.
    – Philipp
    Mar 9, 2016 at 14:27
  • 11
    @DCShannon. I made them up, but based on the fact that a regular PC screen is black when turned off, while a Gameboy's is white. I don't think the actual mapping is very important, though.
    – Nolonar
    Mar 9, 2016 at 14:37
  • 6
    Thanks so much for this. Of course it's due to bit values. I wondered if it had something to do with the screen hardware. In hindsight asking about odd numbers seems a bit silly.
    – Polyducks
    Mar 9, 2016 at 14:55
  • 38
    And for 50 shades of gray, you need 6 bits per pixel. Mar 9, 2016 at 16:36
  • 7
    @SteveS I'd say it was almost entirely due to cost. Adding a third bit of colour would require 50% more RAM and ROM to store graphics. It would also require significantly more die area on the CPU chip for graphics.
    – user86571
    Mar 9, 2016 at 16:43
77
votes

While Nolonar's answer is true from a technical perspective, it's not the actual reason why the developers chose to go with a monochrome system. Gunpei Yokoi, the creator of the Game Boy, intentionally designed the system monochrome to force games to be more abstract, thus preventing players from getting too caught up in details. As he put in in a 1997 interview:

The technology was there to do color. But I wanted us to do black and white anyway. If you draw two circles on a blackboard, and say “that’s a snowman”, everyone who sees it will sense the white color of the snow, and everyone will intuitively recognize it’s a snowman. That’s because we live in a world of information, and when you see that drawing of the snowman, the mind knows this color has to be white. I became confident of this after I tried playing some Famicom games on a black and white TV. Once you start playing the game, the colors aren’t important. You get drawn, mentally, into the world of the game.

The full interview can be read here: http://www.techspot.com/news/61318-console-gaming-now-fascinating-1997-interview-nintendo-legendary.html

16
  • 25
    That sounds like an explanation of why the four colors are monochromatic, not why the number of colors is four.
    – DCShannon
    Mar 9, 2016 at 15:59
  • 2
    This is also partially answering my question, @DCShannon. I've upvoted it because it adds another facet to understanding the choices made between design and hardware.
    – Polyducks
    Mar 9, 2016 at 16:50
  • 2
    I think both answers are two parts to the same answer, to be honest. Yokoi wanted to keep the system simple, so they selected a 2 bit system which gave them 4 colors. This afforded them the simplicity and performance, while keeping with the overarching design ideals. Mar 9, 2016 at 17:11
  • 8
    Well, I think there were some huge marketing incentives at the time also. Building a colour device would have meant building a very different device, different market. "The technology was there to do color." - the technology was brand new, expensive, bulky and required a lot more power. There were no colour devices on the market at the time. The Atari Lynx (released later the same year) was the first colour device. But the Lynx was twice the price, much larger and ate batteries for breakfast! A monochrome LCD screen enabled them to hit the target market.
    – MrWhite
    Mar 9, 2016 at 17:57
  • 6
    I used computers with 4-colour displays at that time (PCs with CGA and others) They were ugly. Ugggghly! 4-level grayscale is much better. Mar 10, 2016 at 8:19
1
vote

While I haven't studied the internal workings of the Game Boy, I have designed and built a controller for a four-gray-level LCD, for use with display panels that were designed for on/off control only. To get four-level grayscale from a panel that's designed for on-off control, one must be able to do the following:

  1. Switch instantly between two display buffers.

  2. Time the display switching so that the first buffer will be shown for one scan, the second for two, the first for one, the second for two, etc.

  3. Set the refresh rate about 3x as fast as would otherwise be needed to avoid flicker [in practice, it can be a bit less than 3x as fast; I used 100Hz].

Adding the ability to switch between two display buffers at the proper times and boosting the refresh rate are both things that can be done quite cheaply. While the same approach might in theory be used to achieve an eight-level or sixteen-level grayscale, doing those things would require significantly increasing display refresh rates. While pushing things to eight gray levels or even sixteen might be feasible, the comparative benefit obtained by doing so would be slight compared with the benefits of going from on-off control to four-level control.

[BTW, some common controllers have the ability to automatically flip between two buffers, but show each one for two scans rather than doing a 1-2-1-2 pattern; I don't know why they don't have 1-2-1-2 since it provides four gray levels rather than three, doesn't require quite as high a refresh rate, and is at least as effective if not moreso at preventing display polarization].

Not the answer you're looking for? Browse other questions tagged .