TRS-80 Model 16 Nostalgia
I grew up with a TRS-80 Model I with Level 2 Basic and a TRS-80 Model 16 with 128K of RAM that were our first computers in the house prior to me getting my first computer, a Commodore 128. There was a book about Level 2 Basic that came with the TRS-80 Model I that was (as far as I know) a giveaway, but I never saw the TRS-80 Model I running except when it was in my grandmother’s house in Old Louisville on the 3rd floor when my dad’s younger brothers were playing around with a simple number guessing game program.
One thing that intrigued me about the TRS-80 Model I was its very simple graphics commands, SET
and RESET
which operated on a 48×128 (row x column) graphics grid as well as PEEK
and POKE
commands which could address a 2×3 grid of those same graphics grid points, but on the 16×64 character grid.
BASICG? What is this
I played around with the Model 16 and its 8″ disks and BASIC in there, but it wasn’t until I stumbled on PDF documentation for the Tandy TRS-80 model II that I discovered that the business computers (Model-II / Model-12 / Model-16) actually supported graphics at all. Looking at the Model_2_Computer_Graphics_26-4104.pdf scanned reference, it turns out BASICG
(must be all uppercase in TRS-DOS) is the way to load the BASIC graphics interpreter.
I’m not sure if the TRS-DOS disks that came with the Model 16 my dad had had this interpreter, but the trs80gp emulator includes BASICG on the default boot disk for Model 16 mode:

(It wasn’t until after the TRS-80 Model 16 was gone that I learned about the DIR command via using MS-DOS, but that would have been helpful for digging in more… Ironically, my Commodore 128 supported a DIRECTORY
command, so … SO CLOSE BUT SO FAR)
The TRS-80 Model 16 screen is 640×240 (x,y) addressable monochrome pixels. Unlike the Model I with Level 2 BASIC, BASICG has some more advanced commands… LINE
, CIRCLE
, PAINT
… also GET
to read the contents of the screen and that can later be PUT
.
Interestingly enough, although the CIRCLE
documentation say that the third argument is “r”/radius

actual usage in the emulator appears to behave like the argument is a diameter instead:

I’m definitely looking for more resources on the Model 16, so if you have background, manuals, etc., email me at thomas at thisdomain.