TRS-80 Color Computer
Encyclopedia
The Radio Shack
TRS-80 Color Computer (also marketed as the Tandy Color Computer and affectionately nicknamed CoCo) was a home computer
launched in 1980. It was one of the earliest of the first generation of computers marketed for home use in English-speaking markets. While the model was eventually eclipsed by the onset of the IBM PC clones, enthusiasts have continued to affectionately tinker with the "CoCo" to the present day.
E processor, rather than the TRS-80's Zilog Z80
.
The Motorola 6809
E was a very advanced processor, but was correspondingly more expensive than other more popular microprocessors. Competing machines such as the Apple II
, Commodore VIC-20
, the Commodore 64
, the Atari 400, and the Atari 800 were designed around a combination of the much cheaper MOS 6502, itself essentially an enhanced clone of the Motorola 6800
. Some of these competing machines were paired with dedicated sound and graphics chips and were much more commercially successful in the 1980s home computer market. Steve Wozniak once commented that the 6502 was 1/4 the price of the Motorola 6800 when the original Apple was being developed in the late 70s. By 1986 prices for 8 bit processors had dropped dramatically from the late 70s, but the MC6809 was still just over twice the price of a MOS6502 (6809/6809E - $5.95; MOS6502 - $2.79).
The Tandy Color Computer line started in 1980 with what is now called the CoCo1 and ended in 1991 with the more powerful yet similar CoCo 3. It was one of the more powerful 8 bit computers of its day. All three CoCo models maintained a very high level of software and hardware compatibility, with few programs written for the older model not running on the newer. The converse cannot be claimed, obviously, due to the greater capabilities of the newer CoCo models. The death knell of the CoCo was the advent of lower cost IBM PC clones, the same event that spelled the end of other models competing in the home computer market.
The CoCo lacked some of the graphics and sound capabilities of other home computers, but made up for it in computing power and ease of programming in BASIC. Combined with the versatile BASIC, the robust, easy-to-interface-to design has long made it an experimenter's favorite.
of Fort Worth, Texas
and Motorola
Semiconductor, Inc. of Austin
, to develop a low cost home computer in 1977.
The initial goal of this project, called "Green Thumb", was to create a low cost Videotex
terminal for farmers, ranchers, and others in the agricultural industry. This terminal would connect to a phone line and an ordinary color television
and allow the user access to near real-time information useful to their day-to-day operations on the farm.
Motorola's MC6847
Video Display Generator (VDG) chip
was released about the same time as the joint venture started and it has been speculated that the VDG was actually designed for this project. At the core of the prototype "Green Thumb" terminal, the MC6847, along with the MC6809 Microprocessor Unit (MPU), made the prototype a reality by about 1978. Unfortunately, the prototype contained too many chips to be commercially viable. Motorola solved this problem by integrating all the functions of the many smaller chips into one chip, the MC6883 Synchronous Address Multiplexer (SAM). By that time in late 1979, the new and powerful Motorola MC6809
processor was released. The SAM, VDG, and 6809 were combined and the AgVision terminal was born.
The AgVision terminal was also sold through Radio Shack stores as the VideoTex terminal around 1980. Internal differences, if any, are unclear, as not many AgVision terminals survive to this day.
With its proven design, the VideoTex terminal contained all the basic components for a general purpose home computer. The internal modem
was removed, and I/O ports for cassette storage, serial I/O, and joysticks were provided. An expansion connector was added to the right side of the case for future enhancements and program cartridges
("Program Paks"), and a RAM button (a sticker indicating the amount of installed memory in the machine) covered the hole where the Modem's LED "DATA" indicator had been. On July 31, 1980, Tandy announced the TRS-80 Color Computer. Sharing the same case, keyboard, and layout as the AgVision/VideoTex terminals, at first glance it would be hard to tell the TRS-80 Color Computer from its predecessors.
The initial model (catalog number 26-3001) shipped with 4K of Dynamic Random Access Memory
(DRAM) and an 8k Microsoft BASIC
interpreter in ROM
. Its price was $399. Within a few months, Radio Shack stores across the US and Canada began receiving and selling the new computer.
E processor, was a radical departure from the Z80-based TRS-80
Models. Indeed the "80" in "TRS-80" stood for "Z80". For a time, the CoCo was referred to internally as the TRS-90 in reference to the "9" in "6809". However this was dropped and all CoCos sold as Radio Shack computers were called TRS-80 in spite of the processor change.
Like its Z80-based predecessors, the CoCo shipped with BASIC, but in this case Tandy licensed Microsoft BASIC
. As with the Z80 systems, there were multiple "levels" of BASIC. In the case of the CoCo they were the standard Color BASIC and Extended Color BASIC. Beyond that, Disk Extended Color BASIC came with the floppy controller, and on the CoCo 3, "Super" Extended Color BASIC extensions were added by Microware
. Additional ROMs such as JDOS (Copyright J&M Systems) were available to enable the use of double sided disc drives.
The CoCo, which could display eight colors at once, was designed to be attached to a color television set, whereas the Z80 machines used monochrome computer monitors, often built into the case. The CoCo also featured an expansion connector for program cartridges (mostly games) and other expansion devices, such as floppy disk controllers and modems. In this way it shared some similarity to the Atari 2600
, Atari 400/800 and other cartridge-capable game consoles and computers. Tandy also released a Multi-Pak Interface which allowed switching quickly among four cartridges mounted at the same time. This was similar in concept to the Model I's Expansion Interface.
Unlike some Z80 models, the CoCo did not come with a built-in floppy drive. The CoCo was designed to save and load programs and data from a standard audio cassette deck. Although slow (though at an average of 1500 bit/s it was faster than the Commodore 1541
) and sometimes unreliable, this made the CoCo more affordable as a home computer.
Tandy eventually offered a floppy disk drive controller for the CoCo as a cartridge. Both the CoCo and earlier TRS-80s shared the WD17xx series floppy disk controllers and 35 (later 40) track industry-standard floppy drives.
Even with the add-on floppy drive, the CoCo did not have a true DOS until third-party operating systems such as TSC FLEX9
(distributed for the CoCo by Frank Hogg Laboratories) and Microware
's multi-user, multi-tasking OS-9
were available. However, a disk-based CoCo did contain Disk Extended Color BASIC on an internal ROM in the controller cartridge that gave the BASIC user the ability to save and load programs from the disk and store and retrieve data from disk in various ways.
Some non-program expansion cartridges included a sound/voice synthesiser (which led to the CoCo being used as an accessibility device for the disabled), 300 baud modem pak, RS232 pak, a hard drive controller, stereo music adapter, floppy disk controller, input tablet, and other accessories. The CoCo was the first Tandy computer to have a mouse available for it.
", and was available with memory sizes of 4K (26-3001), 16K (26-3002), or 32K (26-3003). Versions with at least 16K of memory installed shipped with standard Microsoft
Color Basic
or (optionally) Extended Color Basic. It used a regular TV for display, and TV-out was the only available connection to a display device.
The early versions of the CoCo 1 had a black keyboard surround, the TRS-80 nameplate above the keyboard to the left side, and a RAM badge ("button") affixed on the top and right side of the case. Later versions removed the black keyboard surround and RAM button, and moved the TRS-80 nameplate to the mid-line of the case.
Initial versions of the CoCo were upgraded to 32K by means of piggybacking two banks of 16K memory chips and adding a few jumper wires. A later motherboard revision removed the 4K RAM option and were upgraded to 32K with "half-bad" 64K memory chips as a cost-cutting measure. These boards have jumpers marked HIGH/LOW to determine which half of the memory chip was good. This was transparent to the BASIC programmer since in either configuration 32K of memory was available. As memory production yields improved and costs went down, many (perhaps most) 32K CoCo 1s were shipped with perfectly good 64K memory chips; many utilities and programs began to take advantage of the "hidden" 32K.
Eventually the 32K memory option was dropped entirely and only 16K or 64K versions were offered. All versions that shipped with standard Color BASIC could be upgraded to Extended BASIC by simply plugging a ROM into an empty socket provided on the motherboard.
Toward the end of the CoCo 1 production run, a version of the "CoCo" with a white case, called the TDP-100, was marketed through Tandy Data Products (TDP) and sold through a different distribution channel. Except for the nameplate and case, the TDP-100 was completely identical to the CoCo 1.
At some point after this, both the Coco and the TDP-100 shipped with a white case which had ventilation slots that ran the entire length of the case, rather than only on the sides. This ventilation scheme was carried over to the CoCo 2.
Some late versions of the CoCo also shipped with a modified keyboard, often referred to as the "melted" keyboard, which had bigger keycaps but a similar rubbery feel.
A number of peripherals were available: tape cassette storage, serial printers, a 5.25 inch floppy disk drive, a pen and graphics tablet called the "X-Pad", speech and sound generators, and joysticks.
Production was also partially moved to Korea during the CoCo 2's life-span, and many owners of the Korean-built systems referred to them as "KoKos". Production in the USA and Korea happened in parallel using the same part numbers; very few, if any, differences exist between the USA built and Korean built CoCo 2 machines.
Upgraded BASIC ROMs were also produced, adding a few minor features and correcting some bugs. A redesigned 5-volt disk controller was introduced with its own new Disk BASIC ROM (v1.1). This controller added the "DOS" command which was used to boot the OS-9
operating system by Microware
.
Later in the production run, the "melted" keyboard was replaced with a new, full-travel, typewriter-style keyboard.
The final significant change in the life of the CoCo 2 was made for the models 26-3134B, 26-3136B, and 26-3127B (16K standard, 16K extended, and 64K extended respectively). Internally this model was redesigned to use the enhanced VDG, the MC6847T1. This enhanced VDG allowed the use of lower case characters and the ability to change the text screen border color. However, for compatibility reasons neither of these features were used and are not enabled in BASIC. Midway during the production run of these final CoCo 2s, the nameplate was changed from "Radio Shack TRS-80 Color Computer 2" to "Tandy Color Computer 2". The red, green, and blue shapes were replaced with red, green, and blue parallelograms.
The CoCo 3 was compatible with most of the CoCo 2's peripherals. Most older software ran on it. Taking the place of the graphics and memory hardware in the CoCo 1 and 2 was an application-specific integrated circuit
(ASIC) called the "GIME" (Graphics Interrupt Memory Enhancement) chip. The GIME also provided additional features:
Omitted from the GIME were the seldom-used SAM-created Semigraphics 8, 12, and 24 modes. A rumored 256 color mode (detailed in the original Tandy spec for the GIME) has never been found.
Previous versions of the CoCo ROM had been licensed from Microsoft, but by this time Microsoft was not interested in extending the code further. Instead, Microware
provided extensions to Extended Color BASIC to support the new display modes. In order to not violate the spirit of the licensing agreement between Microsoft and Tandy, Microsoft's unmodified BASIC software was loaded in the CoCo 3's ROM. Upon startup, the ROM is copied to RAM and then patched by Microware's code. Although this was a clever way of adding features to BASIC, it was not without some flaws: the patched code had several bugs, and support for many of the new hardware features was incomplete.
Microware also provided a version of the OS-9
Level 2 operating system shortly after launch. This OS featured memory-mapping (so each process had its own memory space up to 64K), windowed display, and a more extensive development environment that included a bundled copy of BASIC09
. C
and Pascal compilers were available. Various members of the CoCo OS-9 community enhanced OS-9 Level 2 for the CoCo 3 at Tandy's request, but Tandy stopped production of the CoCo 3 before the upgrade was officially released. Most of the improvements made it into NitrOS-9, a major rewrite of OS-9/6809 Level 2 for the CoCo 3 to take advantage of the added features and speed of the Hitachi 6309
(if the unit has the Hitachi CPU installed).
The 6809 in the CoCo 1 and 2 ran at 0.895 MHz; the CoCo 3 runs at that frequency by default, but is software controllable to run at twice that rate; OS-9
takes advantage of that capability. Some models of CoCo 1 and 2 were also capable of running at this higher speed, but this was not supported or guaranteed.
A popular accessory was a high-resolution joystick adapter designed by CoCo enthusiast Steve Bjork. While it did increase the resolution of the joystick/mouse interface by a factor of ten, it did so at the expense of CPU time. A modified version of this interface was included with a software package by Colorware called CoCo-Max 3, by Dave Stamp. This was a MacPaint
work-alike but added support for color graphics. This was a very desirable product for CoCo owners and combined with a MacWrite-like word processor called MAX-10 (also by Dave Stamp and internally named "MaxWrite"), provided much of the functionality of an Apple Macintosh, but with color graphics and at a fraction of the cost.
While the CoCo 3 featured many enhancements and was well received, it was not without problems and disappointments. As initially conceived, the CoCo 3 had much hardware acceleration and enhanced sound. However, internal politics crippled the design so it would not be perceived as a threat to the Tandy 1000
. This again limited the platform's potential as a game console. Early versions of the GIME had DRAM timing issues which caused random freezes. Due to bugs in the GIME some features that were problematic were marked as "reserved" or "do not use" in the programming and service manuals.
The power supply was marginal, and some would overheat if the system memory was expanded to the full 512K capacity. Some CoCo 3 owners opted to add a small fan inside the case to keep it cool.
Production model CoCo 3s have been found with different circuit board layouts and socketed chips. In 2005, a rare CoCo 3 prototype surfaced at the Chicago CoCoFEST, with a built-in floppy disk drive controller and other items still not identified. It also did not use a GIME chip. Instead, all the functionality of the GIME was created using separate chips. There is a hobbyist effort to try to reverse engineer these chips so a modern GIME can finally be produced.
There is also a prototype Ethernet interface for the Color Computer, displaying a board layout date of 1984, and a few other mystery boards that have yet to be examined. There is some evidence that Tandy killed the Ethernet interface at the last minute: an ad mentioning the networking options for some of Tandy's Z80-based computers claimed that the Color Computer would soon have networking capabilities, and the printed manual for an upgraded version of OS-9
Level One listed networking in the table of contents, but had no corresponding text in the body of the manual.
were British cousins of the CoCo based on a reference design from Motorola that was produced as an exemplar of the capabilities of the MC6809E (MPU) when coupled with the MC6847 (Video Display Generator - VDG) and the MC6883 (Synchronous Address Multiplexer - SAM). The BIOS code for the Dragon 32 was rewritten based on specifications and API drawn up by Microsoft and, to a certain extent, PA Consulting of Cambridge. The Dragon was a much improved unit with video output in addition to the TV
output of the CoCo and CoCo 2. It also featured a Centronics
parallel port
(not present on any CoCo), an integrated 6551A serial UART (on the Dragon 64), and a higher-quality keyboard. In 1983, a version of the Dragon was licensed for manufacture for the North American market by Tano Corporation of New Orleans, Louisiana. Tano started production at their 48000 square feet (4,459.3 m²) facility in September 83 and were running at capacity just one month later. Unfortunately sales weren't as good as expected and Tano stopped production and support just one year later. A California surplus equipment company, California Digital, bought the remaining stock of Tano built Dragon 64 shortly after and has had new in-the-box Dragon 64s available for purchase as of December 2009.
In Brazil, there existed several CoCo-clones, including the Prologica CP400 Color and CP400 Color II, the Varixx VC50, the LZ Color64, the Dynacom MX1600, the Codimex CD6809 and the "vaporware
" Microdigital TKS800.
In Mexico, the Micro-SEP, a CoCo 2 clone with 64K of memory, was introduced by the Secretary of Education. The Micro-SEP was intended to be distributed nationally to all the public schools teaching the 7th to 9th grades. They were presented as a design of the Center of Advanced Research and Studies (CINVESTAV
) of the National Polytechnic Institute (IPN
). Like the Dragon, these computers also included video output. Whether these computers were "designed" by this institute, or were licensed from the original design, is unclear.
A Taiwan-based company, Sampo, also made a CoCo clone, the Sampo Color Computer. The Sampo was supposedly available in Taiwan, Korea, and possibly other Asian countries. It is believed that Tandy blocked sales in the US with legal action due to copyright infringements on the ROM code.
A cousin of the CoCo, The MC-10
, or Micro Color Computer, was sold in Radio Shack stores as a lower cost, more entry-level computer than the CoCo. Released in 1983, it was similar in appearance to the Timex Sinclair
. It also used the MC6847 VDG and Microsoft Basic, but featured the MC6803 instead of the 6809. It was just as bare-bones as the little Timex Sinclair model as well, lacking such things as an 80 column printer and disk storage system, as well as a "real" keyboard. Accordingly, it did not sell well and was withdrawn after just two years of production. An MC-10 clone, the Sysdata Tcolor, was available in Brazil with 16 KB ROM.
The SAM was designed to replace numerous small LS/TTL chips into one integrated package. Its main purpose is to control the DRAM but, as outlined above, it integrates several other functions as well. It is connected to a crystal at 4 times the television colorburst frequency (14.31818 MHz for NTSC countries). This is divided by 4 internally and is fed to the VDG for its own internal timing (3.579545 MHz for NTSC). The SAM also divides the master clock by 16 (or 8 in certain cases) for the two phase MPU clock; in NTSC this is .89 MHz (or 1.8 MHz if divided by 8).
Switching the SAM into 1.8 MHz operation gives the CPU the time ordinarily used by the VDG and refresh. As such, the display shows garbage; this mode was seldom used. However, an unusual mode available by the SAM is called the Address Dependent mode, where ROM reads (since they do not use the DRAM) occur at 1.8 MHz but regular RAM access occurs at .89 MHz. In effect, since the BASIC interpreter runs from ROM, putting the machine in this mode would nearly double the performance of a BASIC program while maintaining video display and DRAM refresh. Of course, this would throw off the software timing loops and I/O operations would be affected. Despite this, however, the "high speed POKE
" was used by many CoCo BASIC programs even though it overclocked
the hardware in the CoCo, which was only rated for 1 MHz operation.
The SAM has no connection to the MPU data bus. As such, it is programmed in a curious manner; its 16-bit configuration register is spread across 32 memory addresses (FFC0-FFDF). Writing even bytes sets that register bit to 0, Writing to odd bytes sets it to 1.
Due to limitations in 40-pin packaging, the SAM contains a duplicate of the VDG's internal 12-bit address counter. Normally this counter's settings are set to duplicate the VDG's display mode. However, this is not required and results in the creation of some new display modes not possible when the VDG is used in a system alone. Instead of the VDG requesting data from RAM by itself, the VDG is "fed" data by the SAM's internal copy of the VDG address counter. This process is called "Interleaved Direct Memory Access" (IDMA) by Motorola and ensures that the processor and VDG always have full access to this shared memory resource with no wait states or contention.
There are two versions of the SAM. The early one is labeled MC6883 and/or SN74LS783; the later version is labeled SN74LS785. There are some minor timing differences, but the major difference is the support of an 8-bit refresh counter in the 785 version. This allowed for use of inexpensive 16K by 4-bit and certain 64K by 1-bit DRAMs. Some third party bank-switching memory upgrades that used 256K DRAMs needed this 8-bit refresh counter to work.
. Compressing more dots into the display window would easily exceed the resolution of the television and be useless, as the periphery of a textual screen would be unreadable.
In alphanumeric mode, each character is a 5 dot wide by 7 dot high character in a box 8 dots wide and 12 lines high. This display mode consumes 512 bytes of memory and is a 32 character wide screen with 16 lines. The internal ROM character generator only holds 64 characters, so no lower case characters are provided. Lower case characters were rendered as upper case characters with inverted color. Although simulated screen shots would show this as green on black, on most CoCo generations it was actually green on very dark green.
Semigraphics is a hybrid display mode where alphanumerics and chunky block graphics can be mixed together on the same screen. If the 8th bit of the character is set, it is a semigraphics character. If cleared, it is an alphanumeric. When the 8th bit is set, the next three bits determine the color and last 4 bits determine which "quadrant" of the character box is either the selected color or black. This is the only mode where it is possible (without sneaky tricks) to display all 9 colors on the screen simultaneously. If used to only display semigraphics, the screen becomes a 64x32 9 color graphics mode. The CoCo features several BASIC commands to manage this screen as a low-res graphics display.
The alphanumeric display has two colorsets. The one used by default on the CoCo has black characters on a green background. The alternate has black characters on an orange background. The colorset selection does not affect semigraphics characters. The border in this mode is always black.
The 6847 is capable of a Semigraphics 6 display mode, where two bits select a color and 6 bits determine which 1/6 of the character box is lit. In this mode only 4 colors are possible but the Colorset bit of the VDG can select two different groups of the 4 colors. Due to a peculiarity of its hardware, only two colors are available in graphics blocks when using Semigraphics 6 on the CoCo.
A programmer's reference manual for the CoCo states that due to a fire at Tandy's research lab, the papers relating to the semigraphics modes were shuffled, and so some of the semigraphics modes were never documented. CoCo enthusiasts created experimental programs to try to reverse engineer the modes, and were able to reconstruct the missing documentation.
countries saw green and purple stripes instead of solid red and blue colors.
Very late in the CoCo 2 production run, an enhanced VDG was available. Called the 6847T1, it included a lower case character generator and the ability to display a green/orange or black border on the text screen. Its other changes were mainly to reduce parts count by incorporating an internal data latch. The lower case capability of this VDG is not enabled by default on this system and is not even mentioned in the manual. Only through some tinkering and research was this feature discovered by intrepid CoCo users.
The 6847T1 may also carry the part number XC80652P; these may have been pre-release parts.
(DAC), reading the status of the DAC's voltage comparator, controlling the relay for the cassette motor, reading the keyboard matrix, controlling the VDG mode control pins, reading and writing to the RS232 serial I/O port, and controlling the internal analog multiplexers.
The earliest CoCo models had two standard 6821 chips. Later, due to changes in the keyboard design, it was found that the 6822 IIA (industrial interface adapter) was better suited to the keyboard's impedance
. The 6822 was eventually discontinued by Motorola but was produced for Tandy as an ASIC with a special Tandy part number, SC67331P. Functionally the 6821 and 6822 are identical and one can put a 6821 in place of the 6822 if that part is bad. Some external pull-up resistors may be needed to use a 6821 to replace a 6822 in a CoCo for normal keyboard operation.
As an example, the CoCo cassette interface is perhaps one of the fastest available (1500-bit/s) but it does so by literally playing software generated sine waves through its internal 6-bit DAC. While this is happening, the CoCo cannot do anything else as this uses all the CPU time. Similarly, to read data off the cassette, the CoCo must count waveform crossings and thus cannot do anything else until either an error occurs or the operation ends.
, Apple II
, Commodore
VIC-20 and the Atari 400 and Atari 800.
While the CoCo sported perhaps the most advanced 8-bit processor ever made, that processing power came at a significant price premium. In order to sell the CoCo at a competitive price, its relatively expensive processor was not tied to any specialized video or sound hardware. In comparison, the 6502-derived processor in the Commodore, Apple and Atari systems was much less expensive. Both Commodore and Atari had invested in advanced graphics and sound chip design for arcade games and home gaming consoles. By tying these specialized circuits with an inexpensive processor, Atari and Commodore systems were able to play sophisticated games with high quality graphics and sound. The trade-off is between a system with an expensive CPU that does a lot of work, or an inexpensive CPU that controls the registers of its sound and video hardware.
The CoCo video hardware was derived from a chip designed as display for a character based terminal, and is a completely "dumb" device. Similarly, the sound hardware is little more than a 6-bit DAC
under software control. All graphics and sound require direct CPU intervention, and while this allows for great flexibility, its performance is much lower than dedicated hardware.
Games drove system sales then as they do now, and with its poor gaming performance, the CoCo attracted little interest in officially licensed ports of popular games. The CoCo 3 did improve graphics capability and doubled CPU performance, but still contained no hardware graphics or sound acceleration. Drawing was performed by the CPU, and most of the new graphics modes required at least twice as much processor time due to increased display resolution
and color depth
. The sound hardware was not changed at all.
Every computer platform is a compromise, and despite the significant graphics and sound handicap the CoCo may have had, it still had a sophisticated CPU under its hood with extremely high performance. There were many independent clones of popular games available, but far more important was the availability of "killer apps" for the CoCo. For instance, CoCo-Max and Max-10 were clones of MacPaint and MacWrite. The OS-9
operating system, a UNIX-like multi-tasking multi-user environment, was also available. Even the BASIC interpreter was one of the most powerful available, and provided the user with a rich set of easy-to-use commands for manipulating on-screen graphics and playing sounds.
Some of the hardware limitations were overcome with external add-ons, particularly expansion cartridges. Some were made by Tandy, some by other manufacturers. Examples are:
Key to taking advantage of these expansion capabilities is the Multi-Pak interface, which permits up to four devices such as these to be attached to the system at the same time.
and those who used Disk Extended Color BASIC (DECB). The divide comes from the fact that programs using DECB (except for those that used CoCo's form of BASIC) used DECB only as a loader and for disk I/O, communicating with the hardware directly for all other activities. OS-9 applications communicate with OS-9 and its drivers. This allows for a degree of hardware independence.
Many programs written for the CoCo were DECB programs. In order to support such programs (or at least, those that bypassed BASIC and addressed hardware directly), any future CoCo version would have to be hardware-compatible with the CoCo, or perfectly emulate every aspect of the CoCo. In contrast, OS-9
programs relied only on OS-9 functions, and its drivers could be rewritten to work with different hardware. However, DECB comes with the CoCo system itself, and required no further setup or purchasing. OS-9 was an additional product that had to be loaded manually each time the computer was started. Writing an OS-9 program meant appealing to a smaller subset of the CoCo community; this discouraged development of OS-9 products.
Even today, current and former CoCo owners agree that Tandy did not take the CoCo very seriously, despite it having been their best-selling computer for several years. Tandy failed to market the CoCo as the powerful and useful machine that it was, and offered customers no hint about the large number of third party software and hardware products available for it.
The release of the CoCo 3 was particularly lackluster despite its greatly enhanced graphic capabilities and RGB monitor support. Radio Shack fliers and stores typically depicted the CoCo 3 running CoCo 2 games, and offered a very limited selection of CoCo 3 specific software. There was an official Radio Shack store demo, but few stores bothered to run it.
Additionally, DRAM prices skyrocketed at the time the CoCo 3 was released, making the 512K memory upgrade considerably more expensive than the 128K CoCo 3 itself. Very few stores displayed a 512K machine or a CoCo 3 running such games as King's Quest
or Leisure Suit Larry
.
A few independent companies attempted to carry the CoCo torch, but the lack of decent backwards compatibility with the CoCo 3 failed to entice much of the CoCo community over to these new independent platforms. Many of these independent platforms did run OS9/68k, which was very similar to OS-9
. However the bulk of the CoCo community moved on to more mainstream platforms. Some CoCo users swore their loyalty to Motorola and moved on to the Amiga, Atari ST, or even the Macintosh, all of which were based on the Motorola 68000 processor. Others jumped on the IBM PC-compatible bandwagon.
software. A later version called the TC-70 (running on a Signetics 68070) had strong compatibility with the MM/1, and also ran OS-9/68K.
/68K on a 15 MHz Signetics 68070 processor with 3 MB RAM, and had a 640x208 graphics resolution as well as supporting a 640x416 interlaced mode. It included a SCSI interface, stereo A/D and D/A conversion, an optional MIDI interface, and (later) an optional board to upgrade the CPU to a Motorola 68340 running at up to 25 MHz. It is estimated that about 500 units were sold.
, but there are several operating systems for it, including REX (a FLEX-like OS), and SK*DOS. Dan Farnsworth, who wrote REX, also wrote a BASIC interpreter that was fairly compatible to DECB, but it was too little, too late to be of interest to many CoCo users. There was also a card available called an ALT86, which was basically an IBM XT compatible computer on a card, which allowed the user to run DOS programs on it. In fact, both the 68000 and the ALT86 card could be run at the same time, if access to the ISA bus was not needed from the 68000 side of it.
, Hot CoCo, and The Color Computer Magazine. Original hardware is being expanded by some small firms such as Cloud-9 with such things as SCSI and IDE hard drive controllers, memory upgrades to 512K and AT Keyboard interfaces. Other recent hardware development includes RGB-to-VGA Converter that allows connecting a Coco3 to a standard VGA compatible monitor.
User-driven support for the Color Computer has continued since production stopped in the '80s, hosted on various web sites and forums (see #External links).
is capable of emulating the CoCo; however, the most popular emulators are Jeff Vavasour's CoCo emulators (see external links). Mocha is a web-based emulator written in Java
that can emulate a CoCo 2 inside a web browser.
Most of these emulators require a dump from the CoCo ROMs. Instructions are usually provided with the emulators on how to get a ROM dump from a CoCo. A ROM might be found online, which may be from a Brazilian CoCo clone.
Utilities exist to transfer data from a PC to a CoCo. If one does not have compatible disk drives for the PC and CoCo, data may still be transferred by using special PC CoCo utilities to create a .wav audio file of the data. Hook the CoCo's cassette interface cables directly to the line out of a PC's soundcard, initiate the CLOAD (or CLOADM) command on the CoCo, and then play the sound file from the PC.
A pseudo-256 color mode could be done using a page flipping technique which caused the screen to flicker badly, but was able to display 256 color graphics. This was used in some video screen capture software for the CoCo as well. There was also an OS-9
program that allowed viewing of 256 color graphic files.
Nickolas Marentes, a long time Color Computer programmer, has done some investigation into this "secret" mode and has come up with some interesting information. Chris Lomont has produced a "256 Color Demo". Other well known programmers such as Roger Taylor and John Kowalski (Sockmaster) have produced their own versions of graphics viewers that use various tricks not related to the "undiscovered 256-color mode" to simulate thousands of colors using dithering patterns and/or a combination of flickering techniques. To date, nobody has matched Sockmaster's 6000+ color mode, although loading pictures takes quite some time.
Recently, there has also been work into harnessing the capabilities of NTSC artifacting to display up to 256 colors at once on the CoCo 3's 640x192 4-color screen. The concept is quite similar to that used in the Apple II's double-hi-res mode, or on the IBM PC's CGA composite output. However, both of those systems are only capable of outputting a 1-bit monochrome display at those resolutions. The CoCo 3 is capable of displaying 4 colors, which are selected as greys. Unlike other methods, this uses very little CPU time and results in no flicker. However, it does not work on RGB monitors or PAL CoCo 3 systems.
area hosts an annual CoCoFest gathering. At the 2007 event, the arcade game Donkey Kong
was ported from the original Z80 code to the CoCo's 6809 by CoCo programmer John Kowalski. Using code translation and emulation techniques, the end result was the actual Donkey Kong game running on a 512K CoCo 3.
Advancements in the Color Computer hardware and software front have also come from companies that have sprung up over the course of the last decade. Cloud-9, headquartered in Delano, Minnesota with labs in Lanesboro, Minnesota and Opelousas, Louisiana, have released hardware products such as the SuperIDE with programmable flash memory and CompactFlash storage, AT keyboard adapters, and CoCo 3 512K memory boards. Software products such as SuperDriver and DriveWire 3 (now free) have also come from Cloud-9's labs. Other hardware releases include a 2GB MicroSD card based Solid-state drive
and a bluetooth serial pak from coco3.com.
for the CoCo at http://five.pairlist.net/mailman/listinfo/coco. Daily digests containing messages from CoCo enthusiasts are sent as e-mails to a subscriber's e-mail box. Traffic isn't such that the messages are overly large or regular—generally 1-4 small text-only messages are delivered daily. Subjects range from programming assistance to historical information.
The book was updated in 2006; after discussion with an electronic CoCo Mailing List it was decided to distribute the updated manuscript for free via pdf. http://os9projects.com/Tutorials/OS9Books/LittleWonder.html
Technical
Emulators
Radio shack
Radio shack is a slang term for a room or structure for housing radio equipment.-History:In the early days of radio, equipment was experimental and home-built. The first radio transmitters used a noisy spark to generate radio waves and were often housed in a garage or shed. When radio was first...
TRS-80 Color Computer (also marketed as the Tandy Color Computer and affectionately nicknamed CoCo) was a home computer
Home computer
Home computers were a class of microcomputers entering the market in 1977, and becoming increasingly common during the 1980s. They were marketed to consumers as affordable and accessible computers that, for the first time, were intended for the use of a single nontechnical user...
launched in 1980. It was one of the earliest of the first generation of computers marketed for home use in English-speaking markets. While the model was eventually eclipsed by the onset of the IBM PC clones, enthusiasts have continued to affectionately tinker with the "CoCo" to the present day.
Summary
Despite bearing the TRS-80 name, the "Color Computer" was a radical departure from earlier TRS-80 Models - in particular it had a Motorola 6809Motorola 6809
The Motorola 6809 is an 8-bit microprocessor CPU from Motorola, designed by Terry Ritter and Joel Boney and introduced 1978...
E processor, rather than the TRS-80's Zilog Z80
Zilog Z80
The Zilog Z80 is an 8-bit microprocessor designed by Zilog and sold from July 1976 onwards. It was widely used both in desktop and embedded computer designs as well as for military purposes...
.
The Motorola 6809
Motorola 6809
The Motorola 6809 is an 8-bit microprocessor CPU from Motorola, designed by Terry Ritter and Joel Boney and introduced 1978...
E was a very advanced processor, but was correspondingly more expensive than other more popular microprocessors. Competing machines such as the Apple II
Apple II
The Apple II is an 8-bit home computer, one of the first highly successful mass-produced microcomputer products, designed primarily by Steve Wozniak, manufactured by Apple Computer and introduced in 1977...
, Commodore VIC-20
Commodore VIC-20
The VIC-20 is an 8-bit home computer which was sold by Commodore Business Machines. The VIC-20 was announced in 1980, roughly three years after Commodore's first personal computer, the PET...
, the Commodore 64
Commodore 64
The Commodore 64 is an 8-bit home computer introduced by Commodore International in January 1982.Volume production started in the spring of 1982, with machines being released on to the market in August at a price of US$595...
, the Atari 400, and the Atari 800 were designed around a combination of the much cheaper MOS 6502, itself essentially an enhanced clone of the Motorola 6800
Motorola 6800
The 6800 was an 8-bit microprocessor designed and first manufactured by Motorola in 1974. The MC6800 microprocessor was part of the M6800 Microcomputer System that also included serial and parallel interface ICs, RAM, ROM and other support chips...
. Some of these competing machines were paired with dedicated sound and graphics chips and were much more commercially successful in the 1980s home computer market. Steve Wozniak once commented that the 6502 was 1/4 the price of the Motorola 6800 when the original Apple was being developed in the late 70s. By 1986 prices for 8 bit processors had dropped dramatically from the late 70s, but the MC6809 was still just over twice the price of a MOS6502 (6809/6809E - $5.95; MOS6502 - $2.79).
The Tandy Color Computer line started in 1980 with what is now called the CoCo1 and ended in 1991 with the more powerful yet similar CoCo 3. It was one of the more powerful 8 bit computers of its day. All three CoCo models maintained a very high level of software and hardware compatibility, with few programs written for the older model not running on the newer. The converse cannot be claimed, obviously, due to the greater capabilities of the newer CoCo models. The death knell of the CoCo was the advent of lower cost IBM PC clones, the same event that spelled the end of other models competing in the home computer market.
The CoCo lacked some of the graphics and sound capabilities of other home computers, but made up for it in computing power and ease of programming in BASIC. Combined with the versatile BASIC, the robust, easy-to-interface-to design has long made it an experimenter's favorite.
Origin and history
The TRS-80 Color Computer started out as a joint venture between Tandy CorporationTandy Corporation
Tandy Corporation was a family-owned leather goods company based in Fort Worth, Texas. Tandy was founded in 1919 as a leather supply store, and acquired RadioShack in 1963. The Tandy name was dropped in May 2000, when RadioShack Corporation was made the official name.-History:Tandy began in 1919...
of Fort Worth, Texas
Fort Worth, Texas
Fort Worth is the 16th-largest city in the United States of America and the fifth-largest city in the state of Texas. Located in North Central Texas, just southeast of the Texas Panhandle, the city is a cultural gateway into the American West and covers nearly in Tarrant, Parker, Denton, and...
and Motorola
Motorola
Motorola, Inc. was an American multinational telecommunications company based in Schaumburg, Illinois, which was eventually divided into two independent public companies, Motorola Mobility and Motorola Solutions on January 4, 2011, after losing $4.3 billion from 2007 to 2009...
Semiconductor, Inc. of Austin
Austin, Texas
Austin is the capital city of the U.S. state of :Texas and the seat of Travis County. Located in Central Texas on the eastern edge of the American Southwest, it is the fourth-largest city in Texas and the 14th most populous city in the United States. It was the third-fastest-growing large city in...
, to develop a low cost home computer in 1977.
The initial goal of this project, called "Green Thumb", was to create a low cost Videotex
Videotex
Videotex was one of the earliest implementations of an "end-user information system". From the late 1970s to mid-1980s, it was used to deliver information to a user in computer-like format, typically to be displayed on a television.In a strict definition, videotex refers to systems that provide...
terminal for farmers, ranchers, and others in the agricultural industry. This terminal would connect to a phone line and an ordinary color television
Color television
Color television is part of the history of television, the technology of television and practices associated with television's transmission of moving images in color video....
and allow the user access to near real-time information useful to their day-to-day operations on the farm.
Motorola's MC6847
MC6847
The MC6847 is a video display generator first introduced by Motorola and used in the TRS-80 Color Computer, Dragon 32/64, Laser 200 and Acorn Atom among others. It is a relatively simple display generator compared to other display chips of the time. It is capable of displaying text and graphics...
Video Display Generator (VDG) chip
Video Display Controller
A Video Display Controller or VDC is an integrated circuit which is the main component in a video signal generator, a device responsible for the production of a TV video signal in a computing or game system...
was released about the same time as the joint venture started and it has been speculated that the VDG was actually designed for this project. At the core of the prototype "Green Thumb" terminal, the MC6847, along with the MC6809 Microprocessor Unit (MPU), made the prototype a reality by about 1978. Unfortunately, the prototype contained too many chips to be commercially viable. Motorola solved this problem by integrating all the functions of the many smaller chips into one chip, the MC6883 Synchronous Address Multiplexer (SAM). By that time in late 1979, the new and powerful Motorola MC6809
Motorola 6809
The Motorola 6809 is an 8-bit microprocessor CPU from Motorola, designed by Terry Ritter and Joel Boney and introduced 1978...
processor was released. The SAM, VDG, and 6809 were combined and the AgVision terminal was born.
The AgVision terminal was also sold through Radio Shack stores as the VideoTex terminal around 1980. Internal differences, if any, are unclear, as not many AgVision terminals survive to this day.
With its proven design, the VideoTex terminal contained all the basic components for a general purpose home computer. The internal modem
Modem
A modem is a device that modulates an analog carrier signal to encode digital information, and also demodulates such a carrier signal to decode the transmitted information. The goal is to produce a signal that can be transmitted easily and decoded to reproduce the original digital data...
was removed, and I/O ports for cassette storage, serial I/O, and joysticks were provided. An expansion connector was added to the right side of the case for future enhancements and program cartridges
ROM cartridge
A ROM cartridge, sometimes referred to as a cart, is a removable enclosure containing read-only memory devices designed to be connected to a computer or games console....
("Program Paks"), and a RAM button (a sticker indicating the amount of installed memory in the machine) covered the hole where the Modem's LED "DATA" indicator had been. On July 31, 1980, Tandy announced the TRS-80 Color Computer. Sharing the same case, keyboard, and layout as the AgVision/VideoTex terminals, at first glance it would be hard to tell the TRS-80 Color Computer from its predecessors.
The initial model (catalog number 26-3001) shipped with 4K of Dynamic Random Access Memory
Dynamic random access memory
Dynamic random-access memory is a type of random-access memory that stores each bit of data in a separate capacitor within an integrated circuit. The capacitor can be either charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1...
(DRAM) and an 8k Microsoft BASIC
Microsoft BASIC
Microsoft BASIC was the foundation product of the Microsoft company. It first appeared in 1975 as Altair BASIC, which was the first BASIC, and the first high level programming language available for the MITS Altair 8800 hobbyist microcomputer....
interpreter in ROM
Read-only memory
Read-only memory is a class of storage medium used in computers and other electronic devices. Data stored in ROM cannot be modified, or can be modified only slowly or with difficulty, so it is mainly used to distribute firmware .In its strictest sense, ROM refers only...
. Its price was $399. Within a few months, Radio Shack stores across the US and Canada began receiving and selling the new computer.
Differences from earlier TRS-80 models
The Color Computer, with its Motorola 6809Motorola 6809
The Motorola 6809 is an 8-bit microprocessor CPU from Motorola, designed by Terry Ritter and Joel Boney and introduced 1978...
E processor, was a radical departure from the Z80-based TRS-80
TRS-80
TRS-80 was Tandy Corporation's desktop microcomputer model line, sold through Tandy's Radio Shack stores in the late 1970s and early 1980s. The first units, ordered unseen, were delivered in November 1977, and rolled out to the stores the third week of December. The line won popularity with...
Models. Indeed the "80" in "TRS-80" stood for "Z80". For a time, the CoCo was referred to internally as the TRS-90 in reference to the "9" in "6809". However this was dropped and all CoCos sold as Radio Shack computers were called TRS-80 in spite of the processor change.
Like its Z80-based predecessors, the CoCo shipped with BASIC, but in this case Tandy licensed Microsoft BASIC
Microsoft BASIC
Microsoft BASIC was the foundation product of the Microsoft company. It first appeared in 1975 as Altair BASIC, which was the first BASIC, and the first high level programming language available for the MITS Altair 8800 hobbyist microcomputer....
. As with the Z80 systems, there were multiple "levels" of BASIC. In the case of the CoCo they were the standard Color BASIC and Extended Color BASIC. Beyond that, Disk Extended Color BASIC came with the floppy controller, and on the CoCo 3, "Super" Extended Color BASIC extensions were added by Microware
Microware
Microware is a US corporation that produced the OS-9 real-time operating system.Microware Systems Corporation existed as a separate entity from 1977 until September 2001, when it was bought by RadiSys Corp., and became a division of that company...
. Additional ROMs such as JDOS (Copyright J&M Systems) were available to enable the use of double sided disc drives.
The CoCo, which could display eight colors at once, was designed to be attached to a color television set, whereas the Z80 machines used monochrome computer monitors, often built into the case. The CoCo also featured an expansion connector for program cartridges (mostly games) and other expansion devices, such as floppy disk controllers and modems. In this way it shared some similarity to the Atari 2600
Atari 2600
The Atari 2600 is a video game console released in October 1977 by Atari, Inc. It is credited with popularizing the use of microprocessor-based hardware and cartridges containing game code, instead of having non-microprocessor dedicated hardware with all games built in...
, Atari 400/800 and other cartridge-capable game consoles and computers. Tandy also released a Multi-Pak Interface which allowed switching quickly among four cartridges mounted at the same time. This was similar in concept to the Model I's Expansion Interface.
Unlike some Z80 models, the CoCo did not come with a built-in floppy drive. The CoCo was designed to save and load programs and data from a standard audio cassette deck. Although slow (though at an average of 1500 bit/s it was faster than the Commodore 1541
Commodore 1541
The Commodore 1541 , made by Commodore International, was the best-known floppy disk drive for the Commodore 64 home computer. The 1541 was a single-sided 170 kilobyte drive for 5¼" disks...
) and sometimes unreliable, this made the CoCo more affordable as a home computer.
Tandy eventually offered a floppy disk drive controller for the CoCo as a cartridge. Both the CoCo and earlier TRS-80s shared the WD17xx series floppy disk controllers and 35 (later 40) track industry-standard floppy drives.
Even with the add-on floppy drive, the CoCo did not have a true DOS until third-party operating systems such as TSC FLEX9
FLEX (operating system)
The FLEX single-tasking operating system was developed by Technical Systems Consultants of West Lafayette, Indiana, for the Motorola 6800 in 1976. The original version was for 8" floppy disks and the version for 5.25" floppies was called mini-Flex. It was also later ported to the Motorola 6809;...
(distributed for the CoCo by Frank Hogg Laboratories) and Microware
Microware
Microware is a US corporation that produced the OS-9 real-time operating system.Microware Systems Corporation existed as a separate entity from 1977 until September 2001, when it was bought by RadiSys Corp., and became a division of that company...
's multi-user, multi-tasking OS-9
OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
were available. However, a disk-based CoCo did contain Disk Extended Color BASIC on an internal ROM in the controller cartridge that gave the BASIC user the ability to save and load programs from the disk and store and retrieve data from disk in various ways.
Some non-program expansion cartridges included a sound/voice synthesiser (which led to the CoCo being used as an accessibility device for the disabled), 300 baud modem pak, RS232 pak, a hard drive controller, stereo music adapter, floppy disk controller, input tablet, and other accessories. The CoCo was the first Tandy computer to have a mouse available for it.
Color Computer 1 (1980–1983)
The original version of the Color Computer shipped in a large silver-gray case with a calculator-like "chiclet keyboardChiclet keyboard
A chiclet keyboard or island-style keyboard is a computer keyboard built with an array of small, flat rectangular or lozenge-shaped rubber or plastic keys that look like erasers or "Chiclets", a brand of chewing gum manufactured in the shape of small squares with rounded corners...
", and was available with memory sizes of 4K (26-3001), 16K (26-3002), or 32K (26-3003). Versions with at least 16K of memory installed shipped with standard Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
Color Basic
Microsoft BASIC
Microsoft BASIC was the foundation product of the Microsoft company. It first appeared in 1975 as Altair BASIC, which was the first BASIC, and the first high level programming language available for the MITS Altair 8800 hobbyist microcomputer....
or (optionally) Extended Color Basic. It used a regular TV for display, and TV-out was the only available connection to a display device.
The early versions of the CoCo 1 had a black keyboard surround, the TRS-80 nameplate above the keyboard to the left side, and a RAM badge ("button") affixed on the top and right side of the case. Later versions removed the black keyboard surround and RAM button, and moved the TRS-80 nameplate to the mid-line of the case.
Initial versions of the CoCo were upgraded to 32K by means of piggybacking two banks of 16K memory chips and adding a few jumper wires. A later motherboard revision removed the 4K RAM option and were upgraded to 32K with "half-bad" 64K memory chips as a cost-cutting measure. These boards have jumpers marked HIGH/LOW to determine which half of the memory chip was good. This was transparent to the BASIC programmer since in either configuration 32K of memory was available. As memory production yields improved and costs went down, many (perhaps most) 32K CoCo 1s were shipped with perfectly good 64K memory chips; many utilities and programs began to take advantage of the "hidden" 32K.
Eventually the 32K memory option was dropped entirely and only 16K or 64K versions were offered. All versions that shipped with standard Color BASIC could be upgraded to Extended BASIC by simply plugging a ROM into an empty socket provided on the motherboard.
Toward the end of the CoCo 1 production run, a version of the "CoCo" with a white case, called the TDP-100, was marketed through Tandy Data Products (TDP) and sold through a different distribution channel. Except for the nameplate and case, the TDP-100 was completely identical to the CoCo 1.
At some point after this, both the Coco and the TDP-100 shipped with a white case which had ventilation slots that ran the entire length of the case, rather than only on the sides. This ventilation scheme was carried over to the CoCo 2.
Some late versions of the CoCo also shipped with a modified keyboard, often referred to as the "melted" keyboard, which had bigger keycaps but a similar rubbery feel.
A number of peripherals were available: tape cassette storage, serial printers, a 5.25 inch floppy disk drive, a pen and graphics tablet called the "X-Pad", speech and sound generators, and joysticks.
Color Computer 2 (1983–1986)
During the CoCo 1 production run, much of the discrete support circuitry had been re-engineered into a handful of custom integrated circuits, leaving much of the circuit board area of the CoCo 1 as empty space. To cut production costs, the case was shortened by about 25% and a new, smaller power supply and motherboard were designed. The "melted" keyboard from the white CoCo 1 and the TDP-100 style ventilation slots were carried over. Aside from the new look and the deletion of the 12 volt power supply to the expansion connector, the computer was essentially 100% compatible with the previous generation. The deletion of the 12 volt power supply crippled some peripherals such as the original floppy disk controller, which then needed to be upgraded, installed in a Multi-Pak interface, or supplied with external power.Production was also partially moved to Korea during the CoCo 2's life-span, and many owners of the Korean-built systems referred to them as "KoKos". Production in the USA and Korea happened in parallel using the same part numbers; very few, if any, differences exist between the USA built and Korean built CoCo 2 machines.
Upgraded BASIC ROMs were also produced, adding a few minor features and correcting some bugs. A redesigned 5-volt disk controller was introduced with its own new Disk BASIC ROM (v1.1). This controller added the "DOS" command which was used to boot the OS-9
OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
operating system by Microware
Microware
Microware is a US corporation that produced the OS-9 real-time operating system.Microware Systems Corporation existed as a separate entity from 1977 until September 2001, when it was bought by RadiSys Corp., and became a division of that company...
.
Later in the production run, the "melted" keyboard was replaced with a new, full-travel, typewriter-style keyboard.
The final significant change in the life of the CoCo 2 was made for the models 26-3134B, 26-3136B, and 26-3127B (16K standard, 16K extended, and 64K extended respectively). Internally this model was redesigned to use the enhanced VDG, the MC6847T1. This enhanced VDG allowed the use of lower case characters and the ability to change the text screen border color. However, for compatibility reasons neither of these features were used and are not enabled in BASIC. Midway during the production run of these final CoCo 2s, the nameplate was changed from "Radio Shack TRS-80 Color Computer 2" to "Tandy Color Computer 2". The red, green, and blue shapes were replaced with red, green, and blue parallelograms.
Color Computer 3 (1986–1991)
On July 30, 1986, Tandy announced the Color Computer 3 at the Waldorf-Astoria Hotel in New York City. It came with 128K of RAM, which could be upgraded to 512K. The keyboard surround and cartridge door plastic were changed from black to grey. The keyboard layout was revised, putting the arrow keys in a diamond configuration and adding CTRL, ALT, F1 and F2 keys. It sold in Radio Shack stores and Tandy Computer Centers for $219.95.The CoCo 3 was compatible with most of the CoCo 2's peripherals. Most older software ran on it. Taking the place of the graphics and memory hardware in the CoCo 1 and 2 was an application-specific integrated circuit
Application-specific integrated circuit
An application-specific integrated circuit is an integrated circuit customized for a particular use, rather than intended for general-purpose use. For example, a chip designed solely to run a cell phone is an ASIC...
(ASIC) called the "GIME" (Graphics Interrupt Memory Enhancement) chip. The GIME also provided additional features:
- Output to a composite video monitor or analog RGB monitor, in addition to the CoCo 1 and 2's TV output. This did much to improve the clarity of its output.
- A paged memory management unitMemory management unitA memory management unit , sometimes called paged memory management unit , is a computer hardware component responsible for handling accesses to memory requested by the CPU...
which broke up the 6809's 64k address space into 8x8K chunks. Although these chunks were considered to be too large by many programmers, the scheme would later allow third party RAM upgrades of up to 2 MB (256x8k). - Text display with real lowercase at 32, 40, 64, or 80 characters per line and between 16 and 24 lines per screen.
- Text character attributes, including 8 foreground and 8 background colors, underline, and blink.
- New graphics resolutions of 160, 256, 320 or 640 pixels wide by 192 to 225 lines.
- Up to 16 simultaneous colors out of a palette of 64 displayable at one time (unless programming tricks were employed to display more).
Omitted from the GIME were the seldom-used SAM-created Semigraphics 8, 12, and 24 modes. A rumored 256 color mode (detailed in the original Tandy spec for the GIME) has never been found.
Previous versions of the CoCo ROM had been licensed from Microsoft, but by this time Microsoft was not interested in extending the code further. Instead, Microware
Microware
Microware is a US corporation that produced the OS-9 real-time operating system.Microware Systems Corporation existed as a separate entity from 1977 until September 2001, when it was bought by RadiSys Corp., and became a division of that company...
provided extensions to Extended Color BASIC to support the new display modes. In order to not violate the spirit of the licensing agreement between Microsoft and Tandy, Microsoft's unmodified BASIC software was loaded in the CoCo 3's ROM. Upon startup, the ROM is copied to RAM and then patched by Microware's code. Although this was a clever way of adding features to BASIC, it was not without some flaws: the patched code had several bugs, and support for many of the new hardware features was incomplete.
Microware also provided a version of the OS-9
OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
Level 2 operating system shortly after launch. This OS featured memory-mapping (so each process had its own memory space up to 64K), windowed display, and a more extensive development environment that included a bundled copy of BASIC09
BASIC09
BASIC09 is a structured BASIC programming language dialect developed by Microware for the then-new Motorola 6809 CPU. Somewhat in the fashion of UCSD Pascal it was implemented via 'compilation' into an intermediate representation...
. C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
and Pascal compilers were available. Various members of the CoCo OS-9 community enhanced OS-9 Level 2 for the CoCo 3 at Tandy's request, but Tandy stopped production of the CoCo 3 before the upgrade was officially released. Most of the improvements made it into NitrOS-9, a major rewrite of OS-9/6809 Level 2 for the CoCo 3 to take advantage of the added features and speed of the Hitachi 6309
Hitachi 6309
The 6309 is Hitachi's CMOS version of the Motorola 6809 microprocessor. While in "Emulation Mode" it is fully compatible with the 6809. To the 6809 specifications it adds higher clock rates, enhanced features, new instructions, and additional registers...
(if the unit has the Hitachi CPU installed).
The 6809 in the CoCo 1 and 2 ran at 0.895 MHz; the CoCo 3 runs at that frequency by default, but is software controllable to run at twice that rate; OS-9
OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
takes advantage of that capability. Some models of CoCo 1 and 2 were also capable of running at this higher speed, but this was not supported or guaranteed.
A popular accessory was a high-resolution joystick adapter designed by CoCo enthusiast Steve Bjork. While it did increase the resolution of the joystick/mouse interface by a factor of ten, it did so at the expense of CPU time. A modified version of this interface was included with a software package by Colorware called CoCo-Max 3, by Dave Stamp. This was a MacPaint
MacPaint
MacPaint was a bitmap-based graphics painting software program developed by Apple Computer and released with the original Macintosh personal computer on January 22, 1984. It was sold separately for US$195 with its word processor counterpart, MacWrite. MacPaint was notable because it could generate...
work-alike but added support for color graphics. This was a very desirable product for CoCo owners and combined with a MacWrite-like word processor called MAX-10 (also by Dave Stamp and internally named "MaxWrite"), provided much of the functionality of an Apple Macintosh, but with color graphics and at a fraction of the cost.
While the CoCo 3 featured many enhancements and was well received, it was not without problems and disappointments. As initially conceived, the CoCo 3 had much hardware acceleration and enhanced sound. However, internal politics crippled the design so it would not be perceived as a threat to the Tandy 1000
Tandy 1000
The Tandy 1000 was the first in a line of more-or-less IBM PC compatible home computer systems produced by the Tandy Corporation for sale in its Radio Shack chain of stores.-Overview:...
. This again limited the platform's potential as a game console. Early versions of the GIME had DRAM timing issues which caused random freezes. Due to bugs in the GIME some features that were problematic were marked as "reserved" or "do not use" in the programming and service manuals.
The power supply was marginal, and some would overheat if the system memory was expanded to the full 512K capacity. Some CoCo 3 owners opted to add a small fan inside the case to keep it cool.
Prototypes and rare versions
Various prototypes for the CoCo have surfaced over the years. In the 1980s, Radio Shack stores were selling a keyboard that would plug directly into a CoCo 2, though not labeled as such. This keyboard was part of a production run for the never produced Deluxe Color Computer. The Deluxe CoCo was referenced in CoCo manual sets and specifically mentioned as having extra keys, lowercase video, and the ability to accept commands in lowercase. Later versions of the CoCo 2, labeled Tandy instead of TRS-80, had the ability to display true lowercase, but did not accept lowercase commands, although this capability was later available through A-DOS, a third-party replacement ROM for the Disk Controller.Production model CoCo 3s have been found with different circuit board layouts and socketed chips. In 2005, a rare CoCo 3 prototype surfaced at the Chicago CoCoFEST, with a built-in floppy disk drive controller and other items still not identified. It also did not use a GIME chip. Instead, all the functionality of the GIME was created using separate chips. There is a hobbyist effort to try to reverse engineer these chips so a modern GIME can finally be produced.
There is also a prototype Ethernet interface for the Color Computer, displaying a board layout date of 1984, and a few other mystery boards that have yet to be examined. There is some evidence that Tandy killed the Ethernet interface at the last minute: an ad mentioning the networking options for some of Tandy's Z80-based computers claimed that the Color Computer would soon have networking capabilities, and the printed manual for an upgraded version of OS-9
OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
Level One listed networking in the table of contents, but had no corresponding text in the body of the manual.
CoCo clones and cousins
The Dragon 32 and 64 computersDragon 32/64
The Dragon 32 and Dragon 64 are home computers that were built in the 1980s. The Dragons are very similar to the TRS-80 Color Computer , and were produced for the European market by Dragon Data, Ltd., in Port Talbot, Wales, and for the US market by Tano of New Orleans, Louisiana...
were British cousins of the CoCo based on a reference design from Motorola that was produced as an exemplar of the capabilities of the MC6809E (MPU) when coupled with the MC6847 (Video Display Generator - VDG) and the MC6883 (Synchronous Address Multiplexer - SAM). The BIOS code for the Dragon 32 was rewritten based on specifications and API drawn up by Microsoft and, to a certain extent, PA Consulting of Cambridge. The Dragon was a much improved unit with video output in addition to the TV
Television
Television is a telecommunication medium for transmitting and receiving moving images that can be monochrome or colored, with accompanying sound...
output of the CoCo and CoCo 2. It also featured a Centronics
Centronics
Centronics Data Computer Corporation was a pioneering American manufacturer of computer printers, now remembered primarily for the parallel interface that bears its name.-The beginning:Centronics began as a division of Wang Laboratories...
parallel port
Parallel port
A parallel port is a type of interface found on computers for connecting various peripherals. In computing, a parallel port is a parallel communication physical interface. It is also known as a printer port or Centronics port...
(not present on any CoCo), an integrated 6551A serial UART (on the Dragon 64), and a higher-quality keyboard. In 1983, a version of the Dragon was licensed for manufacture for the North American market by Tano Corporation of New Orleans, Louisiana. Tano started production at their 48000 square feet (4,459.3 m²) facility in September 83 and were running at capacity just one month later. Unfortunately sales weren't as good as expected and Tano stopped production and support just one year later. A California surplus equipment company, California Digital, bought the remaining stock of Tano built Dragon 64 shortly after and has had new in-the-box Dragon 64s available for purchase as of December 2009.
In Brazil, there existed several CoCo-clones, including the Prologica CP400 Color and CP400 Color II, the Varixx VC50, the LZ Color64, the Dynacom MX1600, the Codimex CD6809 and the "vaporware
Vaporware
Vaporware is a term in the computer industry that describes a product, typically computer hardware or software, that is announced to the general public but is never actually released nor officially canceled. Vaporware is also a term sometimes used to describe events that are announced or predicted,...
" Microdigital TKS800.
In Mexico, the Micro-SEP, a CoCo 2 clone with 64K of memory, was introduced by the Secretary of Education. The Micro-SEP was intended to be distributed nationally to all the public schools teaching the 7th to 9th grades. They were presented as a design of the Center of Advanced Research and Studies (CINVESTAV
CINVESTAV
The Center for Research and Advanced Studies of the National Polytechnic Institute is a Mexican non-governmental scientific research affiliated to the National Polytechnic Institute and founded by president Adolfo López Mateos on 17 April 1961, initially planned...
) of the National Polytechnic Institute (IPN
National Polytechnic Institute
The National Polytechnic Institute colloquially known as the Polytechnic is one of the largest public universities in Mexico with 153.027 students at the high school, undergraduate and postgraduate levels...
). Like the Dragon, these computers also included video output. Whether these computers were "designed" by this institute, or were licensed from the original design, is unclear.
A Taiwan-based company, Sampo, also made a CoCo clone, the Sampo Color Computer. The Sampo was supposedly available in Taiwan, Korea, and possibly other Asian countries. It is believed that Tandy blocked sales in the US with legal action due to copyright infringements on the ROM code.
A cousin of the CoCo, The MC-10
TRS-80 MC-10
thumb|right|The TRS-80 MC-10The TRS-80 MC-10 microcomputer is a lesser-known member of the TRS-80 line of home computers, produced by Tandy Corporation in the early 1980s and sold through their RadioShack chain of electronics stores...
, or Micro Color Computer, was sold in Radio Shack stores as a lower cost, more entry-level computer than the CoCo. Released in 1983, it was similar in appearance to the Timex Sinclair
Timex Sinclair
Timex Sinclair was a joint venture between the British company Sinclair Research and Timex Corporation in an effort to gain an entry into the rapidly-growing early-1980s home computer market in the United States...
. It also used the MC6847 VDG and Microsoft Basic, but featured the MC6803 instead of the 6809. It was just as bare-bones as the little Timex Sinclair model as well, lacking such things as an 80 column printer and disk storage system, as well as a "real" keyboard. Accordingly, it did not sell well and was withdrawn after just two years of production. An MC-10 clone, the Sysdata Tcolor, was available in Brazil with 16 KB ROM.
Hardware design and integrated circuits
Internally the CoCo 1 and CoCo 2 models are functionally identical. The core of the system is virtually identical to the reference design included in the Motorola MC6883 data sheet and consists of five LSI chips:- MC6809E Microprocessor Unit (MPU)
- MC6883/SN74LS783/SN74LS785 Synchronous Address Multiplexor (SAM)
- MC6847MC6847The MC6847 is a video display generator first introduced by Motorola and used in the TRS-80 Color Computer, Dragon 32/64, Laser 200 and Acorn Atom among others. It is a relatively simple display generator compared to other display chips of the time. It is capable of displaying text and graphics...
Video Display Generator (VDG) - Two Peripheral Interface AdapterPeripheral Interface AdapterThe Peripheral Interface Adapter is a peripheral integrated circuit providing parallel I/O interfacing capability for microprocessor systems. Common PIAs include the Motorola MC6820 and MC6821, and the MOS Technology MCS6520, all of which are functionally identical but have slightly different...
s (PIA), either MC6821 or MC6822 chips
SAM
The SAM is a multifunction device that performs the following functions:- Clock generation and synchronization for the 6809E MPU and 6847 VDG
- Up to 64K Dynamic Random Access Memory (DRAM) control and refresh
- Device selection based on MPU memory address to determine if the MPU access is to DRAM, ROM, PIA, etc.
- Duplication of the VDG address counter to "feed" the VDG the data it is expecting
The SAM was designed to replace numerous small LS/TTL chips into one integrated package. Its main purpose is to control the DRAM but, as outlined above, it integrates several other functions as well. It is connected to a crystal at 4 times the television colorburst frequency (14.31818 MHz for NTSC countries). This is divided by 4 internally and is fed to the VDG for its own internal timing (3.579545 MHz for NTSC). The SAM also divides the master clock by 16 (or 8 in certain cases) for the two phase MPU clock; in NTSC this is .89 MHz (or 1.8 MHz if divided by 8).
Switching the SAM into 1.8 MHz operation gives the CPU the time ordinarily used by the VDG and refresh. As such, the display shows garbage; this mode was seldom used. However, an unusual mode available by the SAM is called the Address Dependent mode, where ROM reads (since they do not use the DRAM) occur at 1.8 MHz but regular RAM access occurs at .89 MHz. In effect, since the BASIC interpreter runs from ROM, putting the machine in this mode would nearly double the performance of a BASIC program while maintaining video display and DRAM refresh. Of course, this would throw off the software timing loops and I/O operations would be affected. Despite this, however, the "high speed POKE
Poke
Poke most commonly refers to the action of tapping and/or softly jabbing an object or person using a finger, stick, or similar object etc.Poke, Poké or POKE may also refer to:*PEEK and POKE, BASIC programming language commands...
" was used by many CoCo BASIC programs even though it overclocked
Overclocking
Overclocking is the process of operating a computer component at a higher clock rate than it was designed for or was specified by the manufacturer, but some manufacturers purposely underclock their components to improve battery life. Many people just overclock or 'rightclock' their hardware to...
the hardware in the CoCo, which was only rated for 1 MHz operation.
The SAM has no connection to the MPU data bus. As such, it is programmed in a curious manner; its 16-bit configuration register is spread across 32 memory addresses (FFC0-FFDF). Writing even bytes sets that register bit to 0, Writing to odd bytes sets it to 1.
Due to limitations in 40-pin packaging, the SAM contains a duplicate of the VDG's internal 12-bit address counter. Normally this counter's settings are set to duplicate the VDG's display mode. However, this is not required and results in the creation of some new display modes not possible when the VDG is used in a system alone. Instead of the VDG requesting data from RAM by itself, the VDG is "fed" data by the SAM's internal copy of the VDG address counter. This process is called "Interleaved Direct Memory Access" (IDMA) by Motorola and ensures that the processor and VDG always have full access to this shared memory resource with no wait states or contention.
There are two versions of the SAM. The early one is labeled MC6883 and/or SN74LS783; the later version is labeled SN74LS785. There are some minor timing differences, but the major difference is the support of an 8-bit refresh counter in the 785 version. This allowed for use of inexpensive 16K by 4-bit and certain 64K by 1-bit DRAMs. Some third party bank-switching memory upgrades that used 256K DRAMs needed this 8-bit refresh counter to work.
VDG
The MC6847 is a relatively simple display generator compared to the display chips of some of the CoCo's 8-bit rivals. It is capable of displaying text and graphics contained within a roughly square display matrix 256 pixels wide by 192 lines high. It is capable of displaying 9 colors: black, green, yellow, blue, red, buff (almost-but-not-quite white), cyan, magenta, and orange. The low display resolution is a necessity of using television sets as display monitors. Making the display wider risked cutting off characters due to overscanOverscan
Overscan is extra image area around the four edges of a video image that may not be seen reliably by the viewer. It exists because television sets in the 1930s through 1970s were highly variable in how the video image was framed within the cathode ray tube .-Origins of overscan:Early televisions...
. Compressing more dots into the display window would easily exceed the resolution of the television and be useless, as the periphery of a textual screen would be unreadable.
Alphanumeric/Semigraphics display
The CoCo is physically wired such that its default alphanumeric display is actually "Semigraphics 4" mode.In alphanumeric mode, each character is a 5 dot wide by 7 dot high character in a box 8 dots wide and 12 lines high. This display mode consumes 512 bytes of memory and is a 32 character wide screen with 16 lines. The internal ROM character generator only holds 64 characters, so no lower case characters are provided. Lower case characters were rendered as upper case characters with inverted color. Although simulated screen shots would show this as green on black, on most CoCo generations it was actually green on very dark green.
Semigraphics is a hybrid display mode where alphanumerics and chunky block graphics can be mixed together on the same screen. If the 8th bit of the character is set, it is a semigraphics character. If cleared, it is an alphanumeric. When the 8th bit is set, the next three bits determine the color and last 4 bits determine which "quadrant" of the character box is either the selected color or black. This is the only mode where it is possible (without sneaky tricks) to display all 9 colors on the screen simultaneously. If used to only display semigraphics, the screen becomes a 64x32 9 color graphics mode. The CoCo features several BASIC commands to manage this screen as a low-res graphics display.
The alphanumeric display has two colorsets. The one used by default on the CoCo has black characters on a green background. The alternate has black characters on an orange background. The colorset selection does not affect semigraphics characters. The border in this mode is always black.
The 6847 is capable of a Semigraphics 6 display mode, where two bits select a color and 6 bits determine which 1/6 of the character box is lit. In this mode only 4 colors are possible but the Colorset bit of the VDG can select two different groups of the 4 colors. Due to a peculiarity of its hardware, only two colors are available in graphics blocks when using Semigraphics 6 on the CoCo.
Additional Semigraphics modes
By setting the SAM such that it believes it is displaying a full graphics mode, but leaving the VDG in Alphanumeric/Semigraphics 4 mode, it is possible to subdivide the character box into smaller pieces. This creates the "virtual" modes Semigraphics 8, 12, and 24. In these modes it was possible to mix bits and pieces of different text characters as well as Semigraphics 4 characters. These modes were an interesting curiosity but not widely used, as the Semigraphics 24-screen consumed 6144 bytes of memory. These modes were not implemented on the CoCo 3.A programmer's reference manual for the CoCo states that due to a fire at Tandy's research lab, the papers relating to the semigraphics modes were shuffled, and so some of the semigraphics modes were never documented. CoCo enthusiasts created experimental programs to try to reverse engineer the modes, and were able to reconstruct the missing documentation.
Graphics display
There were several full graphics display modes, which were divided into two categories: "resolution" graphics and "color" graphics. In resolution modes, each pixel is addressable as either on or off. There are two colorsets available, the first was black dots on a green background and green border, the second, more commonly used one has white dots on a black background with a white border. In color modes, each pixel was two bits, selecting one of four colors. Again the colorset input to the VDG determined which colors were used. The first colorset has a green border, and the colors green, yellow, red, and blue were available. The second colorset has a white border and the colors white, cyan, magenta and orange were available. Resolution graphics have 8 pixels per byte and are available in 128x64, 128x96, 128x192, and 256x192 densities. Color graphics have 4 pixels per byte and are available in 64x64, 128x64, 128x96, and 128x192 densities. The maximum size of a graphics screen is 6144 bytes.Artifact colors
The 256x192 two color graphics mode uses four colors due to a quirk in the NTSC television system. It is not possible to reliably display 256 dots across the screen due to the limitations of the NTSC signal and the phase relationship between the VDG clock and colorburst frequency. In the first colorset, where green and black dots are available, alternating columns of green and black are not distinct and appear as a muddy green color. However, when one switches to the white and black colorset, instead of a muddy gray as expected, the result is either red or blue. Reversing the order of the alternating dots will give the opposite color. In effect this mode becomes a 128x192 4 color graphics mode where black, red, blue, and white are available. Most CoCo games used this mode as the colors available are more useful than the ones provided in the hardware 4 color modes. Unfortunately the VDG internally can power up on either the rising or falling edge of the clock, so the bit patterns that represent red and blue are not predictable. Most CoCo games would start up with a title screen and invited the user to press the reset button until the colors were correct. The CoCo 3 fixed the clock-edge problem so it was always the same; a user would hold the F1 key during reset to choose the other color set. On a CoCo 3 with an analog RGB monitor, the black and white dot patterns do not artifact; to see them one would have to use a TV or composite monitor, or patch the games to use the hardware 128x192 four color mode in which the GIME chip allows the color choices to be mapped. Users in PALPAL
PAL, short for Phase Alternating Line, is an analogue television colour encoding system used in broadcast television systems in many countries. Other common analogue television systems are NTSC and SECAM. This page primarily discusses the PAL colour encoding system...
countries saw green and purple stripes instead of solid red and blue colors.
Lower case and the 6847T1
The 6847 is capable of using an external character generator. Several third party add-on adapter boards would allow the CoCo to display real lowercase characters.Very late in the CoCo 2 production run, an enhanced VDG was available. Called the 6847T1, it included a lower case character generator and the ability to display a green/orange or black border on the text screen. Its other changes were mainly to reduce parts count by incorporating an internal data latch. The lower case capability of this VDG is not enabled by default on this system and is not even mentioned in the manual. Only through some tinkering and research was this feature discovered by intrepid CoCo users.
The 6847T1 may also carry the part number XC80652P; these may have been pre-release parts.
PIAs
There are two PIA chips in all CoCo models. The PIAs are dedicated mainly to I/O operations such as driving the internal 6-bit Digital-to-analog converterDigital-to-analog converter
In electronics, a digital-to-analog converter is a device that converts a digital code to an analog signal . An analog-to-digital converter performs the reverse operation...
(DAC), reading the status of the DAC's voltage comparator, controlling the relay for the cassette motor, reading the keyboard matrix, controlling the VDG mode control pins, reading and writing to the RS232 serial I/O port, and controlling the internal analog multiplexers.
The earliest CoCo models had two standard 6821 chips. Later, due to changes in the keyboard design, it was found that the 6822 IIA (industrial interface adapter) was better suited to the keyboard's impedance
Electrical impedance
Electrical impedance, or simply impedance, is the measure of the opposition that an electrical circuit presents to the passage of a current when a voltage is applied. In quantitative terms, it is the complex ratio of the voltage to the current in an alternating current circuit...
. The 6822 was eventually discontinued by Motorola but was produced for Tandy as an ASIC with a special Tandy part number, SC67331P. Functionally the 6821 and 6822 are identical and one can put a 6821 in place of the 6822 if that part is bad. Some external pull-up resistors may be needed to use a 6821 to replace a 6822 in a CoCo for normal keyboard operation.
Interface to external peripherals
Due to the CoCo's design, the MPU encounters no wait states in normal operation. This means that precise software controlled timing loops are easily implemented. This is important, since the CoCo has no specialized hardware for any I/O. All I/O operations, such as cassette reading and writing, serial I/O, scanning the keyboard, and reading the position of the joysticks, must be done entirely in software. This reduces hardware cost, but reduces system performance as the MPU is unavailable during these operations.As an example, the CoCo cassette interface is perhaps one of the fastest available (1500-bit/s) but it does so by literally playing software generated sine waves through its internal 6-bit DAC. While this is happening, the CoCo cannot do anything else as this uses all the CPU time. Similarly, to read data off the cassette, the CoCo must count waveform crossings and thus cannot do anything else until either an error occurs or the operation ends.
CoCo 3 hardware changes
The hardware in the CoCo 1 and CoCo 2 models was functionally the same; the only differences were in packaging and integration of some functions into small ASICs. The CoCo 3 radically changed this. A new VLSI ASIC, called (officially) the Advanced Color Video Chip (ACVC) or (unofficially) the Graphics Interrupt Memory Enhancer (GIME), integrated the functions of the SAM and VDG while enhancing the capabilities of both. Aside from the graphics enhancements outlined above, the CoCo 3 offered true lower case, 40 and 80 column text display capability, and the ability to run at 1.8 MHz without loss of video display. As such the processor was changed to the 68B09E and the PIA was changed to the 68B21, which are 2 MHz rated parts.Competition
The CoCo's main competition was from the Commodore 64Commodore 64
The Commodore 64 is an 8-bit home computer introduced by Commodore International in January 1982.Volume production started in the spring of 1982, with machines being released on to the market in August at a price of US$595...
, Apple II
Apple II
The Apple II is an 8-bit home computer, one of the first highly successful mass-produced microcomputer products, designed primarily by Steve Wozniak, manufactured by Apple Computer and introduced in 1977...
, Commodore
Commodore International
Commodore is the commonly used name for Commodore Business Machines , the U.S.-based home computer manufacturer and electronics manufacturer headquartered in West Chester, Pennsylvania, which also housed Commodore's corporate parent company, Commodore International Limited...
VIC-20 and the Atari 400 and Atari 800.
While the CoCo sported perhaps the most advanced 8-bit processor ever made, that processing power came at a significant price premium. In order to sell the CoCo at a competitive price, its relatively expensive processor was not tied to any specialized video or sound hardware. In comparison, the 6502-derived processor in the Commodore, Apple and Atari systems was much less expensive. Both Commodore and Atari had invested in advanced graphics and sound chip design for arcade games and home gaming consoles. By tying these specialized circuits with an inexpensive processor, Atari and Commodore systems were able to play sophisticated games with high quality graphics and sound. The trade-off is between a system with an expensive CPU that does a lot of work, or an inexpensive CPU that controls the registers of its sound and video hardware.
The CoCo video hardware was derived from a chip designed as display for a character based terminal, and is a completely "dumb" device. Similarly, the sound hardware is little more than a 6-bit DAC
Digital-to-analog converter
In electronics, a digital-to-analog converter is a device that converts a digital code to an analog signal . An analog-to-digital converter performs the reverse operation...
under software control. All graphics and sound require direct CPU intervention, and while this allows for great flexibility, its performance is much lower than dedicated hardware.
Games drove system sales then as they do now, and with its poor gaming performance, the CoCo attracted little interest in officially licensed ports of popular games. The CoCo 3 did improve graphics capability and doubled CPU performance, but still contained no hardware graphics or sound acceleration. Drawing was performed by the CPU, and most of the new graphics modes required at least twice as much processor time due to increased display resolution
Display resolution
The display resolution of a digital television or display device is the number of distinct pixels in each dimension that can be displayed. It can be an ambiguous term especially as the displayed resolution is controlled by all different factors in cathode ray tube , flat panel or projection...
and color depth
Color depth
In computer graphics, color depth or bit depth is the number of bits used to represent the color of a single pixel in a bitmapped image or video frame buffer. This concept is also known as bits per pixel , particularly when specified along with the number of bits used...
. The sound hardware was not changed at all.
Every computer platform is a compromise, and despite the significant graphics and sound handicap the CoCo may have had, it still had a sophisticated CPU under its hood with extremely high performance. There were many independent clones of popular games available, but far more important was the availability of "killer apps" for the CoCo. For instance, CoCo-Max and Max-10 were clones of MacPaint and MacWrite. The OS-9
OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
operating system, a UNIX-like multi-tasking multi-user environment, was also available. Even the BASIC interpreter was one of the most powerful available, and provided the user with a rich set of easy-to-use commands for manipulating on-screen graphics and playing sounds.
Some of the hardware limitations were overcome with external add-ons, particularly expansion cartridges. Some were made by Tandy, some by other manufacturers. Examples are:
- RS232 Program Pak, which provided a real RS232 UART for serial communications (the 6551A)
- The Speech & Sound Pak, which provided a speech synthesizer and a sound generator chip
- Word-Pak and Word-Pak II 80 column display adapters produced by PBJ, Inc. allowed connection to an external monochrome monitor (not needed for CoCo 3).
- 300 baud modem pak
- Advanced floppy and hard drive controllers (mostly for OS-9)
Key to taking advantage of these expansion capabilities is the Multi-Pak interface, which permits up to four devices such as these to be attached to the system at the same time.
The OS-9 divide
There is/was a major division of CoCo users: those who used OS-9OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
and those who used Disk Extended Color BASIC (DECB). The divide comes from the fact that programs using DECB (except for those that used CoCo's form of BASIC) used DECB only as a loader and for disk I/O, communicating with the hardware directly for all other activities. OS-9 applications communicate with OS-9 and its drivers. This allows for a degree of hardware independence.
Many programs written for the CoCo were DECB programs. In order to support such programs (or at least, those that bypassed BASIC and addressed hardware directly), any future CoCo version would have to be hardware-compatible with the CoCo, or perfectly emulate every aspect of the CoCo. In contrast, OS-9
OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
programs relied only on OS-9 functions, and its drivers could be rewritten to work with different hardware. However, DECB comes with the CoCo system itself, and required no further setup or purchasing. OS-9 was an additional product that had to be loaded manually each time the computer was started. Writing an OS-9 program meant appealing to a smaller subset of the CoCo community; this discouraged development of OS-9 products.
The end of the road
On October 26, 1990, Ed Juge of Tandy announced that the CoCo 3 would be dropped from its computer line. With no apparent successor mentioned, the announcement was disheartening to many loyal CoCo fans.Even today, current and former CoCo owners agree that Tandy did not take the CoCo very seriously, despite it having been their best-selling computer for several years. Tandy failed to market the CoCo as the powerful and useful machine that it was, and offered customers no hint about the large number of third party software and hardware products available for it.
The release of the CoCo 3 was particularly lackluster despite its greatly enhanced graphic capabilities and RGB monitor support. Radio Shack fliers and stores typically depicted the CoCo 3 running CoCo 2 games, and offered a very limited selection of CoCo 3 specific software. There was an official Radio Shack store demo, but few stores bothered to run it.
Additionally, DRAM prices skyrocketed at the time the CoCo 3 was released, making the 512K memory upgrade considerably more expensive than the 128K CoCo 3 itself. Very few stores displayed a 512K machine or a CoCo 3 running such games as King's Quest
King's Quest III: To Heir Is Human
King's Quest III: To Heir Is Human is the third installment in the King's Quest series of computer games produced by Sierra On-Line. It was the first game in the series not to feature King Graham as the player character....
or Leisure Suit Larry
Leisure Suit Larry in the Land of the Lounge Lizards
Leisure Suit Larry in the Land of the Lounge Lizards is the alliterative title to an adventure computer game first released in 1987, the first part of the Leisure Suit Larry series. It was a completely graphical adventure game with 16 color EGA graphics. It utilizes the Adventure Game Interpreter ...
.
Successors
In spite of Tandy's apparent lack of concern for the CoCo market, there were rumors of the existence of a prototype CoCo 4 at Tandy's Fort Worth headquarters. Several first hand accounts of the prototype came from people like Mark Siegel of Tandy and Ken Kaplan of Microware, yet there exists no known physical evidence of such a machine.A few independent companies attempted to carry the CoCo torch, but the lack of decent backwards compatibility with the CoCo 3 failed to entice much of the CoCo community over to these new independent platforms. Many of these independent platforms did run OS9/68k, which was very similar to OS-9
OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
. However the bulk of the CoCo community moved on to more mainstream platforms. Some CoCo users swore their loyalty to Motorola and moved on to the Amiga, Atari ST, or even the Macintosh, all of which were based on the Motorola 68000 processor. Others jumped on the IBM PC-compatible bandwagon.
Tomcat
Frank Hogg Labs introduced the Tomcat TC-9 in June 1990, which was somewhat compatible with the CoCo 3, but was mostly only able to run OS-9OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
software. A later version called the TC-70 (running on a Signetics 68070) had strong compatibility with the MM/1, and also ran OS-9/68K.
MM/1
The Multi-Media One was introduced in July 1990, ran OS-9OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
/68K on a 15 MHz Signetics 68070 processor with 3 MB RAM, and had a 640x208 graphics resolution as well as supporting a 640x416 interlaced mode. It included a SCSI interface, stereo A/D and D/A conversion, an optional MIDI interface, and (later) an optional board to upgrade the CPU to a Motorola 68340 running at up to 25 MHz. It is estimated that about 500 units were sold.
AT306
The AT306 (also known as the MM/1B) was a successor to the MM/1 that contained a Motorola 68306 CPU, OS-9/68K 3.0, and was designed to allow the use of ISA bus cards. It was created by Kevin Pease and Carl Kreider, and sold by Carl's company, Kreider Electronics. It was also sold as the "WCP-306" by Bill Wittman of Wittman Computer Products.Delmar System IV/Peripheral Technology PT68K-4
Peripheral Technology produced a 16 MHz Motorola 68000 system called a PTK68K-4, which was sold as a kit or a complete motherboard. Delmar sold complete systems based on the PT68K-4 and called the Delmar System IV. The PT68K-4 has the footprint of an IBM PC, so it will fit in a normal PC case, and it has seven 8-bit ISA slots. Video was provided by a standard IBM style monochrome, CGA, EGA, or VGA video card and monitor, but for high resolution graphics the software only supported certain ET4000 video cards. It appears that most users of this system used/uses OS-9OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
, but there are several operating systems for it, including REX (a FLEX-like OS), and SK*DOS. Dan Farnsworth, who wrote REX, also wrote a BASIC interpreter that was fairly compatible to DECB, but it was too little, too late to be of interest to many CoCo users. There was also a card available called an ALT86, which was basically an IBM XT compatible computer on a card, which allowed the user to run DOS programs on it. In fact, both the 68000 and the ALT86 card could be run at the same time, if access to the ISA bus was not needed from the 68000 side of it.
The 21st century
The CoCo still has a small but active user community despite a perceived lack of support from Tandy. Third-party support was assisted by CoCo-related periodicals, notably The RainbowThe Rainbow (magazine)
The Rainbow was a monthly magazine for the TRS-80 Color Computer by the Tandy Corporation . It was started by the late Lawrence C...
, Hot CoCo, and The Color Computer Magazine. Original hardware is being expanded by some small firms such as Cloud-9 with such things as SCSI and IDE hard drive controllers, memory upgrades to 512K and AT Keyboard interfaces. Other recent hardware development includes RGB-to-VGA Converter that allows connecting a Coco3 to a standard VGA compatible monitor.
User-driven support for the Color Computer has continued since production stopped in the '80s, hosted on various web sites and forums (see #External links).
Emulation
Emulation of the CoCo hardware has been possible on x86 PCs since at least the mid '90s. MESSMESS
Multi Emulator Super System is an emulator for many game consoles and computer systems, based on the MAME core.The primary purpose of MESS is to preserve decades of computer and console history...
is capable of emulating the CoCo; however, the most popular emulators are Jeff Vavasour's CoCo emulators (see external links). Mocha is a web-based emulator written in Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
that can emulate a CoCo 2 inside a web browser.
Most of these emulators require a dump from the CoCo ROMs. Instructions are usually provided with the emulators on how to get a ROM dump from a CoCo. A ROM might be found online, which may be from a Brazilian CoCo clone.
Utilities exist to transfer data from a PC to a CoCo. If one does not have compatible disk drives for the PC and CoCo, data may still be transferred by using special PC CoCo utilities to create a .wav audio file of the data. Hook the CoCo's cassette interface cables directly to the line out of a PC's soundcard, initiate the CLOAD (or CLOADM) command on the CoCo, and then play the sound file from the PC.
The final mystery: 256 colors?
Early production notes for the CoCo 3 specified it would have a 256 color mode. A former Tandy employee once involved with the Color Computer product line has stated that this mode did make it in production CoCo 3s, but was never documented to avoid competition with the Tandy 1000 series of PCs. For years, several CoCo hobbyists have tried to confirm if this mode exists. The technical reference manual for the CoCo 3 as sold by Tandy had some clues to the existence of this mode, or at least showed where it may have existed but was removed before production.A pseudo-256 color mode could be done using a page flipping technique which caused the screen to flicker badly, but was able to display 256 color graphics. This was used in some video screen capture software for the CoCo as well. There was also an OS-9
OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It is currently owned by RadiSys Corporation....
program that allowed viewing of 256 color graphic files.
Nickolas Marentes, a long time Color Computer programmer, has done some investigation into this "secret" mode and has come up with some interesting information. Chris Lomont has produced a "256 Color Demo". Other well known programmers such as Roger Taylor and John Kowalski (Sockmaster) have produced their own versions of graphics viewers that use various tricks not related to the "undiscovered 256-color mode" to simulate thousands of colors using dithering patterns and/or a combination of flickering techniques. To date, nobody has matched Sockmaster's 6000+ color mode, although loading pictures takes quite some time.
Recently, there has also been work into harnessing the capabilities of NTSC artifacting to display up to 256 colors at once on the CoCo 3's 640x192 4-color screen. The concept is quite similar to that used in the Apple II's double-hi-res mode, or on the IBM PC's CGA composite output. However, both of those systems are only capable of outputting a 1-bit monochrome display at those resolutions. The CoCo 3 is capable of displaying 4 colors, which are selected as greys. Unlike other methods, this uses very little CPU time and results in no flicker. However, it does not work on RGB monitors or PAL CoCo 3 systems.
Community development
A group of computer hobbyists continue to develop new hardware and software for the machine. Each Spring, the Glenside CoCo Club in the ChicagoChicago
Chicago is the largest city in the US state of Illinois. With nearly 2.7 million residents, it is the most populous city in the Midwestern United States and the third most populous in the US, after New York City and Los Angeles...
area hosts an annual CoCoFest gathering. At the 2007 event, the arcade game Donkey Kong
Donkey Kong (video game)
is an arcade game released by Nintendo in 1981. It is an early example of the platform game genre, as the gameplay focuses on maneuvering the main character across a series of platforms while dodging and jumping over obstacles. In the game, Jumpman must rescue a damsel in distress, Lady, from a...
was ported from the original Z80 code to the CoCo's 6809 by CoCo programmer John Kowalski. Using code translation and emulation techniques, the end result was the actual Donkey Kong game running on a 512K CoCo 3.
Advancements in the Color Computer hardware and software front have also come from companies that have sprung up over the course of the last decade. Cloud-9, headquartered in Delano, Minnesota with labs in Lanesboro, Minnesota and Opelousas, Louisiana, have released hardware products such as the SuperIDE with programmable flash memory and CompactFlash storage, AT keyboard adapters, and CoCo 3 512K memory boards. Software products such as SuperDriver and DriveWire 3 (now free) have also come from Cloud-9's labs. Other hardware releases include a 2GB MicroSD card based Solid-state drive
Solid-state drive
A solid-state drive , sometimes called a solid-state disk or electronic disk, is a data storage device that uses solid-state memory to store persistent data with the intention of providing access in the same manner of a traditional block i/o hard disk drive...
and a bluetooth serial pak from coco3.com.
The CoCo Mailing List
Dennis Bathory-Kitsz, a long time TRS-80 and CoCo developer, and former editor of "Undercolor" Magazine (a short lived CoCo magazine) currently runs an electronic mailing listElectronic mailing list
An electronic mailing list is a special usage of email that allows for widespread distribution of information to many Internet users. It is similar to a traditional mailing list — a list of names and addresses — as might be kept by an organization for sending publications to...
for the CoCo at http://five.pairlist.net/mailman/listinfo/coco. Daily digests containing messages from CoCo enthusiasts are sent as e-mails to a subscriber's e-mail box. Traffic isn't such that the messages are overly large or regular—generally 1-4 small text-only messages are delivered daily. Subjects range from programming assistance to historical information.
Tandy's Little Wonder
In 1993 Frank Swygert self-published "Tandy's Little Wonder", selling just over 500 copies to CoCo enthusiasts online. The book serves as a history, maintenance and repair guide and was written with the assistance of fellow enthusiasts and noted CoCo supporters such as Frank Hogg. http://coco.randomrodder.com/techdocs/tlw2.pdf or http://os9projects.com/cgi-bin/dl.pl?sub=TUTORIALS/COCO/LITTLEWONDER/ED1The book was updated in 2006; after discussion with an electronic CoCo Mailing List it was decided to distribute the updated manuscript for free via pdf. http://os9projects.com/Tutorials/OS9Books/LittleWonder.html
See also
- :Category:TRS-80 Color Computer games
- Dungeons of DaggorathDungeons of DaggorathDungeons of Daggorath is a 1982 computer game and one of the first computer titles to use a 3D wireframe first-person perspective. It was produced by DynaMicro for the Tandy TRS-80 Color Computer....
- To Preserve QuandicTo Preserve QuandicTo Preserve Quandic was probably the largest graphical adventure game done on the TRS-80 Color Computer at the time of its release. Taking two full disks, it was larger than both Sands of Egypt and Dallas Quest, which preceded it...
External links
- Alfredo Santos's CoCo Chronicles, a history of the Color Computer which, aside from near-total neglect of OS-9, is very thorough.
- The Tandy Color Computer Resource Site has many links to information on the Color Computer. CP 400 - The Brazilian TRS 80 Color Computer
- CoCopedia Wiki
- The TRS-80/Tandy Color Computer SuperSite! dedicated to the CoCo & active full of inofrmation on CoCoSigs and downloads full of information
- 1983 TRS-80 Catalog - A scanned copy of the 1983 TRS-80 Radio Shack computer catalog with hi-res scans.
- Radio Shack TRS-80 Catalogs and Old Catalogs of Tandy/Radio Shack - A Generation full of history and when Radio Shack used catalogs. [ENJOY]
- More information on the CoCo3 256 color mode - Nickolas Marentes' Project Archive
- The Tandy Color Computer Mailing List Vehicle for communication about the CoCo.
- [ftp://maltedmedia.com/coco/Farna/ Tandy's Little Wonder] Download site for "Tandy's Little Wonder" PDF book and other FARNA Systems CoCo publications and software.
- Motorola MC6822 data sheet, scanned from "8-Bit Microprocessor & Peripheral Data 1984/85"
- www.cococoding.com documentation useful for programming on the coco
Technical
Emulators