Reverse engineering Tandy’s CoCo 3 “GIME” chip.

When Radio Shack released their third and final version of the Color Computer, the Tandy Color Computer 3, it included a custom ASIC chip. This chip, called the GIME (Graphics Interrupt Memory Enhancement), replicated most features of the Motorola 6847 video display generator chip used in earlier models. It also added new features such as higher resolution graphics with more colors, and a memory management unit. This allowed the CoCo 3 to be backwards compatible while allowing up to 640×225 resolution graphics and the ability to access up to 512K or RAM.

The operations of the GIME are well documented in the Tandy Service Manual for the Color Computer 3 sold by Radio Shack.

The GIME could only display 16 colors (from a palette of 64) on a screen at a time, but clever programmers quickly figured out how to make the hardware display all 64 simultaneously. Radio Shack apparently even knew this trick, and offered a diagnostics program that did it as well.

Even cleverer programs started doing things like this:

And this:

While the demo scene on the CoCo was quite small, it did exist.

256 colors, too?

During the production days of the CoCo 3, a few commercial programs were sold that claimed to offer 256 colors. These colors were only viewable on a composite NTSC monitor, so those using an RGB CM-8 (or similar) monitor or using PAL versions of the CoCo 3 could not participate.

In 2010, CoCo programmer John Linville even created a full motion video player that made use of this 256 color mode:

But … was there more?

The Quest for the “other” 256 Color Mode

There were a number of features planned for the CoCo 3 that never made it in to production. The earliest PCB prototypes had a floppy disk controller built in. They also used a more standard DB9 port for the monitor rather than the odd header connector on the bottom side of production CoCo 3s.

CoCo 3 prototype (from the collection of Allen Huffman)

The new hardware capabilities were implemented through an array of logic chips. These chips would later be consolidated in to the custom GIME chip for production.

Indeed, an early specification document provided to Microware Systems Corp specifically mentioned a 256 color mode. (Microware was the company chosen by Radio Shack to do the extensions to Microsoft Extended BASIC to support the new hardware.)

To read a great overview of the efforts to discover if this 256 color mode ever existed check out Nick Marantes’ website:

Which brings us to…

GIME more info…

Although the GIME was well understood thanks to excellent documentation, no one truly knows how it works. Programmers of various emulators and FPGA projects have had to create their own cleanroom implementation of the GIME by using only the technical references and any behaviors figured out by programmers.

CoCo 3 demos such as those included above would often not initially work on these reverse engineered GIME implementations. Developers would simply find programs that did not work, and figure out how to tweak their virtual GIME until it behaved like real hardware. This means that, to this day, many GIME-bashing demos look different depending on which emulation/recreation you run them on.

Roger Taylor wants to solve this problem. He just launched Project 256 on his Patreon page:

His goal is to sacrifice a few GIME chips (including the original buggy 1986 version and the later “fixed” 1987 version) and have them reverse engineered. This process of decapping has already been used on the CoCo’s original video chip to confirm what the embedded font characters were. It is hoped that the end result to his project will be enough knowledge to do a full clone of the GIME via FPGA. (Note that the GIME-X project has already done a cleanroom FPGA plug-in version of the GIME, adding extra features, but so far no one has done a 100% recreation due to lack of information that would make that even possible.)

Follow Roger’s progress on his Patreon and, if so inclined, consider becoming a sponsor of his efforts.

Maybe one day we will truly know how the GIME works.

In 1982, I received my first computer: a $299.99 Commodore VIC-20. A year later, I moved on to a 64K Radio Shack Color Computer ("CoCo"). In 1990, I co-founded Sub-Etha Software "in Support of the CoCo and OS-9". This later led me to a job at Microware, creator of OS-9. I am author of the CoCoFest Chronicles, a compilation of my fest reports covering the 1990s era. I also host the wiki. These days, I am enjoying excavating my original VIC-20 tapes and thousands of CoCo floppy disks...

4 thoughts on “Reverse engineering Tandy’s CoCo 3 “GIME” chip.

  1. This is very interesting. It would be great to know exactly how the GIME works. I wonder if there is anyone from Tandy still around that could shed some light on the project! :)

    1. On the Nick Marentes page, he tracked down the engineer that did the GIME, but he couldn’t remember anything about the project. The 256-color issue was actually started, I think, by a former Tandy corporate person telling us about it, including spotty details on how it supposedly worked. It’s an interesting tale, for sure.

  2. One engineer really seemed to be bluffing. He knew nothing and then suddenly remembered it was 64 colour only and he was very sure about that then apologised for not knowing anything. If he’d read the internal design brief of the CoCo 3 he’d have known it was supposed to have a 256 colour mode. The engineer even had his name on the silicon. All the new features were down to that one chip which had to emulate the previous chips and add more features.

    I would say there is a 256 colour mode or was supposed to be but when they had not got it working in time the bosses said “Good, don’t worry about it, it would only have hurt sales of the bigger computer”. However having got it mostly done they would have wanted to get it in there even if they could not tell anyone about it. The idea that it can only be accessed like some hidden door in Doom would be exactly what I’d expect. It was not supposed to be there so let’s make it hard to find.

Leave a Reply

Your email address will not be published. Required fields are marked *