Texas instruments
and the ti-99/4a
The TI-99/4A is one of many personal computers that was around in the 1980's. I have decided to include it on this website because the TI-99/4A was my first introduction to video games and it was used exclusively for that in my home.
Texas Instruments Inc. (TI) is an American technology company that designs and manufactures semiconductors and various integrated circuits, which it sells to electronics designers and manufacturers globally. Headquartered in Dallas, Texas, United States, TI is one of the top ten semiconductor companies worldwide, based on sales volume. Texas Instruments's focus is on developing analog chips and embedded processors, which accounts for more than 80% of their revenue. TI also produces TI digital light processing (DLP) technology and education technology products including calculators, microcontrollers and multi-core processors. To date, TI has more than 43,000 patents worldwide.
Texas Instruments emerged in 1951 after a reorganization of Geophysical Service Incorporated, a company founded in 1930 that manufactured equipment for use in the seismic industry, as well as defense electronics. TI produced the world's first commercial silicon transistor in 1954, and designed and manufactured the first transistor radio in 1954. Jack Kilby invented the integrated circuit in 1958 while working at TI's Central Research Labs. TI also invented the hand-held calculator in 1967, and introduced the first single-chip microcontroller (MCU) in 1970, which combined all the elements of computing onto one piece of silicon.
In 1987, TI invented the digital light processing device (also known as the DLP chip), which serves as the foundation for the company's award-winning DLP technology and DLP Cinema. In 1990, TI came out with the popular TI-81 calculator which made them a leader in the graphing calculator industry. In 1997, its defense business was sold to Raytheon, which allowed TI to strengthen its focus on digital solutions. After the acquisition of National Semiconductor in 2011, the company had a combined portfolio of nearly 45,000 analog products and customer design tools, making it the world's largest maker of analog technology components.
TI-99/4A
The Texas Instruments TI-99/4A is a home computer, released June 1981 in the United States at a price of $525 ($1,400 adjusted for inflation). It is an enhanced version of the less successful TI-99/4 model, which was released in late 1979 at a price of $1,150 ($3,900 adjusted for inflation). Both models include support for sprites and multi-channel sound, some of the first home computers to include such custom hardware, alongside the Atari 8-bit family also introduced in 1979.
Features
The TI-99/4 has a calculator-style chiclet keyboard and a character set that lacked lowercase text. The TI-99/4A added an additional graphics mode, "lowercase" characters consisting of small capitals, and a full-travel keyboard. Both use 16-bit processors, making the TI-99/4 series the first 16-bit home computers.
The TI-99/4A's CPU, motherboard, and ROM cartridge ("Solid State Software") slot are built into the keyboard. The power regulator board is housed below and in front of the cartridge slot under the sloped area to the right of the keyboard. This area gets very hot so users commonly refer to it as the "coffee cup warmer". The external power supply, which was different according to the country of sale, is a step-down transformer.
Available peripherals included a 5¼" floppy disk drive and controller, an RS-232 card comprising two serial ports and one parallel port, a P-code card for Pascal support, a thermal printer, an acoustic coupler, a tape drive using standard audio cassettes as media, and a 32 KB memory expansion card. The TI-99/4 was sold with both the computer and a monitor (a modified 13" Zenith color TV) as Texas Instruments could not get its RF modulator approved by the U.S. Federal Communications Commission in time. The TI-99/4A did ship with an RF modulator.
In the early 1980s, TI was known as a pioneer in speech synthesis, and a highly popular plug-in speech synthesizer module was available for the TI-99/4 and 4A. Speech synthesizers were offered free with the purchase of a number of cartridges and were used by many TI-written video games (notable titles offered with speech during this promotion were Alpiner and Parsec). The synthesizer uses a variant of linear predictive coding and has a small in-built vocabulary. The original intent was to release small cartridges that plugged directly into the synthesizer unit, which would increase the device's built in vocabulary. However, the success of software text-to-speech in the Terminal Emulator II cartridge cancelled that plan. In many games (mostly those produced by TI), the speech synthesizer has relatively realistic voices. For example, Alpiner's speech includes male and female voices and can be quite sarcastic when the player made a bad move.
The TI-99/4's original expansion concept was that peripherals would be connected serially to the console and each other, in a "daisy-chain" fashion. The "sidecar" expansion units can be connected together in a continuing chain, but can rapidly occupy an entire desktop and cause crashes and lockups due to the large numbers of connectors on the system bus.
This original idea was soon replaced by a system based on expansion cards. Encased in silver plastic but made from sheet steel, these plug into the bulky "Peripheral Expansion System" (usually known among TI owners as the Peripheral Expansion Box or "PEB"), an eight slot chassis, containing its own linear power supply and a full-height 5¼" floppy bay. Each card also has its own "access light", an LED which would blink or flicker when the card was being used by software. As on the earlier S-100 bus, the section of the power supply that power the card slots is unregulated. Each card has on-board regulators for its own requirements, thus reducing power consumption on a partially loaded PEB and allowing for future expansion cards which might have unusual voltage requirements.
The PEB also carries an analog sound input on the expansion bus. This allows the TI Speech Synthesizer's audio to be carried through the console to the monitor. The audio is also carried through the ribbon cable ("firehose", as TI users often call it) to the Peripheral Expansion System, both allowing the relocation of the Speech Synthesizer to the Expansion box and allowing for the possibility of audio cards offering more features than the console's built-in sound. No "official" cards from Texas Instruments ever made use of this line.
Early models (the TI-99/4, identified by its keyboard and "(C)1979 TEXAS INSTRUMENTS" on the title page) includes a built-in equation calculator, but in the 99/4A ("(C)1981 TEXAS INSTRUMENTS") this feature was discontinued. All consoles includes TI BASIC, a strict ANSI-compliant BASIC programming language interpreter which is largely incompatible with the more popular, and frequently imitated, Microsoft BASIC. Later consoles, identified by "(C)1983 TEXAS INSTRUMENTS V2.2" on the title page, also remove the ability for the system to execute unlicensed ROM-based cartridges, locking out third-party manufacturers such as Atarisoft.
The system has a joystick port that supports two digital joysticks, which TI referred to as "wired remote controllers". The two joysticks are connected through a single nine pin DE-9 port which is identical with those used for Atari 2600 joysticks but with incompatible pins. Aftermarket adapters were available which allow the use of two Atari-compatible joysticks. The computer supports saving to, and loading from, two cassette drives through a dedicated port. Composite video and audio are output through another port on NTSC-based machines, and combine through an external RF modulator for use with a television. PAL-based machines output a more complex YUV signal which is also modulated to UHF externally.
First personal computer with a 16-bit processor
The TI-99/4 series holds the distinction of being the first 16-bit personal computer. The TI-99/4A has a 16-bit TMS9900 CPU running at 3.0 MHz. The TMS9900 was based on TI's range of TI-990 mini computers.
Only the Program Counter, Status Register, and Workspace Pointer registers are on the chip; all work registers are kept in RAM at an address indicated by the Workspace Pointer. 16 registers are available at any given time, and a context switch instruction which changed to another workspace automatically allows fast context switches compared to other processors which may have had to store and restore the registers. For CPU RAM, the machine has only 256 bytes of "scratchpad" memory to support the storage of workspaces. This memory is placed directly on the 16-bit bus with zero wait states, making it much faster than any other memory available to the system.
Although the CPU is a full 16-bit processor, only the system ROMs and 256 bytes of scratchpad RAM is available on the 16-bit bus. All other memory and peripherals are connected to the CPU through a 16-to-8-bit multiplexer, requiring twice the cycles for any access and introducing an additional 4-cycle wait state. (This is reportedly due to the failure of a new 8-bit processor being designed by TI for this system, while the 9900 processor was already in production and proven.) A popular user modification in later years involves "piggybacking" static RAM chips onto the console's 16-bit ROM chips, allowing a standard 32kB RAM expansion without the wait state and approximately a 30% speed increase for many applications. Applications previously running entirely in 8-bit RAM (both code and registers) can speed up by a factor of two. Most hardware is based on the system clock, not the program execution speed, and the hardware access still runs through the 8-bit bus with the wait states intact, so this particular modification does not affect any peripherals.
By decoding some unused I/O-bits in the console, it is also possible to use the full address range of 64 kB RAM in the machine, by overlaying other memory and/or ports, under I/O (CRU) control. By doing so the console ROM can be copied into RAM, and thus things like interrupt vectors and such could be modified. However, such modifications are not frequent enough to make anyone but the particular modifier himself write any software to use it.
The video display processor in the 99/4 is a TMS9918. It lacks a bitmap mode, which was added in the 99/4A. The VDP in the American 99/4A is the TMS9918A (which gives the machine the A in its name). In the European PAL consoles this is replaced with the TMS9929A which also powered MSX machines.
A unique feature of these VDP chips is that they contained hardware support for superimposing on-screen graphics over other video signals. Although TI announced a peripheral card called the Video Controller Card which allowed the control of select laserdisc players, which could switch between the TI's display and the laserdisc player, the genlock capability of the 9918 is disabled in the design of the 99/4A and requires hardware modifications to use.
All accesses to the VDP system are executed 8 bits at a time. Although this affects performance, it made it easier to upgrade the VDP when newer, relatively compatible chips were released by Yamaha. Peripherals from Mechatronics, and Michael Becker, simply called "80-column cards" include the Yamaha V9938 VDP which gives the 99/4A a top resolution of 512×424 in 16 colours or 256×424 in 256 colors. This also increases the VDP memory from 16K to a maximum of 192K, although only software explicitly written for the 9938 take advantage of it.
The unusual architecture of the 99/4 series is documented to be due to the failure of the 9985, an 8-bit processor which was being created specifically for the machine. When it was abandoned, the 16-bit 9900 was selected to replace it, and a great deal of "glue logic" had to be added to fit the processor into the existing design, while no changes were made to take advantage of the 9900's strengths.
"Plug and play" hardware support
All TI-99 models, from the earliest TI-99/4 to the unreleased TI-99/2 and TI-99/8, include plug and play support for all peripherals. Device drivers (called "Device Service Routines", or DSRs) are built into ROMs in the hardware; when a new card was inserted, it is immediately available for any software which needed or wanted to use it. All device access utilize a generic file-based I/O mechanism, allowing new devices to be added without updating software to use it. The Communications Register Unit (CRU) can address 4096 devices; however, each TI card runs at a hard-wired address on the CRU bus, and so multiple cards of the same type cannot be supported without modification. The only official card known to be modifiable is the RS-232 card, which supports two different base addresses. This allows the system to support four RS-232 ports and two parallel printer ports. Four-line BBSes were being run, using properly jumpered serial cards, on TI-99/4A systems as recently as the mid-1990s. Most hobbyist-created cards released after TI's exit from the personal computer business include switches to set the base CRU address.
The HexBus Interface was designed in 1982 and intended for commercial release in late 1983. It connects the console to peripherals via a high-speed serial link. Though it is prototypical to today's USB (plug and play, hot-swappable, etc.), it was never released, with only a small number of prototypes appearing in collector hands after TI pulled out of the market. Several HexBus peripherals were planned or produced. A WaferTape drive never made it past the prototype stage due to reliability issues with the tapes. The 5.25-inch floppy drive also never made it past the prototype stage, even though it worked. Prototype DSDD disk controllers and Video controllers were also made. A four-color printer-plotter, a 300-baud modem, RS-232 interface, an 80-column thermal/ink printer, and a 2.8" "Quick Disk" drive were the only peripherals released in quantity, mostly for use with the Compact Computer 40 (CC-40). All HexBus peripherals can be used with a TI-99/4A when connected through the HexBus Interface, through direct connection to the TI-99/8, or through direct connection to the CC-40.
CPU RAM and Scratchpad
The TI minicomputer-inspired architecture of the TMS9900 series means that the "Workspace" of registers currently in use are stored in main memory. Because static RAM was also very expensive in the early 80s, TI only gave the machines 256 bytes of fast "scratch pad" RAM where register workspaces could be stored.
The original design for the intended CPU had this 256 bytes internal to the CPU itself, but the 9900 requires registers to be in external memory. Placing this small amount of memory on the 16-bit bus nevertheless helps the performance of the machine (as compared to having registers in 8-bit RAM with a 4-cycle penalty for every access). Some programs, such as Parsec, copied short loops of code to this memory to take advantage of the performance.
The sidecar and PE box expansion systems makes possible an official 32kB RAM expansion. This is not available to all uses – for example an Extended Basic program was restricted to using 24kB with the remaining 8kB available for machine code routines.
Third parties provided replacement memory cards for the PEB. For example, Myarc produced 192kB and 512kB cards. The memory provided by the Myarc cards can be partitioned for use as regular CPU RAM, a RAM disk and a printer buffer.
The Mini Memory plug-in module also contains 4kB of RAM that can be used as a persistent RAM disk (it contained a button cell) or to load a machine-code program.
It is also possible to add an 8kB "supercart" or 32kB "superspace" cartridge via the cartridge slot, which also included the Editor/Assembler GROM. This uses the cartridge ROM space.
VDP RAM and GPL
Texas Instruments engineers afforded 16kB of Video Display Processor (VDP) RAM to the TI99/4A's graphics coprocessor, a TMS9918A. The VDP RAM was DRAM, with the VDP handling refresh. This is expandable to 192kB with the use of a Yamaha V9938 as a user-designed modification (not a standard upgrade option).
VDP RAM is also used for storing buffers for disk I/O, and variables and code for users' BASIC programs. Hence, the largest BASIC program possible is less than 16kB. BASIC is implemented on the TI-99 series using a second interpreted language called Graphics Programming Language (GPL). The GPL interpreter resides in the ROMs and takes control of the machine at power-up, and was very close to the native 9900 machine code, adding instructions to transparently access the different types of memory in the machine and perform higher level functions such as memory copy and formatted display. Users who install memory expansion still need to upgrade to the Extended BASIC cartridge to use it instead of VDP RAM.
The same VDP is used in the MSX and ColecoVision machines. Further upgrade chips, the 9938 and 9958, were produced by Yamaha based on TI's design. Boards were created that took advantage of these new chips to upgrade the graphics capabilities of the TI-99/4A. The 9938, the more common of the two upgrades, allow 512 × 424 pixels at 16 colours, or 256 × 424 at 256 colours. These upgrades are not a simple drop-in and replace; a small board including the replacement VDP and replacement VDP RAM (usually 128kB) is required. In addition, although the chips were largely software-compatible, certain bugs in the ROMs cause compatibility issues with the new chips. One board, the Mechatronic 80-column card featuring the 9938 require that the user press a button when entering TI BASIC.
Graphics Read-Only Memory
Graphics Read-Only Memory is another set of memory accessed a single byte at a time through a dedicated memory port, and were auto-incrementing read-only devices. (There is also support in the console for 'GRAM', simulators for which were created by third parties later.) The vast majority of TI cartridges (Disk Manager 2, Editor/Assembler, TI Writer, most games) use this system, as does the console's TI-BASIC. Swapping the TI-BASIC GROM with a GROM removed from a favorite cartridge is a popular modification, as is installing several GROMs into one cartridge allowing a "multicart", with all included GROMs being available in the boot menu.
Since the standard machine does not allow third party machine language support, programmers found their markets decidedly limited to those users who actually added more RAM to their systems. This limitation was alleviated as the price of 32 kB expansion card and a 4 kB "Mini Memory" module eventually came down, but by then the market had moved over to other computers.
Some sophisticated cartridges (for example Parsec, Alpiner, TI LOGO, TI Extended BASIC) include memory-addressable ROM which was available for machine code, primarily for games or applications which demand the speed of machine code. None of this memory is available to the user. In general, ROM-equipped cartridges may be identified by having 28-pin ICs on the board, while the GROM ICs have 14 pins. A small number of cartridges also include a small amount of RAM (notably those games produced for the Milton Bradley MBX expansion system).
Tigervision developed a unique solution to the memory limitation of the standard cartridge slot; a 24kB cartridge that attached to the side expansion interface, emulating an expansion device. This allowed the company to implement a larger game completely in machine code. Tigervision cartridges using the expansion port include Espial and Miner 2049er. A third cartridge, Sprinter, is listed in its 1984 catalog but was not released. Exceltec also released two similar side cartridges, Arcturus and Killer Caterpillar.
Because of the speed bottlenecks (16-to-8-bit bus multiplexer) and the doubly interpreted BASIC, the TI-99 series gained a reputation for being quirky and eccentric, which endeared it to some and maddened others. Many people who had only experienced TI BASIC also considered it very slow, although assembly programs actually manage fairly good speed despite the hardware issues to overcome.
Games
Developers created about 100 99/4A games, most published by Texas Instruments. Some of the most popular were Parsec, TI Invaders, Munch Man, Alpiner, Tombstone City: 21st Century, Hunt The Wumpus, The Attack and Car Wars.
Many TI-developed video games, especially those developed by John Phillips, may be forced into "cheat mode" by holding the shift key and pressing 838. Terse messages often appear, which may allow the user to move to a different round of the game. In Munch Man, the top screen and top round includes invisible Hoonos ("ghosts" in this Pac-Man derivative) which travel several times faster than Munch Man. In Alpiner, the player can select which mountain to climb. 838 (with or without SHIFT) in Star Trek gives a random but high level of torpedoes, shields, and warp-drive energy.
InfoWorld criticized the computer's game library as mediocre. TI discouraged third-party development for the 99/4A, including games, but did not license popular arcade games like Zaxxon or Frogger. The company actively promoted the TI-99/4A in educational use (as opposed to Atari and Commodore's emphasis on arcade-game action) and learning programs for children comprised a large portion of its software library. But as the Apple II already had a major foothold in schools, in USA, and was an open architecture that anyone could easily develop for, TI failed to make an impact there.
Below is a link to some gameplay footage of the TI-99/4A and a few pictures of the unit itself along with some game cartridges.
Texas Instruments Inc. (TI) is an American technology company that designs and manufactures semiconductors and various integrated circuits, which it sells to electronics designers and manufacturers globally. Headquartered in Dallas, Texas, United States, TI is one of the top ten semiconductor companies worldwide, based on sales volume. Texas Instruments's focus is on developing analog chips and embedded processors, which accounts for more than 80% of their revenue. TI also produces TI digital light processing (DLP) technology and education technology products including calculators, microcontrollers and multi-core processors. To date, TI has more than 43,000 patents worldwide.
Texas Instruments emerged in 1951 after a reorganization of Geophysical Service Incorporated, a company founded in 1930 that manufactured equipment for use in the seismic industry, as well as defense electronics. TI produced the world's first commercial silicon transistor in 1954, and designed and manufactured the first transistor radio in 1954. Jack Kilby invented the integrated circuit in 1958 while working at TI's Central Research Labs. TI also invented the hand-held calculator in 1967, and introduced the first single-chip microcontroller (MCU) in 1970, which combined all the elements of computing onto one piece of silicon.
In 1987, TI invented the digital light processing device (also known as the DLP chip), which serves as the foundation for the company's award-winning DLP technology and DLP Cinema. In 1990, TI came out with the popular TI-81 calculator which made them a leader in the graphing calculator industry. In 1997, its defense business was sold to Raytheon, which allowed TI to strengthen its focus on digital solutions. After the acquisition of National Semiconductor in 2011, the company had a combined portfolio of nearly 45,000 analog products and customer design tools, making it the world's largest maker of analog technology components.
TI-99/4A
The Texas Instruments TI-99/4A is a home computer, released June 1981 in the United States at a price of $525 ($1,400 adjusted for inflation). It is an enhanced version of the less successful TI-99/4 model, which was released in late 1979 at a price of $1,150 ($3,900 adjusted for inflation). Both models include support for sprites and multi-channel sound, some of the first home computers to include such custom hardware, alongside the Atari 8-bit family also introduced in 1979.
Features
The TI-99/4 has a calculator-style chiclet keyboard and a character set that lacked lowercase text. The TI-99/4A added an additional graphics mode, "lowercase" characters consisting of small capitals, and a full-travel keyboard. Both use 16-bit processors, making the TI-99/4 series the first 16-bit home computers.
The TI-99/4A's CPU, motherboard, and ROM cartridge ("Solid State Software") slot are built into the keyboard. The power regulator board is housed below and in front of the cartridge slot under the sloped area to the right of the keyboard. This area gets very hot so users commonly refer to it as the "coffee cup warmer". The external power supply, which was different according to the country of sale, is a step-down transformer.
Available peripherals included a 5¼" floppy disk drive and controller, an RS-232 card comprising two serial ports and one parallel port, a P-code card for Pascal support, a thermal printer, an acoustic coupler, a tape drive using standard audio cassettes as media, and a 32 KB memory expansion card. The TI-99/4 was sold with both the computer and a monitor (a modified 13" Zenith color TV) as Texas Instruments could not get its RF modulator approved by the U.S. Federal Communications Commission in time. The TI-99/4A did ship with an RF modulator.
In the early 1980s, TI was known as a pioneer in speech synthesis, and a highly popular plug-in speech synthesizer module was available for the TI-99/4 and 4A. Speech synthesizers were offered free with the purchase of a number of cartridges and were used by many TI-written video games (notable titles offered with speech during this promotion were Alpiner and Parsec). The synthesizer uses a variant of linear predictive coding and has a small in-built vocabulary. The original intent was to release small cartridges that plugged directly into the synthesizer unit, which would increase the device's built in vocabulary. However, the success of software text-to-speech in the Terminal Emulator II cartridge cancelled that plan. In many games (mostly those produced by TI), the speech synthesizer has relatively realistic voices. For example, Alpiner's speech includes male and female voices and can be quite sarcastic when the player made a bad move.
The TI-99/4's original expansion concept was that peripherals would be connected serially to the console and each other, in a "daisy-chain" fashion. The "sidecar" expansion units can be connected together in a continuing chain, but can rapidly occupy an entire desktop and cause crashes and lockups due to the large numbers of connectors on the system bus.
This original idea was soon replaced by a system based on expansion cards. Encased in silver plastic but made from sheet steel, these plug into the bulky "Peripheral Expansion System" (usually known among TI owners as the Peripheral Expansion Box or "PEB"), an eight slot chassis, containing its own linear power supply and a full-height 5¼" floppy bay. Each card also has its own "access light", an LED which would blink or flicker when the card was being used by software. As on the earlier S-100 bus, the section of the power supply that power the card slots is unregulated. Each card has on-board regulators for its own requirements, thus reducing power consumption on a partially loaded PEB and allowing for future expansion cards which might have unusual voltage requirements.
The PEB also carries an analog sound input on the expansion bus. This allows the TI Speech Synthesizer's audio to be carried through the console to the monitor. The audio is also carried through the ribbon cable ("firehose", as TI users often call it) to the Peripheral Expansion System, both allowing the relocation of the Speech Synthesizer to the Expansion box and allowing for the possibility of audio cards offering more features than the console's built-in sound. No "official" cards from Texas Instruments ever made use of this line.
Early models (the TI-99/4, identified by its keyboard and "(C)1979 TEXAS INSTRUMENTS" on the title page) includes a built-in equation calculator, but in the 99/4A ("(C)1981 TEXAS INSTRUMENTS") this feature was discontinued. All consoles includes TI BASIC, a strict ANSI-compliant BASIC programming language interpreter which is largely incompatible with the more popular, and frequently imitated, Microsoft BASIC. Later consoles, identified by "(C)1983 TEXAS INSTRUMENTS V2.2" on the title page, also remove the ability for the system to execute unlicensed ROM-based cartridges, locking out third-party manufacturers such as Atarisoft.
The system has a joystick port that supports two digital joysticks, which TI referred to as "wired remote controllers". The two joysticks are connected through a single nine pin DE-9 port which is identical with those used for Atari 2600 joysticks but with incompatible pins. Aftermarket adapters were available which allow the use of two Atari-compatible joysticks. The computer supports saving to, and loading from, two cassette drives through a dedicated port. Composite video and audio are output through another port on NTSC-based machines, and combine through an external RF modulator for use with a television. PAL-based machines output a more complex YUV signal which is also modulated to UHF externally.
First personal computer with a 16-bit processor
The TI-99/4 series holds the distinction of being the first 16-bit personal computer. The TI-99/4A has a 16-bit TMS9900 CPU running at 3.0 MHz. The TMS9900 was based on TI's range of TI-990 mini computers.
Only the Program Counter, Status Register, and Workspace Pointer registers are on the chip; all work registers are kept in RAM at an address indicated by the Workspace Pointer. 16 registers are available at any given time, and a context switch instruction which changed to another workspace automatically allows fast context switches compared to other processors which may have had to store and restore the registers. For CPU RAM, the machine has only 256 bytes of "scratchpad" memory to support the storage of workspaces. This memory is placed directly on the 16-bit bus with zero wait states, making it much faster than any other memory available to the system.
Although the CPU is a full 16-bit processor, only the system ROMs and 256 bytes of scratchpad RAM is available on the 16-bit bus. All other memory and peripherals are connected to the CPU through a 16-to-8-bit multiplexer, requiring twice the cycles for any access and introducing an additional 4-cycle wait state. (This is reportedly due to the failure of a new 8-bit processor being designed by TI for this system, while the 9900 processor was already in production and proven.) A popular user modification in later years involves "piggybacking" static RAM chips onto the console's 16-bit ROM chips, allowing a standard 32kB RAM expansion without the wait state and approximately a 30% speed increase for many applications. Applications previously running entirely in 8-bit RAM (both code and registers) can speed up by a factor of two. Most hardware is based on the system clock, not the program execution speed, and the hardware access still runs through the 8-bit bus with the wait states intact, so this particular modification does not affect any peripherals.
By decoding some unused I/O-bits in the console, it is also possible to use the full address range of 64 kB RAM in the machine, by overlaying other memory and/or ports, under I/O (CRU) control. By doing so the console ROM can be copied into RAM, and thus things like interrupt vectors and such could be modified. However, such modifications are not frequent enough to make anyone but the particular modifier himself write any software to use it.
The video display processor in the 99/4 is a TMS9918. It lacks a bitmap mode, which was added in the 99/4A. The VDP in the American 99/4A is the TMS9918A (which gives the machine the A in its name). In the European PAL consoles this is replaced with the TMS9929A which also powered MSX machines.
A unique feature of these VDP chips is that they contained hardware support for superimposing on-screen graphics over other video signals. Although TI announced a peripheral card called the Video Controller Card which allowed the control of select laserdisc players, which could switch between the TI's display and the laserdisc player, the genlock capability of the 9918 is disabled in the design of the 99/4A and requires hardware modifications to use.
All accesses to the VDP system are executed 8 bits at a time. Although this affects performance, it made it easier to upgrade the VDP when newer, relatively compatible chips were released by Yamaha. Peripherals from Mechatronics, and Michael Becker, simply called "80-column cards" include the Yamaha V9938 VDP which gives the 99/4A a top resolution of 512×424 in 16 colours or 256×424 in 256 colors. This also increases the VDP memory from 16K to a maximum of 192K, although only software explicitly written for the 9938 take advantage of it.
The unusual architecture of the 99/4 series is documented to be due to the failure of the 9985, an 8-bit processor which was being created specifically for the machine. When it was abandoned, the 16-bit 9900 was selected to replace it, and a great deal of "glue logic" had to be added to fit the processor into the existing design, while no changes were made to take advantage of the 9900's strengths.
"Plug and play" hardware support
All TI-99 models, from the earliest TI-99/4 to the unreleased TI-99/2 and TI-99/8, include plug and play support for all peripherals. Device drivers (called "Device Service Routines", or DSRs) are built into ROMs in the hardware; when a new card was inserted, it is immediately available for any software which needed or wanted to use it. All device access utilize a generic file-based I/O mechanism, allowing new devices to be added without updating software to use it. The Communications Register Unit (CRU) can address 4096 devices; however, each TI card runs at a hard-wired address on the CRU bus, and so multiple cards of the same type cannot be supported without modification. The only official card known to be modifiable is the RS-232 card, which supports two different base addresses. This allows the system to support four RS-232 ports and two parallel printer ports. Four-line BBSes were being run, using properly jumpered serial cards, on TI-99/4A systems as recently as the mid-1990s. Most hobbyist-created cards released after TI's exit from the personal computer business include switches to set the base CRU address.
The HexBus Interface was designed in 1982 and intended for commercial release in late 1983. It connects the console to peripherals via a high-speed serial link. Though it is prototypical to today's USB (plug and play, hot-swappable, etc.), it was never released, with only a small number of prototypes appearing in collector hands after TI pulled out of the market. Several HexBus peripherals were planned or produced. A WaferTape drive never made it past the prototype stage due to reliability issues with the tapes. The 5.25-inch floppy drive also never made it past the prototype stage, even though it worked. Prototype DSDD disk controllers and Video controllers were also made. A four-color printer-plotter, a 300-baud modem, RS-232 interface, an 80-column thermal/ink printer, and a 2.8" "Quick Disk" drive were the only peripherals released in quantity, mostly for use with the Compact Computer 40 (CC-40). All HexBus peripherals can be used with a TI-99/4A when connected through the HexBus Interface, through direct connection to the TI-99/8, or through direct connection to the CC-40.
CPU RAM and Scratchpad
The TI minicomputer-inspired architecture of the TMS9900 series means that the "Workspace" of registers currently in use are stored in main memory. Because static RAM was also very expensive in the early 80s, TI only gave the machines 256 bytes of fast "scratch pad" RAM where register workspaces could be stored.
The original design for the intended CPU had this 256 bytes internal to the CPU itself, but the 9900 requires registers to be in external memory. Placing this small amount of memory on the 16-bit bus nevertheless helps the performance of the machine (as compared to having registers in 8-bit RAM with a 4-cycle penalty for every access). Some programs, such as Parsec, copied short loops of code to this memory to take advantage of the performance.
The sidecar and PE box expansion systems makes possible an official 32kB RAM expansion. This is not available to all uses – for example an Extended Basic program was restricted to using 24kB with the remaining 8kB available for machine code routines.
Third parties provided replacement memory cards for the PEB. For example, Myarc produced 192kB and 512kB cards. The memory provided by the Myarc cards can be partitioned for use as regular CPU RAM, a RAM disk and a printer buffer.
The Mini Memory plug-in module also contains 4kB of RAM that can be used as a persistent RAM disk (it contained a button cell) or to load a machine-code program.
It is also possible to add an 8kB "supercart" or 32kB "superspace" cartridge via the cartridge slot, which also included the Editor/Assembler GROM. This uses the cartridge ROM space.
VDP RAM and GPL
Texas Instruments engineers afforded 16kB of Video Display Processor (VDP) RAM to the TI99/4A's graphics coprocessor, a TMS9918A. The VDP RAM was DRAM, with the VDP handling refresh. This is expandable to 192kB with the use of a Yamaha V9938 as a user-designed modification (not a standard upgrade option).
VDP RAM is also used for storing buffers for disk I/O, and variables and code for users' BASIC programs. Hence, the largest BASIC program possible is less than 16kB. BASIC is implemented on the TI-99 series using a second interpreted language called Graphics Programming Language (GPL). The GPL interpreter resides in the ROMs and takes control of the machine at power-up, and was very close to the native 9900 machine code, adding instructions to transparently access the different types of memory in the machine and perform higher level functions such as memory copy and formatted display. Users who install memory expansion still need to upgrade to the Extended BASIC cartridge to use it instead of VDP RAM.
The same VDP is used in the MSX and ColecoVision machines. Further upgrade chips, the 9938 and 9958, were produced by Yamaha based on TI's design. Boards were created that took advantage of these new chips to upgrade the graphics capabilities of the TI-99/4A. The 9938, the more common of the two upgrades, allow 512 × 424 pixels at 16 colours, or 256 × 424 at 256 colours. These upgrades are not a simple drop-in and replace; a small board including the replacement VDP and replacement VDP RAM (usually 128kB) is required. In addition, although the chips were largely software-compatible, certain bugs in the ROMs cause compatibility issues with the new chips. One board, the Mechatronic 80-column card featuring the 9938 require that the user press a button when entering TI BASIC.
Graphics Read-Only Memory
Graphics Read-Only Memory is another set of memory accessed a single byte at a time through a dedicated memory port, and were auto-incrementing read-only devices. (There is also support in the console for 'GRAM', simulators for which were created by third parties later.) The vast majority of TI cartridges (Disk Manager 2, Editor/Assembler, TI Writer, most games) use this system, as does the console's TI-BASIC. Swapping the TI-BASIC GROM with a GROM removed from a favorite cartridge is a popular modification, as is installing several GROMs into one cartridge allowing a "multicart", with all included GROMs being available in the boot menu.
Since the standard machine does not allow third party machine language support, programmers found their markets decidedly limited to those users who actually added more RAM to their systems. This limitation was alleviated as the price of 32 kB expansion card and a 4 kB "Mini Memory" module eventually came down, but by then the market had moved over to other computers.
Some sophisticated cartridges (for example Parsec, Alpiner, TI LOGO, TI Extended BASIC) include memory-addressable ROM which was available for machine code, primarily for games or applications which demand the speed of machine code. None of this memory is available to the user. In general, ROM-equipped cartridges may be identified by having 28-pin ICs on the board, while the GROM ICs have 14 pins. A small number of cartridges also include a small amount of RAM (notably those games produced for the Milton Bradley MBX expansion system).
Tigervision developed a unique solution to the memory limitation of the standard cartridge slot; a 24kB cartridge that attached to the side expansion interface, emulating an expansion device. This allowed the company to implement a larger game completely in machine code. Tigervision cartridges using the expansion port include Espial and Miner 2049er. A third cartridge, Sprinter, is listed in its 1984 catalog but was not released. Exceltec also released two similar side cartridges, Arcturus and Killer Caterpillar.
Because of the speed bottlenecks (16-to-8-bit bus multiplexer) and the doubly interpreted BASIC, the TI-99 series gained a reputation for being quirky and eccentric, which endeared it to some and maddened others. Many people who had only experienced TI BASIC also considered it very slow, although assembly programs actually manage fairly good speed despite the hardware issues to overcome.
Games
Developers created about 100 99/4A games, most published by Texas Instruments. Some of the most popular were Parsec, TI Invaders, Munch Man, Alpiner, Tombstone City: 21st Century, Hunt The Wumpus, The Attack and Car Wars.
Many TI-developed video games, especially those developed by John Phillips, may be forced into "cheat mode" by holding the shift key and pressing 838. Terse messages often appear, which may allow the user to move to a different round of the game. In Munch Man, the top screen and top round includes invisible Hoonos ("ghosts" in this Pac-Man derivative) which travel several times faster than Munch Man. In Alpiner, the player can select which mountain to climb. 838 (with or without SHIFT) in Star Trek gives a random but high level of torpedoes, shields, and warp-drive energy.
InfoWorld criticized the computer's game library as mediocre. TI discouraged third-party development for the 99/4A, including games, but did not license popular arcade games like Zaxxon or Frogger. The company actively promoted the TI-99/4A in educational use (as opposed to Atari and Commodore's emphasis on arcade-game action) and learning programs for children comprised a large portion of its software library. But as the Apple II already had a major foothold in schools, in USA, and was an open architecture that anyone could easily develop for, TI failed to make an impact there.
Below is a link to some gameplay footage of the TI-99/4A and a few pictures of the unit itself along with some game cartridges.