← Back to context

Comment by einr

10 hours ago

The whole thing seems like it was designed in a parallel universe, or at least it reeks of some kind of a sunk-cost-fallacy design-by-committee thing.

Supposedly what happened is that the system was originally designed to have either an 8-bit CPU, or a 16-bit CPU with an 8-bit bus (cf. 8086/8088) like TI's own TMS9985, but at some point it was decided that they should instead cram their full 16-bit TMS9900 minicomputer CPU (!) into the thing. This decision basically tanked the whole architecture.

It was too late/too expensive to redesign the 8-bit support chips to 16-bit counterparts so they had to make some really out there decisions like "talk to the graphics chip and give it an address to read/write every time you want to use memory" and "software is written not in machine code, but in GPL (Graphic Programming Language), which is then interpreted by the CPU and turned into actual TMS9900 machine code"

Software on ROM cartridge for the system is stored in GPL and is fetched from ROM by the CPU (but wait! The ROMs are not in memory space like they would be on a sane computer; they are SERIAL ROMs read 16 bits at a time with memory mapped I/O) and interpreted to machine code. This is slow. When you write your own software in BASIC, however, this gets worse: now you're writing BASIC, which is being interpreted and turned into GPL, stored in video RAM, and then fetched back from video RAM and turned into machine code by the CPU. THIS IS EVEN SLOWER.

Needless to say, the BASIC on the TI99 is dramatically slower than the already slow implementations on other contemporary micros.

It DOES have a full 16-bit CPU which is theoretically much more powerful than a 6502 or Z80 but this wild-ass implementation of... well, everything, makes the system probably the least capable machine of the era.

The design "decisions" are easy to explain. The 9985 failed. They had a development prototype with a 9900 emulating the expected CPU. The 9918 VDP was the cheapest way to add 4K later 16K of DRAM. And that was what they shipped after the 9985 was killed.

------------------------------

From 1977 they expected a 9985 to succceed the cheap 40-pin 9981, both having an 8-bit external bus (1). It would have 256 bytes of RAM onboard. I speculate it would have the 9900 microcode optimizations seen in the military SBP9989.

Anecdotally, the 9985 failed seven tape-outs. It was killed. The Bedford UK team was tasked with starting over: eventually this produced the 9995.

But the Home Computer had been prototyped using a 9900 board. So that was forced into the 99/4 (not A) with some external 256 byte SRAM.

Memory was expensive. The 9918 VDP, made by a team in 1975 with junior engineer Karl Guttag, was the cheapest way to interface 4Ks DRAM which TI made and sold to itself. By the time it reached market, 16k in 8x 4116s was optimal.

Various efforts to cost-reduce and upgrade the 99/4A ran into the '82 price-war with Commodore.

Every design iteration that added more RAM (2 or 8 or 16K directly accessible from the CPU) was "paid for" by reducing the cost elsewhere (PALs for instance.) BOM was around $105. [3]

But in the price war, engineers were told to deploy the cost-savings without any new features: this was the 99/4A 2.2 or QI for quality improved. [3] The 99/4A was already a loss leader by Q4 1982 [5].

In 1981, Karl Guttag's new 9995 passed first silicon [2]. It used the new optimized 99000 CPU core which also famously passed on first tape-out. The 9995 was available in quantity in 1982 [3] when new consoles were started around it: 99/2, 99/8.

The 99/2 was supposed to be cheap enough to compete with Sinclair. [6]

The 99/8 was a technical beast for the high-end, having 64K of directly accessible RAM. Its fancy memory mapper drove 24 bit external addresses. It supported 512K off board, which the P-Box had been designed for. It had Pascal built-in. Yet there was no Advanced VDP for it: stuck with the same 9918A.

In early 1983, TI assembled a team of two dozen engineers to write software for it: Pascal applications, new LOGO, a database, new word processor, TI FORTH, and complete accounting package, and a rumored superior easy-to-use interface. Pascal was supposed to deliver many benefits. It would be a small business machine. (4)

Of course, in November 1983, all efforts ceased as Home Computer was cancelled--just as the consoles were to be unveiled at Winter CES.

-----------

(1) An 8-bit bus was always going to be optimal--even the IBM PC 8088 saw that. 16-bit peripheral chips were never going to be made: the package size would prohibit that.

(2) Electronics Magazine and EE Times articles

(3) Internal memos of Don Bynum, program manager

(4) TI Records, DeGolyer Library, SMU : Armadillo and Pegasus

(5) "Death of a Computer", Texas Monthly, end of 1983?

(6) BYTE Magazine June 1982-ish

Based on research for my book: _Legacy: the TI Home Computer_.

From memory...

RAM was very expensive then and 16 bit CPUs weren't that much faster to justify the cost if you were aiming for the home market.

Then again, what was this machine's target market?

  • RAM was very expensive then and 16 bit CPUs weren't that much faster to justify the cost if you were aiming for the home market.

    Both true, which makes this an even more baffling choice -- why pick the more expensive, state of the art 16-bit CPU* that you're getting little or no benefit from + 16K of extremely slow-to-access combined video and system RAM? You could have used a cheaper 8-bit CPU and maybe for the same budget have fit 4K or 8K of system RAM on the bus + some amount of dedicated video RAM for the VDP. This would have been faster and more useful in nearly all real world applications, make for a much cleaner board design, easier development, and probably cheaper. That's what everyone else did.

    Then again, what was this machine's target market?

    Home computing, so yeah.

    http://www.vintagecomputing.com/wp-content/images/retroscan/...

    * The reason is probably that TI wanted to show off their state-of-the-art CPU tech and be able to point to the spec sheet and say "look, it's 16 bit! All our competitors are only 8 bits -- that's half as many bits!"