My first home computer...
I still have a lot of fond memories, even though it ran like a bit of a dog and was useless without the Expanded Basic module.
The retro computing and gaming scene is seeing no shortage of interest these days. Old fans and curious millennials are flocking to take nostalgia trips on the popular consoles of the 1980s. While the likes of the ubiquitous NES, Atari 2600 and Apple II have all received attention, there are other, lesser-known machines that …
It was mine too.
The software was terrible. The BASIC lacked peek() and poke(), so getting down to the metal with the bare-bones model was not possible.
The CPU in the base unit had a TINY amount of RAM (less than 1k) - all the memory was tied to the TMS9918(a) video chip. This is where a user's BASIC program was stored, and the CPU would converse with the VDP to run the user's program. Wow, that was a terrible idea.
You could get a "Mini Memory" cartridge with a watch battery that gave you 4k of CPU ram, but it was laughable for development in assembler. There was a full Editor/Assembler cartridge, but you had to have a memory expansion and disk system before you could run it.
This machine required a very large pile of peripherals before it gave you any glimpse of how it actually worked.
When I read about the BBC Micro and the wonderful interpreter it bundled, I'm convinced that TI should never write an interpreter of any sort ever again.
Well, they were in a bit of a bind regarding PEEK and POKE, because the 9900 didn't use addresses as we know them. It was unique in microcomputer history in designating A0 as the MOST SIGNIFICANT address line (And D0 as the MSB on the data bus). This was presumably because it didn't have a least significant address (a real A0), having only a 15 bit address bus. Presumably there was a way to read or write a single byte, but I can't remember now. TI inexplicably started marking their EPROMs backward the same way - very confusing - and there must have been many bills of materials with a note saying "NO TI" whenever an EPROM was called out. I know it was on all my BOMs. It took them a couple of years to get the message.
A lot of my extended family worked at TI in Bedford (UK) and when they EOL'd the '99 staff were able to pick one up for chump change, so we got one through an uncle still working there. This was my upgrade from a ZX81.
An amazing bit of kit really, for the time and thanks to it's market failure a lot of add-ons could be picked up for pocket money. Cartridges were great for a quick bit of gaming at a time when for someone with a Speccy or a 64, you had to factor in the loading time, from tape. The '99 could load from tape as well, and some games still required that (Scott Adam's Adventures being a prime example). But those cartridges were great, and could add capabilities to the base machine to enable more advanced games (I seem to remember Parsec did something like that).
I also had a lot of fun with the speech synthesizer add-on module and a graphics tablet (!!) whilst the Extended BASIC cartridge provided a decent place to learn programming, compared to the rather idiosyncratic BASIC that was on-board otherwise.
e.g. Extended BASIC gave us advanced features such as sprites and .... PRINT AT.. Without that, printing strings to the screen was a rather tortuous affair involving GOSUB routines and FOR NEXT loops calling HCHAR() (don't ask).
And then there were the UDG's (User Defined Graphics for people who didn't grow up in the 80's - you might also need to look up "sprite" :) ). I learned hex as a result of memorising the bit patterns associated with the strings necessary to define 8x8 UDG blocks, e.g. your classic solid 8x8 circle/disc: 3C7EFFFFFFFF7E3C
Eventually I upgraded to an Amiga A500. :)
Aaaah, happy days.
The Commodore models supported cartridges as well - just they were usually more expensive than the (often pirated...) software on tape, and thereby far less common. I should still have a pirate adventure game cartridge somewhere. They were inserted in the rear expansion port.
What in creation is up with the TI-84 calculator? It's one of the ugliest, slowest, most retro pieces of computing power I've ever seen...yet all the kids textbooks use it and TI seem to have a lock on the market. As a Euro transplant to the US it blows my mind that people still make kids use them.
I have the same TI-89 that I (got my parents to) bought when I was in high school. Even for 1999 it had a slow, outdated processor; today it's absolutely stone-age compared to a modern smartphone.
Anyway, this overpriced clunky monopolized chunk of ugly black plastic, dim puke-grey screen and obscurely confusing interface, got me through two years of high school, 4 years of college, and 10 years of molecular genetics and it still works just as well right now where it is a permanent feature of my desk.
That's why people buy TI graphing calculators, aside from all the superficially horrible overpriced features they are in fact extremely useful general purpose mathematical tools.
There were two "camps" being TI-85 vs HP-48gx. You either understood & appreciated RPN and used the HP, or you hated it and used the TI.
I couldn't afford neither, and furthermore, both were prohibited from any exams because of the potential to sneak in exam data in their memories & graphical displays. One guy put in all the steel phase charts, for example...
So I picked up a Sharp EL-531Q and that was it. Cheapest they had at campus bookstore.
Works to this day, except I have to remove the caseback with a screwdriver in order to change the battery.
I did get an Atari Portfolio, which was cool because it utilized DOS commands. However it was sluggish & primitive and my landlord stole it, I think.
I'm getting me a Psion Gemini off Indiegogo! well, maybe :)
I have asked myself this question quite reacently, actually. I tripped over an Android App that *emulated* the TI-84...On My Way to an app that I'd used before, quite superrior in all ways. I was frankly baffled. A few days later, an eerie feeling crept over me in a coffee-house (not Starbucks) by the University in Seattle ... nearly all of the students has this calculator (did you know it comes in colors and stuff?...and you can get armored cases for it like handsets, which, frankly seems both expensive and counter-productive).
I looked it up and it seems to have *declined* in cost from when I was but a College Lad, it is still a sack of crap.
To the TI/99 though; I taught myself to program on that bad-boy (Extended BASIC Cart). While certainly not one of my favorite machines of all time, I *will* always love it.
How about also including RPN calculators like the HP-48C on the poll list? The only RPN left is the HP-12 which is a financial calculator, nowhere as geeky :(
My first "program" ever was a probability calculator for it, to give you the odds of various Advanced Squad Leader hit results - i.e. how likely is that Russian 4-4-7 to chew up my squad, given its -1 NCO and my open terrain move mod of -2?
> How about also including RPN calculators like the HP-48C on the poll list? The only RPN left is the HP-12 which is a financial calculator, nowhere as geeky :(
You need to visit swissmicros.com
If by "HP-48C" in your comment you meant HP-41C then they have an HP-41C clone (although the landscape format takes a bit of getting used to!). If you actually meant HP-48SX then wait 6 - 8 months - they have it in the pipeline but there's a 42S clone to come out first.
True. I think I like it for the apparent value that lower storage brings you over the generations of consumer hardware. If you were around when a 20 Mega Byte disk drive was as big as they came, and that only represented about 20 floppy discs, and it cost many hundreds of dollars, you can appreciate getting a nice WD 3TB drive for about US$100 that much more! The 20MB drive still works, but it makes an awful noise, and really my floppy archive has so much more in it. The oldest drive I can remember the price of was a Jasmine 100MB internal drive for a Mac SE with the special "third bay" mounting rack was about US$300. Nowadays that can buy 6 Raspberry Pi boards and have change left for SD cards and power cords. Value!!1!
Good on the TI-99 folks! Keeping old kit running is better than it being in a museum. Old hardware never dies, unless it dies, so take care of it!
The TI was essentially useless with the stock BASIC, it barely allowed you to do primitive text mode graphics. I also compared the speed to my ZX80 and it was many times slower.
Infact if you displayed the whole character set and redefinied characters, you could see the BASIC interpreter moving its data away from the space used by unused user defined characters.It had something like 128 words of RAM accessible to the processor, while its 16 kilobytes were all dedicated to the graphics chip... so every access had to go through the graphics chip. To make it even slower, the BASIC interpreter was itself interpreted.
Some accessories removed some of the problems. For example you could give the CPU some actual RAM apparently, but those things were completely unobtainable back then.
Yes, it had a 16 bit CPU, but they only gave it 256 bytes of 16 bit memory. All the rest was a nasty 8->16 bit multiplexed cludge. TI marketing didn't want it to compete with their lucrative mini computer market, so they deliberately made sure it couldn't.
Sorry AC, your nerd mode failed. It had a full TMS9900 @3MHz. TI had intended to use the TMS9995, but had problems with it. They did use the 9995 in the TI 99/2 and TI 99/8, but they never got beyond the prototype stage.
BTW, both chips were NMOS, so had the same hideous power requirements. The 9900 (and I presume the 9995) needed a complex 4 phase clock, which might be where you got the 12MHz number from.
@Steve Todd - I never knew it went back to the 9900 - all the early technical press referred to it using the 9995. The 9995 was designed to be cheaper by having a lower pin count - hence the multiplexed bus. I'm pretty sure that the 4 phase clock went as well. We used the 9900 where I worked, and looked at the 9995 as a possible cost saving but decided that the re-design was not worth it, I've also a vague recollection that the hardware integer divide was removed from the instruction set which was the USP for the 9900 in the first place. (memory may be clouded by the passage of 35+ years).
"TI marketing didn't want it to compete with their lucrative mini computer market, so they deliberately made sure it couldn't."
Hmm. That sounds familiar...
Is this a common pattern? The established vendor doesn't want the new technology to eat into their existing markets, so they are eaten (whole) for breakfast by upstart competitors who don't mind offering a product that eats into that market. (Moral: cannibalism is good because at least it is you doing the eating.)
The article was a great read. The TI community is one of the best I have been involved in and seems to have a lot of new development for hardware and software.
My favorite cartridge today is the FlashRom99.
And thank you for the mention in the article!
FuSiON BBS :
telnet to : fusionbbs.ddns.net
port # 9640
Speaking of kludges; was TI's idea of bit-order. In TI land, bits were numbered from 1 to 16, with the Least significant bit being bit 16 (for those that might not have been around during those years, today we call that bit 0).
I built an add-on board for one of my TRS-80 Model 1s that used the same TMS 9918 graphics controller found in said TI99/4A. What was really interesting about that graphics controller was that it used DRAM, when everyone else at the time was using much more expensive SRAM.
It was quite the brain warp to adjust to "their" way of thinking, but luckily their world view on bit ordering didn't hold in the end.
In low-level communications, bits are numbered in transmission order, and bytes are transmitted from most to least significant bits (as far as I can tell, only by convention). Put those two things together and the MSB is bit 0, because it is first one that gets put out onto the wire or broadcast into the aether. (This convention of transmitting bits from most to least significant is also why "network" byte order is Big-Endian).
CPU people went with LSB =#0 on the grounds that it made more mathematical sense - it matches the power-of-two value of that bit position.
"bytes are transmitted from most to least significant bits (as far as I can tell, only by convention)"
Possibly because if the same value were transmitted as text then it would naturally be transmitted big-endian and *that* is (allegedly) because the Europeans learned their arithmetic from the Arabs (who designed the system the other way but write right-to-left) but failed to swap the "byte-order" when copying the text books.
From memory, that actually depended on which version of which data sheet you read. A new circuit was being built at the first company I worked for, using aTI9900. At board bring up, the data bus was fount to be "the wrong way round". The PCB design team had a V1 data sheet with D0 as the MSB and created the library shape thus. The HW designer had a V2 data sheet with D0 as the LSB. I also recall that the programming manual had A16 as the MSB and a long philosophical discussion about A0 which didn't actually come out of the chip, but was replaced by a "byte selector".
I recall the Extended Basic was something of a must, but ate a couple of K of precious RAM. So you were caught between a rock and a hard place as your program wouldn't work in the standard mode, and wouldn't fit in the extended mode!
Parsec is still one of my favourite games.
They had one at the Cambridge Museum of Computing when I was there. I thoroughly recommend the place, they have lots of kit turned on and you can just play with it.
my 1st puta was a TI-99/4A .. I played parsec for months before finding out I could slow down the speed for refuelling :)
I loved the machine as it was the first thing I took apart, put back together and it still worked.
My 2nd machine was a BBC B, which shows my age !
I bought a TI99/4A (which was actually their second microcomputer). My wife would get upset because I'd hijack our tv and plug the unit into it. I finally got a splitter and left it connected all the time. I wrote a simple BASIC program for it that drove people nuts. It first asked a bit of a tough question, No matter how you answered, the program responded you were wrong and should try again. I had it programmed so that each time it's response was ruder and nastier. Finally after the fifth try the program responded the user was too dumb to use a computer and would shut down the machine.
..and the history of computing, especially microcomputers. While my first computer was a Commodore PET, I found a TI 99/4 in a thrift store some years back with a few cartridges. It was a little battered but sported the original box and accessories and worked perfectly. I played with it for a while and ended up ebaying it for $100. It was purchased by a guy across the country that taught grade schoolers and wanted to use it to teach them BASIC programming. I have little doubt that it's still running.
I still have that original PET too, along with an 8050 disk drive and printer. (and it all still works, though I haven't tried the printer in a long time) That and a few ancient 8-bit coin-op arcade games that are increasingly hard to keep running with entropy doing its thing.
The TI99/4A had been chosen by the Istituto Tecnologie Didattiche del National Research Council to introduce primary school children to programming in BASIC and especially LOGO. An Italian version of TI LOGO was created by Giovanni Lariccia with its Manual. Mondadori Publishing House printed an Italian version of Horacio C.Reggini "Alas para la mente" and "Artificial Intelligence An Introductory course" by the University of Edinburgh Press.Franco Muzzio Editore . published "A scuola con il Texas Instruments TI99/4A" by Sergio Borsani. Then Texas Instruments retired the machine and the whole project, presented by Milan State University professor Gianni degli Antoni, fell flat.
I have used the TI99/4A to introduce my kids, male and female, to programming but they used it mostly to play games, some of which I still have. I used it to simulate a moon landing.
One big development for the 99/4A which is cross-platform is Matthew's F18A, an FPGA replacement for the TMS-9918A, variants of which wound up in numerous other systems, like the MSX, ColecoVision, and more†. It gives the system SVGA output, new screen modes, multi-color sprites, has an option to eliminate the five-sprite-per-line limitation, and provides a fast implementation of the 9900 in the GPU (yes, the 99/4A can now be a multi-processor computer.)
There are a lot more expansions enabling better programming and gaming, and better portability, really showing the 99/4A as a capable peer of the better-known systems of its era, like the Commodore 64 and Atari 8-bits. A number of folks in the AtariAge forum‡ have Lotharek floppy emulators in the full-size PEB, or use the scaled-down nanoPEB which puts 32k, floppy emulation with a CF card, and an RS-232 interface on a small side-car module. Competent emulation like Classic99 and MAME can provide your gaming fix without the real machine as well as a super-fast development platform††.
Games abound including a monthly game contest where other members pony up TI-related prizes to the winners, loads of programming options like gcc, TurboForth, file-based fbForth, many options for assembly, a fantastic Extended BASIC compiler. Too much to really detail, you just have to see for yourself.
†† http://www.harmlesslion.com/software/Classic99 and http://www.mame.net
Now that is a joystick. And the trackball isn't bad either...
The TI-99/4A... I remember it well. Not a bad piece of kit, but never really got popular over here. In fact, the other nerds thought of you as an oddball if you had one of those. What really killed it was the lack of games availiable. Let's face it, we all told our parents that we needed that computer thingy "for school", and it had to have a proper keyboard for typing all that homework. Once the floppy disc drive for the C64 was availiabe (and could be paid for with the money from a summer job) every other system was dead in the water.
OK, so it's not a "real" computer..... but I cut my teenage programming teeth on a TI59.
It taught me how to think logically and optimise the use of limited resources. The amazing thing was it's portability..... I regularly used it in the field saving hours of tedious paper calculation, with corresponding increase in available pub time. It took until the early 2000's for my industry to routinely use a handheld device that could do what the TI59 could do in 1980.
In my youth I didn't understand why they didn't catch on...... but then again my university dept had just bought a load of Imperial Office Master mechanical calculators... the power of the smartly besuited salesman on the greyhaired senior manager never dims.
The TI-59 ... ahh, THAT was a calculator! I used one in my college years. Still have it. Although I use a Windows-based TI-59 emulator when I need a quick calculation or two.
Later on I bought a TI-99/4A and I was hooked. I LOVED that thing. Still have a number of them gathering dust in the garage.
One comment though: The TI-99/4A was one of only two REAL COMPUTERS to be released in the 1970's-1980's microcomputer boom. If you learned to program it in Assembly, as I did, it had a "floating workspace" which coexisted in the single linear memory space, which along with programs and data, also used memory locations for I/O. All addressed in the same manner as linear memory. This architecture is "classic" computer architecture. Only Texas Instruments and DEC released microcomputers like this.
All other micros used microprocessors, which have to move data from linear memory, to on-board registers, and then back out. This ham-strings their operation and makes them much, much slower. That was why the TI-99/4A ran acceptably fast enough, even with a horrendously slow clock rate. Of course, the sheer speed of microprocessors was so blindingly fast by the mid-1980's that it didn't matter about all the time needed to swap data in and out of on-board registers. Current speeds are so fast that nobody cares.
But "back in the day" it sure was nice to see that the TI-99/4A was using assembly language statements that could have come straight from mainframe computers. When the IBM PC first came out in 1981, a game released with it was Adventure. If memory serves me, way deep in the Wizard's cave are copies of LWPI magazine. That instruction, Load Workspace Pointer Immediate, is used in linear memory addressing. I could use it in TI-99/4A assembly. It DOES NOT exist in a microcontroller-based assembly language such as had to be used on the 8088-based IBM PC. That was proof to me that the Adventure game had been ported from a mainframe implementation.
I never really got into the Basic Interpreter for the TI-99/4A except for trying to invoke the speech synth. My friend had the TI, I had the BBC Model B. Once you used BBC Basic in anger, the rest of the Basic offerings from competing home computers of the era measured up pretty short by comparison. Using *LOAD to load a binary game, getting the memory addresses for *Save to write the binary out to cassette as a first generation copy. Good times for a 10 year old in the 80's!
Biting the hand that feeds IT © 1998–2019