The TI-99/4a was my very first computer. When I was just a wee lad my dad brought home a TI-99/4a he got cheap from the TI store in Dallas as a, um, perk, of his company doing work with TI . I immediately took to it like a digitized duck to digitized water. I wrote BASIC, ExBASIC and MiniMem assembler program after program. It changed my life as I decided to take programming in college and get a degree.
But it didn’t take long till I hit upon the limits of the TI-99 line and this is what eventually made me to move over to the Atari 8-bit line.
Why oh why did TI do what it did?
Example, a unnecessarily cramped keyboard. This problem was particularly irritating in that the TI-99 wasted over 1/4 of the console with the cartridge. How hard would it been for them to angle up the cartridge and used that area for more keyboard?
Memory. The TI-99/4a came with only 16k of memory. Well that isn’t true. It came with 256 bytes of scratch pad memory directly accessible from the processor. The 16k was video memory separate from the main memory. Adding more main memory meant buying and expensive PE box (loaded, $1000+ at the time). Or some sidecar 3rd party (which is the route I went). And this was in the day of the Commodore 64 and the 800XL which CAME with 64k memory.
And since the default RAM was all in the VRAM, ExBASIC had to use that for storing it’s tables, code and everything else. Even if you added the extended console main memory ExBASIC still stored its tables in VRAM. This had the effect of not allowing the ExBASIC user to access some of the higher video capabilities of the TMS9918a. It frustrated me to no end that the high res modes were never natively available. I could never create the fancy graphics like could be seen on the C64, Atari 8-bit and even the Apple II.
A sixteen bit machine or an eight? Reality was that the TI-99 was an eight bit machine. Yes it had a 16bit processor but it was tied to an 8bit data port which slowed it down. The only real 16bit memory was the 256 bits of scratch pad used by the processor.
The tape drive I did like. It was nice to use a standard tape drive to save your files. But, the time came (as in everyone’s life) I needed to use random access files (I made a game my friends and I played that could really used random access files). Of course Random access file meant you had to buy a disk drive which meant, ta da, buying the PEBox at $1000+.
The whole PEBox issue was that the TI-99 had no accessory access built in. Need a modem or printer buy a PEBox 1st. Disk drive; PEBox. Just adding the frackin’ memory that should had come with the computer; PEBox. And all this was really expensive. At the time I found I could buy a 800XL with 64k + disk drive for just what a PEBox empty cost. No drives, no extended memory just a useless empty box for almost $500.
I won’t even mention a whole built in programming language GROM (did I just mention it?). GROM was a second layer of interpretative language. It had its good and its bad. Good, it was a fast, as imperative languages go. It was also a simple path for hardware programmers to program in to develop games. Bad, it wasn’t even accessible to the average user. I would have loved to program some in GROM but the cost of the PEBOX + GRAM kracker was way beyond my budget (even now, that is if you can even find a GRAM kracker). It also slowed BASIC down a lot, a whole lot.
Which is why I got rid of my TI-99/4a then and now. Too frustrating.
On the other hand, using an emulator is a pure joy. All the memory, accessorizes and software available at your hands with no cramped keyboard, huge expensive PEBox or limitations enforced by the hardware. Thank you classic99, MESS and all the other emulators out there.
I have always loved the software on the TI-99. The games were, meh, but ExBASIC to this day is still my favorite BASIC of the era. I could crank out games with sprites that only C64 BASIC programmers could dream of. On top of that it was well structured while still being flexible (even with its limitations).
Assembler for the TI-99 is an experience. The good of it is that TI-99 went to lengths to publish a lot of data on programming the TI-99 in assembler. Even though the data published for the Atari line and the Apple II line is extensive, I just don’t get the feel of completeness (from the manufacturer) that the documentation TI produced for the TI-99. It made learning assembler on the crappy mini-mem much easier.
Now something that doesn’t get a lot of love on the TI is C99. Clint Pulley’s C package is a very nice package. I have created some small stuff on it and have been pleasantly surprised. Several of the libraries add features that were not available to ExBASIC and were complicated in Assembler.
And, of course, the community. I have compiled over 10gb of software that has been previously written or is still being written by users to this day. One nice thing about the TI-99 is that it was popular for just long enough to get some well known games and software but wasn’t popular long enough that there is still lots of games that can still be written that haven’t already been done.
Well, there is my pointless rant about the TI-99/4a.
Ta, Field Mouse