TI-99/4A: Leaning More on the Firmware

https://news.ycombinator.com/rss Hits: 9
Summary

I kicked off last year with a look at the TI-99/4A home computer. I’d started out playing with BASIC and then moved on to translating some of those BASIC programs into machine language and its custom “Graphics Programming Language” bytecode to see how to approach more serious work. My final few BASIC programs ended in disaster, though, so I skipped those, and of course a handful of BASIC programs weren’t going to hit every facility the system offered either. When surveying the parts I’d missed, I still gave only cursory attention to some of those facilities. Much of the rest of my 2025 revolved around mastering the TI’s graphics chip as it appeared in other systems, and that expertise should let me return and have a better sense of what, exactly, I am looking at if I lean on the firmware’s capabilities. In particular, I want to look at its enhanced support for sound and sprites. This will mostly be done in the context of the Graphics Programming Language, both because I didn’t do much with that either last year and because many of the features are clearly designed to integrate with it. We still won’t precisely match the BASIC originals. Happily, that’s because this time, stuff will actually work. Where We Were Last year, we learned that TI-99/4A cartridges had two different blocks of memory in them; an ordinary part that mapped into 8KB at location >6000->7FFF (the ROM) and another part, that normally held Graphics Programming Language bytecode, mapped into a completely separate “Graphics ROM” address space from >6000->F7FF (the “GROM”). Which means, now that I return to the TI after an absence, that I’ll also need to reiterate a few of the weird caveats about the system: The tooling around the system uses > as a prefix to represent hexadecimal constants. My usual practice on this blog is to use $ for this, but I follow the system conventions when writing about the TI. “Graphics Programming Language” is usually abbreviated to “GPL” and the code written in it, in bot...

First seen: 2026-01-23 06:46

Last seen: 2026-01-23 14:47