The TRS-80 Color Computer 2
My second computer, sometime around 1987, was Radio Shack’s Color Computer 3. It was an amazing computer, and, combined with Microware’s OS-91 operating system, well ahead of its time. A very inexpensive computer with a Unix-like operating system and true multitasking, shared graphics libraries, protected memory, and modern programming tools. I continued using that computer into the nineties. When I gave it up, I didn’t replace it. There was nothing to replace it with. It was a phenomenal computer/software combination that soured me on either Windows or Macintosh for at least a year, and which I continued to miss until Mac OS X.
So when I started researching the history of the personal computer for a novel I’m writing, the predecessors to the CoCo 3 were especially interesting to me.
I acquired an “untested” Tandy Color Computer 2 at the end of July 2019 and happily it works great. This is a late version of the model, which I was interested in mainly because it includes the ability to use lowercase as an accidental upgrade. It still fascinates me how lowercase was such a rare feature on early computers. No lowercase made word processing difficult at best. Lowercase mods were probably the most common aftermarket mod for any home computer that didn’t already have it.
Extended Color BASIC does not support the lowercase built in to the late model video display generator, but it is there if you know where to look for it. This was the last version of the Color Computer 1 and 22 before the Color Computer 3 came out.
One thing using this old computer does is reinforce the prejudice I held against computers that used unmodified television sets for video displays. I used the TRS-80 Model 1—a 1978 computer that I purchased used in 1980—until a house fire in 1987 melted it. I used it for nearly ten years because it came with a monitor that provided crisp (for the time, at least) text at 64 characters per line.
Even at only 32 characters per line, the Color Computer 2’s RF output to a modern television is far from crisp. I would never want to use this computer for word processing, or even for programming anything longer than a few lines of BASIC. That’s part of why I wrote superBASIC and the various tools I use for verifying old Rainbow magazine code on the Macintosh.
It wasn’t until the Color Computer 3 and the Commodore 128 that I started taking these kinds of computers seriously. The CoCo 3 and the 128 had RGB output. The improvement was enough to make (at least on the CoCo 3) 80 characters per line usable. That made it an improvement on the even then ancient Model 1 for word processing and programming.
While I was interested in reviewing the historical aspects of these old computers, I really had no desire to get back into dealing with floppy disks or cassettes. Fortunately, there’s a thriving retro community for the CoCo, so I picked up a memory card cartridge that lets me transfer files using an SDHC card instead of a floppy.3
It is fascinating to see what passed for games at the time; some of them are still fun, such as Galactic Attack (Galaxian) and Space Assault (Space Invaders). Others, it’s hard to believe anyone paid money for them.
Many of the cheaper home computers of the time doubled as game consoles by including the option to buy cartridges. The Color Computer did the same; some of the cartridges were far from games, however, including an audio spectrum analyzer.
Some things that were so common as to be unremarked at the time freak me out now. It is very strange to write pauses using empty loops, literally tying up the computer for the duration of the routine. Even more unsettling is polling the keyboard with INKEY$ loops. On a modern computer these loops would use up too much CPU time. But of course, on modern computers there would be other processes running to care.
The complete lack of memory protection is also so common as to go unremarked. In the June 1986 issue of The Rainbow, there’s a short program to display dancing telephones. In the accompanying text, the authors say to use PCLEAR 8 to clear space for the graphics. They do not say what happens if you don’t.
- 10 FOR P=1 TO 4
- 20 PCOPY P TO P+4
- 30 NEXT P
Leave out PCLEAR 8 and this program erases itself; in longer programs, such as the one in that issue of The Rainbow, PCOPYing beyond available graphics memory will turn the BASIC program’s lines to garbage. The consequences of not using PCLEAR 8 went unmentioned in the article; also unmentioned, and I still don’t know the reason for it, is why they didn’t just put PCLEAR 8 into the code. I added it and it doesn’t seem to hurt anything.4
As far as I can tell, the instruction manual for Extended Color BASIC also doesn’t mention what happens if you use PCOPY without PCLEARing enough pages.
Memory management was so primitive that this sort of thing was just assumed. PCOPY without PCLEAR, of course you’re going to overwrite your data, and your data includes your program.5
One thing I noticed when looking into old Rainbow magazines or CoCo-oriented books is that many CoCo programs have even line numbering! That’s because Extended Color BASIC comes with a RENUM command to renumber lines. Once you’re done programming, you can type RENUM and all lines will be renumbered from 10 in increments of 10. Or, to conserve memory, RENUM 1,X,1
to renumber from 1 in increments of 1.
This regularity helps reduce mistakes when typing in code from magazines and books.
Also fascinating, like the computer’s vestigial lower case, is its lack of color in normal use. This is a Color Computer. But the computer has two modes, a text mode and a graphics mode. In text mode, you can set three colors: foreground, background, and border6. There is no multi-colored text on the Color Computer 2. Whatever the foreground color is, all text is that color. Color can be displayed using the block graphics available on the text screen—such as the SPARKLE.BAS video shows—but the block graphics are block characters, not the point-by-point lines, circles, and boxes you would expect on a computer sold for its graphics. If you want to show one word in red, you can’t. Graphics and text are east and west on the Color Computer 2.
The graphics themselves are fascinatingly modern. Not in resolution—the Color Computer screen would fit in a tiny corner of the screen on my phone—but in how they handled multiple resolutions. The Color Computer has three graphics resolutions, 256x192, 128x192, and 128x96. But when drawing lines or circles on the screen, or setting pixels, you always specify them in the highest resolution, from 0 to 255 horizontally and 0 to 191 vertically. This means your code is portable across graphics modes. If you decide you’re willing to trade off graphics quality for more memory, you need change only the PMODE line. The graphics will handle themselves.
But that’s not all. Besides drawing point-by-point or line-by-line, there’s a DRAW
command that acts pretty much like a pencil on the screen.
- DRAW "BM128,96;U25;R25;D25;L25"
B means blank; M means move to location 128,96; U means draw a line up 25 points, R means draw right 25 points, D means down 25 points, and L left 25 points, thus drawing a box. It can change direction by 45-degree angles and even change the scale of the drawing, making it a snap to draw smaller or larger versions of the same figure.
There’s also a wonderful command for sound. While the Color Computer has the standard SOUND frequency, duration
command for creating sound that many computers had in the era, it also has a beautiful PLAY
command.
- PLAY "T5;C;E;F;L1;G;P4;L4;C;E;F;L1;G"
That’s the first line from “When the saints go marching in”—if you’re familiar with the song you’ll recognize it from the notes, C, E, F, G, repeated. T changes the tempo, P is a rest7, and L sets subsequent note lengths. The default is L4 (quarter notes). L1 would be a whole note, L8 an eighth note, and so on, and if you wanted to get real jazzy any number from 1 to 255 is possible, so seventh notes are perfectly reasonable.
I literally just wrote a similar script for the Macintosh in 42 Astoundingly Useful Scripts and Automations for the Macintosh. Except for tempo and the use of semicolons for separators, I was able to verify this melody using the notes and durations as given.
- $ piano -c e f 1 g 4 r -c e f 1 g
What this meant was that music could be played by building up human-readable strings taken straight from sheet music. There were a lot of musical apps written in BASIC for the Color Computer in The Rainbow.
This is a fun computer for reliving the dawn of the home computer era. There is a real enthusiasm for programming visible in old Rainbow magazines, in Tim• Hartnell’s• books, in Al Baker’s TRS-80 Programs and Applications for the Color Computer•, and even in the manuals that came with the computer.8 I enjoy playing old 8-bit games, enough that I’ve written a BASIC preprocessor to make it easier to write BASIC code using loops and readable variable names.
- November 24, 2021: CoCoFest! 2021
-
I started using the TRS-80 Color Computer in about 1987, and started seriously using it in about 1988. I’m pretty sure I started using the Color Computer 2: I’d been using a TRS-80 Model 1, but a house fire melted it. The computer surprisingly still worked—or perhaps unsurprisingly, the Model 1 wasn’t just battleship grey, it was built like a battleship—but was unusable and probably untrustworthy due to the damage.
One of the reasons that I never saved programs from the Model 1 was that many of the disks were damaged by water and mold. The main reason was that the programs wouldn’t work on my next computer, so why bother? Nowadays, of course, I’d just copy everything over and forget about it, but I had no hard drive then. So any disks that were working went along with the Model 1 when I sold it to someone else for parts.
I had a used Color Computer 1 or 2 that I’d acquired at some point, possibly for the hard drive that came with it. Because it was stored in a box in the closet, it escaped damage from the fire. My memory of this is very hazy, because I didn’t buy that CoCo for use. But since it was the computer I had, I tried it out, and it did what I needed it to do. At some point thereafter I acquired a Color Computer 3, probably pretty quickly, and with that, Microware’s OS-9.
OS-9 was an impressive operating system for its time, certainly compared to Windows and even compared to the Macintosh. Remember, this was the late eighties. Windows 3 wouldn’t be released for a couple of years. I quickly found OS-9 and the CoCo 3 indispensable for both programming and writing, and so I searched out support tools for it, abandoning the Model 1 line.
The biggest and best of the support tools for the CoCo 3 was Rainbow Magazine. It was as filled with great software to type in as 80 Micro had ever been—and by 1987 80 Micro was an anemic shell of its former glory. I’m not sure I was even subscribing to it at that point, as it had mostly abandoned the Z-80 line in favor of Radio Shack’s IBM semi-compatibles.
OS-9 Level Two, at least. I never used the original, retronamed Level One.
↑These first two models were basically the same computer. From the user’s standpoint, the main difference was the better keyboard on the Color Computer 2, and a few bugs fixed.
↑If you get a Color Computer, whether 1, 2, or 3, I highly recommend Ed Snider’s CoCoSDC. It’s like having an infinite number of disk drives.
↑Although, thinking about it now, I don’t understand why that doesn’t erase some of the BASIC program it’s in. If PCOPYing to those pages munges some of the code, why doesn’t PCLEARing erase some of it?
↑As I recall, one of the innovations of the CoCo 3 with OS-9 was that it did separate code from data and protected the former from accidental overwrite.
↑The border is that area outside the normal television screen. Because televisions varied a lot, the Color Computer outputted to a square guaranteed to display in full on all televisions. Everything around that square got a border.
↑P stands for pause. I don’t know why they didn’t use R.
↑For all their faults, Tandy/Radio Shack was known for the amazing BASIC tutorials that came with their home computers. Their Model 1 book, written by David Lien, was a phenomenal resource for a teenager who had never programmed before.
↑
books
- 42 Astoundingly Useful Scripts and Automations for the Macintosh
- MacOS uses Perl, Python, AppleScript, and Automator and you can write scripts in all of these. Build a talking alarm. Roll dice. Preflight your social media comments. Play music and create ASCII art. Get your retro on and bring your Macintosh into the world of tomorrow with 42 Astoundingly Useful Scripts and Automations for the Macintosh!
- Creating Adventure Games on Your Computer•: Tim Hartnell (paperback)
- “If I had read this back in 1983 or 1984 when it came out, I would have spent all my time writing adventure games. Even now it’s got me thinking about how to use the same techniques in sqlite/Python. Hartnell describes clearly the techniques used to keep track of rooms and exits, and goes through each technique line-by-line. ”
- Jerry Stratton’s Goodreads retro reviews: Jerry Stratton at Jerry@Goodreads
- Mostly old computer books, but also OMNI magazine and a handful of old gaming books and old cookbooks that embody a retro style.
- Tim Hartnell’s Giant Book of Computer Games•: Tim Hartnell (paperback)
- This is a collection of purely text games from about 1983. Most of the games should benefit from adding graphics to them, and that’s the assumption, that you’ll add whatever graphics your own computer supports. The code is “in Microsoft BASIC on an IBM PC”. The only restrictions are memory: some of them won’t fit in 4k: chess requires 8k, and one of the adventure games requires 17k.
- TRS-80 Programs and Applications for the Color Computer•: Alfred Baker (paperback)
- This was an amazing example of what a very early computer could do when programmed by someone who knew what they were doing—and who was able to clearly explain the logic so that the reader could duplicate the logic for their own software.
Color Computer
- CoCo SDC: Ed Snider at The Zippster Zone
- Ed Snider and Darren Atkinson’s SD card program pak for the Color Computer 1, 2, and 3 allows you to store all of your code on an SD card, emulating a disk drive so that the DSK files are compatible with any CoCo program that uses disk drives. It is phenomenal.
- The Rainbow at Wikipedia
- “The Rainbow was a monthly magazine for the TRS-80 Color Computer. It was started by the late Lawrence C. Falk (commonly known as Lonnie Falk) and was published from July 1981 to May 1993 by Falk's company, Falsoft, which was based in Prospect, Kentucky.”
- SuperBASIC for the TRS-80 Color Computer
- Make BASIC Fun Again. Use loops, switches, and subroutines while writing Extended Color BASIC code for the Radio Shack Color Computer.
- TRS-80 Color Computer Programming Tools
- The TRS-80 Color Computer was a fascinating implementation of the 6809 computer chip, and was, from the Color Computer 1 through 3, possibly the longest-running of the old-school personal computers.
videos
- Audio Spectrum Analyzer, graphs at Mimsy@YouTube
- Uses Journey’s “Lights” to show the TRS-80 Color Computer Audio Spectrum Analyzer cartridge.
- Audio Spectrum Analyzer, kaleidoscope at Mimsy@YouTube
- The kaleidoscope mode on Radio Shack’s Audio Spectrum Analyzer cartridge for the TRS-80 Color Computer 2, using Nick Gilder’s “(You Really) Rock Me”.
- The Flying Walloons at Mimsy@YouTube
- Color Circus (Tom Rugg and Phil Feldman) Proudly Present the Flying Walloons! Using block graphics on the TRS-80 Color Computer.
- TRS-80 Color Computer SPARKLEs at Mimsy@YouTube
- This BASIC program from Tom Rugg & Phil Feldman’s TRS-80 Color Computer Programs shows off the color possibilities in text mode, using SET.
- “On Hold” for the Color Computer at Mimsy@YouTube
- Dancing Telephones on the Tandy Color Computer 2. BASIC program from B. & D. Matthews in Rainbow Magazine, June 1986.
More Color Computer
- Simple game menu for the Color Computer 2 with CoCoSDC
- This simple menu provides one screen for cartridges saved in the CoCoSDC’s flash ROM, and any number of screens for your favorite games for your friends to play.
- Rainbow Magazine preflight tool enhanced
- I’ve added several features to the Rainbow Magazine preflight tool, including a check for references to line numbers that don’t exist.
- CoCoFest! 2021
- Forty years later, I finally make it to CoCoFest!
- BASIC tokenization examined
- Why do old BASIC programs have strange characters in their .BAS files? Why do they look like they’re compiled code?
- What are the 8 bits in 8-bit computing?
- Retro computing is often called 8-bit computing. This is because the bytes that these computers use are composed of eight bits, and much of what the computer does is operating on these individual bits, not on the byte as a whole.
- 19 more pages with the topic Color Computer, and other related pages
If you’re interested in the old BASIC books, I’ve collected my reviews on Goodreads. And if you’d like something similar for the modern Macintosh, check out my own 42 Astoundingly Useful Scripts and Automations for the Macintosh.