2020-04-24

Alternate CGA Colors, Part 1

What if CGA Brown Was Dark Yellow?

We're still in the midst of the Coranavirus pandemic; originally my plan to was to come up with a few virus related games and write some mini-reviews for each to keep a theme going with Virus Rage being the first in the list, but as this disaster continues the premise started to look less interesting. Instead, I took the time to do some code updates which have just been released! This time around the update features the usual array of backend fixes and enhancements and also adds some changes to the release information layout. There is also, of course, a lot of work that is still in progress but not quite complete.

Additionally, I wanted to start a series of thoughts that came to mind; how could CGA graphics be improved? So instead of worrying about viruses, it's time to take a look at how, just maybe, the grass could have been greener! CGA graphics tend not to be remembered fondly; the card definitely had a lot of limitations, and as was typical for the era a lot of trade-offs had to be made in the design of the card. It was possible for CGA cards to be connected to either a composite monitor or t.v., or to an RGBI monitor. The RGBI monitor option was more expensive and only provided a maximum of 4 colors instead of 16 in graphics mode, however the image was much sharper. For the first few articles in this series, I'm just considering the RGBI option; with only 4 colors at a time available and a limited set of predefined palettes, some games on the PC looked rather ugly compared with their counterparts on other computers even if CGA did offer a comparable or higher resolution. While many other systems allowed more than 4 colors at a time, there was typically a catch! Usually it was some sort limitation on how the colors could be set; for example, the Commodore 64 had the same 320x200 resolution available, but only 2 colors were available for each block of 8x8 pixels. CGA was much simpler and allowed every pixel could be set to whatever color you wanted (something IBM apparently called all-points addressable) and there was no color-per-block/scanline restriction. The trade-off, of course, was fewer colors on the screen at a time. As to which approach to color was better could come down to the skill of the artist or programmer. One of the problems wasn't just the limitation of 4 colors at a time, it was that you could only choose from one of several pre-defined palettes; if developers could have chosen *any* 4 colors from the 16 available, things may have been very different! But even with this limitation, quite a few games still made some poor choices when it comes to colors. Of course, what constitutes a poor choice or a better choice is higly subjective and I'm sure more than a few readers will disagree with me over what looks good. Regardless, this idea behind this series is to take a look a few examples of how CGA could have been used differently; in some articles I intend to present how the actual CGA card could have offered better choices for a game, and in others how theoretical changes to the CGA card that never existed could have offered better options to developers.

To start off the series, I'm looking at one of the alternate universe options where one of CGA's 16 colors was just a bit different: more specifically, brown! For a very brief background, the CGA card could display a total of 16 different colors when connected to an RGBI monitor; there were 4 bits sent to the monitor which was one bit each for Red, Green, and Blue components of the color and then an additional bit for low or high intensity. The oddity with CGA colors appears with color 6 (the brown color); this would be expected to be dark yellow as the red and green bits are set and the intensity bit is set to low. However, the actual color seen is brown; this is accomplished by circuitry in the monitor (not in the CGA card itself) which halves the green value providing the well known brown. I'm not sure why and haven't found a for sure confirmed reason; theories I've come across include that the brown color more closely matches earlier IBM terminals or that the brown is a more pleasing color. Nonetheless, IBM RGBI monitors display brown. It should also be noted that early in the IBM PC's life there wasn't an RGBI monitor available from IBM themselves; you had to either purchase a 3rd party display or use a composite monitor/t.v. Some of these RGBI monitors available early in the IBM PC's life did not include the yellow to brown circuitry so this hypothetical dark yellow would have actually been the real color seen by a few people. I don't believe this was very common, however, and brown is what most people saw. This would have been especially true as time went on as it became standard in pretty much all RGBI monitors as well as with later graphics standards including the PCjr, EGA, and other adapters where brown was used when emulating CGA.

Comparison of CGA color 6 (brown and yellow versions).

But what if IBM hadn't bothered changing the color to brown and dark yellow had been used instead? It's impossible to say for sure; if dark yellow was the color available, developers may have chosen different dithering patterns or even used a different palette entirely. But for curiosity reasons, below are some screenshots with brown replaced by yellow to see what games may have looked like. For the most part, I like the results. With palette 0 CGA provides the colors red, green, brown, and a background color; the red and brown are very close to each other so there isn't much contrast between 2 of your 4 colors! Switching to dark yellow improves that situation greatly (palette 0 isn't the only one with a contrast problem; with palette 1, you have white, cyan, and magenta where the white and cyan are very similar). When the full 16 colors are available at once (such as with EGA), the brown color seems more useful; with only 4 colors and without the ability to freely select all 4 I like the possibilities offered by yellow.

To start off with here are a few Sierra On-Line games; their AGI adventures made spectacular use of 16 color CGA composite graphics, but if you had an RGBI monitor you were instead treated to a palette of red/green/brown/blue with dithering used to simulate 16 colors. But what if we replace brown with yellow? Here's the comparison with the actual version on the left and the modified version on the right...

King's Quest
Actual CGA Palette Hypothetical CGA Palette
King's Quest actual CGA palette King's Quest alternate CGA palette
Space Quest
Actual CGA Palette Hypothetical CGA Palette
Space Quest actual CGA palette Space Quest alternate CGA palette
Manhunter: New York
Actual CGA Palette Hypothetical CGA Palette
Manhunter: New York actual CGA palette Manhunter: New York alternate CGA palette
Space Quest II
Actual CGA Palette Hypothetical CGA Palette
Space Quest II actual CGA palette Space Quest II alternate CGA palette

Not too bad, huh? As a brief aside, although black was the default the background color could be set to any one of the available 16 colors. Sierra seemed to be one of the few companies to take advantage of this on a regular basis; as it happens, all of the examples I plucked out shown below use the default black (although in most cases, this makes sense for the given game). Anyway, next up is Montezuma's Revenge which is an interesting example; replacing brown with dark yellow not only makes the bricks stand out a little more, it also makes the CGA graphics closer to the IBM PCjr version 16 color graphics. Had the game utilized the high intensity palette this also would have been the case; I'm not really sure why the game didn't. As I noted above, some RGBI monitors didn't have the yellow to brown circuitry; similarly, some RGBI monitors didn't have the ability to support the intensity bit so only the 8 low intensity colors were available. With some games, such as this one, I've wondered if the developers had such a monitor that fell into one of these categories. However it happened, however, here's the comparison...

Montezuma's Revenge
Actual CGA Palette Hypothetical CGA Palette
Montezuma's Revenge actual CGA palette Montezuma's Revenge alternate CGA palette
IBM PCjr
Montezuma's Revenge IBM PCjr version

Pac-Man and Ms. Pac-Man definitely work better with dark yellow; our title characters are yellow in their original arcade versions, and if we use our hypothetical palette the resulting conversions look closer to their original counterparts! Both of these games are another case where using the high intensity palette would seemingly have made sense in order to have yellow as an available color, but for whatever reason it wasn't used.

Pac-Man
Actual CGA Palette Hypothetical CGA Palette
Pac-Man actual CGA palette Pac-Man alternate CGA palette

Some games don't necessarily have a lot of meaning to the colors selected. Moon Patrol is an example where even the arcade original doesn't have realistic moon colors instead opting for a brighter orange/red color. Many platform, action, and other games used bright, colorful graphics either as a stylistic choice or as a result of having to choose from an imperfect, limited palette due to hardware of the era. Here's a few examples where our hypothetical color palette doesn't necessarily make the result more realistic or closer to the original version of a game, but doesn't look worse than the actual palette either.

Moon Patrol
Actual CGA Palette Hypothetical CGA Palette
Moon Patrol actual CGA palette Moon Patrol alternate CGA palette
The Exterminator
Actual CGA Palette Hypothetical CGA Palette
The Exterminator actual CGA palette The Exterminator alternate CGA palette
Apple Panic
Actual CGA Palette Hypothetical CGA Palette
Apple Panic actual CGA palette Apple Panic alternate CGA palette

And finally, the case where not everything works out perfectly! There are at least a handful of games where I find the brown to be preferred. Dig Dug was one of the best examples I came across as with the brown we have a nice dirt color and the dithering provides a pretty decent gradient between shades. Change to yellow, and the dithering makes less sense; I think it could have been possible to be used well, but as the game is the actual CGA colors work better here!

Dig Dug
Actual CGA Palette Hypothetical CGA Palette
Dig Dug actual CGA color palette Dig Dug hypothetical CGA color palette
Ghosts 'N Goblins also isn't really improved by the color change; trees and parts of the ground work better with brown given the dithering used, and clarity also isn't improved or hindered by the update.
Ghosts 'N Goblins
Actual CGA Palette Hypothetical CGA Palette
Ghosts 'N Goblins actual CGA color palette Ghosts 'N Goblins alternate CGA color palette

That's all of the alternate CGA color samples I have for now; Quite a few games supported CGA with a number of them using the low intensity red/green/brown palette. This was just a small batch of examples put together for fun to see what could have been possible; over the remainder of the year I plan on posting a few more examples in this series of how CGA colors could have been different (and even improved). One last thing to point out is a preview of a work in progress: A handful of scans of PC Games magazine covers and a few from Electronic Games magazine are now available. I used to have a nearly complete set of the hard to find PC Games magazine, but only a few remain in my collection at the moment; Electronic Games seems to be a little less rare, so I'll definitely be able to add to the collection over time. As I can acquire more magazines and scan more of the ones I already have, I'll add the images here. I have certainly have plenty of other miscellaneous magazines, advertisements, and photos that are interesting but don't really fit anywhere on the site (yet); since the scans/photos don't necessarily relate to anything cataloged but I find them interesting anyway, the idea is to have an “unrelated to anything” images gallery to house them in. The start of the magazine cover scan galleries is just a prototype to see if the idea works.

And that's it for right now; as always thanks for checking out PixelatedArcade. There will also be lots more site updates, new content, reviews, and more coming soon so check back when you get a chance. Hopefully everyone is doing well and social distancing! Yeah, it's not fun, but we want you, family, and friends to all stay safe as we deal with this Covid-19 pandemic. Take care!