| Journal of the Association for Computing Machinery at UIUC | ||
| foo | foo | |
[ Home ]
An Introduction to Game Boy ColorBy Steve BehlingAt the end of 1998, Nintendo of America released the followup to its tremendously successful Game Boy, the Game Boy Color. With nearly ten years of popularity behind it as well as over sixty million hardware units worldwide, Nintendo's engineers in R&D group 1 (formerly led by engineering genius Gumpei Yokoi) prudently opted for some compatibility between Game Boy and Game Boy Color. This option for compatibility between systems poses some interesting issues for game programmers and designers. First, it's important to know what the original Game Boy was capable of. The original Game Boy (DMG-01) and Game Boy Pocket (MGB-01) are both based on a customized 8-bit processor running at 1.05 MHz and supplemented with custom logic for graphics and sound processing. Game Boy has 8 kilobytes of main (or "work") RAM and 8 kilobytes of RAM for graphics. The graphics themselves are comprised of a grid of tiles or "characters" which are typically 8x8 pixels. The system also supports up to 40 sprites or "objects" simultaneously. Although the system only offers four shades, it's possible for backgrounds to have one set of the four shades and sprites can have one of two sets of shades (each having 3 shades plus transparency). This may seem strange at first, but it's very useful if in the course of a game the programmer wants to make a single object flash different shades without flashing the entire screen! Game Boy Color has had several additions and improvements over this formula. The system can support multiple palettes and supports 15-bit RGB color. There's a faster DMA system, too, as well as four times the work RAM, twice the video RAM, an infrared port, a double-speed CPU, and a faster serial Game Link port (potentially as fast as 512 Kbps, depending on the mode). With that in mind there are several ways to approach making a game for the system now. Game Boy Color can support all existing monochrome Game Boy games, applying system default palettes to the existing background graphics and moving objects, thus allowing up to ten colors on-screen. Game Boy Color now supports up to eight palettes each for both backgrounds (4 colors each) and sprites (3 colors each, plus transparency), however, thus natively allowing up to 56 colors on-screen at once. It is possible to take advantage of this ability, yet still retain compatibility with existing Game Boy systems. This is called a "Dual-Mode" game. One simple means of colorizing a game is to make a standard Game Boy game with your own palettes instead of the default ones. This is a "Colorized" model.In the "Dual Engine" model, it's possible to essentially make two versions of a single game--one for Game Boy and one for Game Boy Color--and put them in the same cartridge. It's just a matter of a small startup program determining which type of hardware the game pak is in and then launching the correct program. The "Adaptive" model game has one program that substitutes different routines or artwork on-the-fly depending on which system it is in. Finally, it's possible to make a dedicated Game Boy Color game that forgoes all compatibility with Game Boy. Such a game can be well-suited to take advantage of Game Boy Color's new abilities. Contrary to popular belief, although it's possible to convert old NES games to Game Boy Color, the task is not easy. The two systems have different architectures and run at different resolutions, which means that games would not only need to be reprogrammed to be ported, but the graphics and/or gameplay would need to be adjusted to compensate for reduced viewing area (160x144 resolution versus 256x224). With its many new features and an assortment of options for developers, Game Boy Color seems to have a promising future ahead of it. Software Creations, which is working on a new Ken Griffey Jr. baseball title, evidently has devised a way to support more than 56 colors on-screen at once, according to new reports. With that kind of technical creativity, hopefully software can rise to new standards. |
||