Texas Instruments isn’t the name you usually hear associated with the first microprocessor. But the TI TMX 1795 was an 8008 chip produced months before the 8008. It was never available commercially, though, so it has been largely forgotten by most people. But not [Ken Shirriff]. You can see a demo from 2015 of the device in the video below, too.
The reason the chips have the same architecture is they were built to replace the same large circuit board inside a Datapoint 2200 programmable terminal. These were big beasts that could be programmed in BASIC or PL/B.
Datapoint asked Intel to shrink the board to a chip due to heating problems — but after delays, they instead replaced the power supply and lost interest in the device. TI heard about the affair and wanted in on the deal. However, Datapoint was unimpressed. The chip didn’t tolerate voltage fluctuations very well, since they had replaced the power supply and had a new CPU design that was faster than the chip would be. They were also unimpressed with how much stuff you had to add to get a complete system.
So why did the Intel 8008 work out in the marketplace but the TI chip didn’t? After all, Datapoint decided not to use the 8008, also. But as [Ken] points out, the 8008 was much smaller than the TI chip and, thus, was more cost-effective to produce.
As usual, [Ken]’s posts are always interesting and enlightening. He’s looked at a lot of old computers. He’s even dug into old space hardware. Great stuff!
Interesting! Well…TI *does* claim to have had the first µP… (not this one)
I really thought it was going be the TMS9900, the CPU in the TI99/4:
https://spectrum.ieee.org/amp/the-inside-story-of-texas-instruments-biggest-blunder-the-tms9900-microprocessor-2650275703
me too – My intro to the TMS9900 was the Tektronix 7854 oscilloscope, which was an analog scope with a digitizer and waveform processing capabilities.
Uggg! The ole Branch and Load Workspace Pointer (BLWP or affectionately or not, called Bullwhip) was TI’s idea of a stack. Glad that died.
Just because you are happy that a design element/feature “died out” doesn’t mean the idea was a bad one.
In all likelihood it ceased to be a thing because software developers did not/could not make good use of such a feature. And unique designs can make porting software a real chore.
But that wouldn’t be an obscure CPU that even CPU history geeks like me have never heard of.
I personally loved the TMS 9900. The instruction set was developed for their minicomputer that they built for a large hotel chain. It was developed for efficient implementation in TTL which TI had pioneered long before. When rumors of an IBM PC came about TI tossed their hat in the ring by sticking the 990 minicomputer into a microprocessor. I liked it because with it’s four phase clock I could use the timings and other circuitry to generate video, implement software audio algorithms and all sorts of things. Was it a great processor? Not really, but I had a lot of fun with it and it controlled a lot of my 1980s robot projects.
If I recall, the 9900 had one feature that later turned into a liability. The registers resided in RAM and there was a “pointer to registers” more or less. When your CPU was running about about the same speed as your memory that was OK and had lots of advantages if you wanted to do things like context switch. But once memory became “slow” it was a definte liability. http://www.bitsavers.org/components/ti/TMS9900/TMS_9900_Microprocessor_Data_Manual_May76.pdf
I have programming experience with APL and PL/1(neither of which you ever hear of today) but had never heard of PL/B and had to look it up but there’s not a whole lot about it. I may check it out. I’ve been slow about adding newer languages, like Rust, to my repertoire but older languages are a breeze typically since they almost always follow the same structure as others of that time.
Pretty sure the people who buy our PL/I development environment and runtime server have heard of PL/I. :)
It’s not nearly as popular as COBOL, though.
(I’d never heard of PL/B before this either. There seem to be a bunch of PL* languages — Kildall’s PL/M and IBM’s PL.8 are other examples.)
The TNS9918 would have a more successful history.
https://spectrum.ieee.org/the-texas-instruments-994-worlds-first-16bit-computer
Thanks for that link. I missed that one for some reason. As detailed in some excellent YouTube analysis of it, the 99/4 was a bizarre design.
http://www.vintagecalculators.com/html/texas_instruments.html
Want to thank Hackaday et. al for linking to Ken Schirriff’s blog, and videos. That and CuriousMarc’s YouTube videos have given me a curiosity in electronics and circuits I never had before.
I had really forgotten how bad those early LCD displays were.
Thanks for reminding to never go there again!
The “X” was a giveaway. In the sixties there were articles about TI transistors with an “X”, you couldn’t count on them being around later (though I’m not sure if they were samples, or moved to another part number).
There was a 9900 single board computer, more a development board, from some small company. I remember a writeup in Kilobaud.
TI also had a single board computer. It was distinctive because the readout/keyboard was in a TI calculator case, which wss mounted on the board.
The 9900 came out in 1976, so TI had plans that predated the IBM PC. I don’t even think the TI99/4, out in 1979, was a reaction to it.
Heh, I misread the headline as “GPU” and thought I was going to read about the TMS34010/TMS34020 chips.
Highly coveted in their day and mostly only found in expensive systems.
When I was with IBM circa 1990, I wrote some code for a TMS34020-based display card. Pushed a bunch of X11 primitives down to it to speed up my ddx (“device-dependent X”) implementation for it. I don’t think it ever became a product, though. We also had a debugger for it, based on one originally developed to run under Windows that I ported to BSD. Decent chip for the time; I enjoyed working with it.
BASIC or PL/B? I didn’t know that. When I programmed for the Datapoint 2200 it was all assembler.
Datapoint had their own, interpreted language called Databus (from Datapoint + business) for single use of the computer, Datashare (for multiple users and programs running on the same 8-bit processor!), as well as COBOL, RPG, Fortran, and Basic languages. (“PL/B” was the name assigned to Databus language, as a published standard to also be implemented on other computers – like the IBM PC.)
Wow! I worked for Datapoint (hardware tech) back in the 1980s. I liked working on their equipment (but not the re-building hard drives part). They really had some creative freaks cranking out innovation for that time.