Ah, the TI99/4A. My almost first computer. Turns out my mom had bought me one (this was no mean feat as we did not have a lot of money) and then, I read somewhere that the architecture was closed and that this platform was doomed to failure, so I decided I wanted an Atari instead. I never knew this until years later, but she returned the TI and wound up with metric ton of S&H Green Stamps, and we pitched in and got me my Atari 400 (with the membrane keyboard and Attract mode :)
I still think I made the right choice, but the TI was still a great machine!
Fun fact, the TI 99/4 and 99/4A both had 16-bit CPUs, making them the first 16-bit home computers around by several years.
The architecture was terrible, though.
I don’t really have any sense of the architecture at all. I understand the Atari 8 bit innards pretty well, at least from a functional perspective.
Looking at this I think I made the right choice. The graphics specs alone weren’t amazing even for the time.
Although, looking at the VDP page, the sprite architecture was nicer than Atari’s. In the Atari universe if you wanted to move your spite (player / missile) horizontally, you could just change a byte value in a memory address, but if you wanted vertical movement, you had to actually move the object’s bytes through video memory.
So, score one for TI I guess :)
Yeah, that diagram brings me back.
I guess I should amend myself: “terrible” isn’t very descriptive. It was vastly more complex than any other home computer out there. And it was saddled with some decisions that are just hard to justify.
For example, the whole GPL thing. They have a 16-bit CPU, so you’d think you could write 16-bit assembly for it, and it would be cool, right? Nope, they have an 8-bit assembly called “GPL” which runs through an interpreter in the ROM. Your game cartridges were written in GPL, so they sometimes exhibited … a leisurely pace for the hardware spec. Your TI-BASIC programs were run through an interpreter which was itself written in GPL, so they were also not very fast.
Then you had the RAM. You could have plenty (for the time), but it came with some caveats. First, most of your CPU registers were actually stored in RAM. Second, the CPU could only access 256 bytes of RAM directly. Third, to get to the rest of the RAM, you had to go through an 8-bit bus, accessed through a 16-to-8 multiplexer. Fourth, you could, instead, use video RAM, which was on the CPU-side of the big multiplexer, but that was also 8-bit, and had to go through its own multiplexing.
So the RAM was slow, and all the programs were slow, and all of it for seemingly artificial reasons. But the hardware was all pretty high-grade – the sound system was pretty impressive, the display was impressive, the expansion system was simple and usable (if not entirely well-thought-out), and the CPU was far more powerful and faster than anything else on the market (even if you couldn’t really use it much).
Wow, those are some - “fascinating” architectural decisions. What do you think may have influenced them? Time to market? Ease of development?
(BTW this thread is a perfect example of why I love Lobste.rs and why you don’t get this kind of content anywhere else. Somebody posts about an oddball topic, somebody knows something, and great discussion and information sharing ensues!)
The explanation I always heard, though it may be apocryphal, is that they were planning on using a new 8-bit chip they were developing, but for some reason that didn’t pan out, so they decided to wedge in an existing 16-bit chip instead.
If that’s true, it doesn’t explain all their odd decisions, but it does explain quite a bit.