Why I love/hate the TI-99

20160710_191650

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.

Hardware.

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.

Software.

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

 

 

Advertisements

3 thoughts on “Why I love/hate the TI-99

  1. Very concise essay on the joys (and frustrations) of the TI-99/4a, Howie. Thank you especially for the final paragraph, which succinctly outlines better than anything else the reasons why this dumb-brilliant machine is like no other.

    I got rid of my original TI-99/4a (gave it to you, gave it to a charity, I really don’t remember which) about 30 years ago, and I began to regret giving it away (and especially my homemade software with it) about 10 years later. Now, I promise I’ll never get rid of my current setup, even if I never do completely teach myself assembly language or create some fantastic new homebrew game.

    I guess I’ve got a Love-LOVE-Hate relationship with this quirky little computer. Anyhoo, thanks, Howie; this is one of my favorite tech essays.

    Like

    1. Ya, when you said you got a PEB I thought, “Huh?” I never knew was such an TI-99 aficionado. Well, bully for you! I’m glad to see you taking up the mantle. I will always have a fond place in my heart for the TI-99/4a since it was my 1st. But, thinking like a programmer, as I do, I found I enjoy using the emulators and programming for the TI-99 without filling up my limited desk space with PEB and console. I’ve set aside several projects on the TI-99 that I plan to one day get back to one day though.
      Assembler; if you haven’t already, get one of the many ‘into to TMS9900’ assembler book that are floating around on ebay. Learn binary / hex math and how registers work and you are 80% of the way there. Then take a brick and smash everything you can remember about BASIC out of your brain, it will only get in the way. 🙂
      If you have a question about assembler, email me. I probably know the answer or know someone who does.

      Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s