This is going to read like one of those annoying-ass online recipes because I’m gonna write down some of my experiences with the TRS-80 before I start getting into what I’ve been doing to get it going again. However it is Father’s Day and this was my Dad’s computer so it’s kind of fitting.
After sitting in storage for 25+ years I finally brought home our old TRS-80 model 4 from Oklahoma. It probably hadn’t been turned on since the late 1990s. I didn’t want it for the longest time because the IBM PCs I built would run circles around it, I really didn’t have room for it, and plus I always flew back home so shipping it would be a pain. After I drove out to start cleaning out dad’s house, I brought it back to California to see if I could get it up and working again because retro/vintage computers are “in” now. Fortunately it was never abused in storage or sat outside, so I thought it had a decent chance at survival.
Way back in 1983 our first home computer was a TRS-80 model 3. I recently found the sales receipt for it, around $2500 for the computer, printer, some cables, around $7500 in 2023 dollars! At the time my family owned the natural gas company that provided gas to our small rural community with 100 or so customers. Dad wanted to use the computer to generate + print monthly bills for customers instead of doing it by hand. He was primarily a school teacher teaching business and not really a programmer, so he wound up taking night classes at college to write in BASIC, and gradually learning what he needed to do. I also recently found printouts of his class assignments, starting off with 10 line equivalents to Hello World and then adding in calculations and various outputs.
A printing company custom printed the tractor-fed postcards that were mailed out to customers. I remember the printing company had a cool ruler that had stencils for the tractor feed holes and line/character spacing of a dot matrix printer. You drew up exactly how you wanted the card to look, then made all the LPRINT
statements in your code line up with the fields on the printout. (This came in handy later when I wrote a basic 1040-EZ tax program that would fill out a 1040-EZ form for you!)
I wasn’t really interested in the billing program, it was hours of work to run the bills each month. There wasn’t any sort of data store, arrears, last month and the current month’s meter readings had to be input for every customer. Further, all of the customer names and addresses were hardcoded into the program! The program didn’t do much input sanity, and if you made a mistake it threw things off and was a hassle to fix. So after messing up bills, that relieved me of the responsibility of running it.
However we did dabble in other software. We had Visicalc, Superscripsit, and a few dozen games. Some were on cassette, others were on double-sided 5.25″ floppy disks. Superscriptsit came with a tutorial on audio cassette, which taught me about proportional space fonts and some other word processor-y things. BASIC programs, I have no idea where they came from, probably hand made bootlegs that got passed around. There was a long piece of paper that told us kids which disk, which side, had a given game on it like CHICKEN.BAS
and that was enough for us to LOAD
it.
I was around 4-6 at the time and Dad showed me what he knew of BASIC. Things like everything had line numbers, do a PRINT
to print it to the screen, LPRINT
to make it go to the printer, IF
andGOTO
statements and what not. It wasn’t long before I was making piddly little programs. Back then a lot of BASIC programs were distributed in magazines and books. The full source code would be printed on a single page or if you were unlucky, multiple pages. It was up to you to type in the whole damn thing, perfectly, else it didn’t work, you got the dreaded Syntax Error?
or it had bugs. I was also not a touch typist so it took me forever to type one of these things in one keyboard peck at a time. Fortunately once it was in and working, you could save it to a floppy and never have to type it in again. The upshot was that typing it in line by line you got to understand what the program was doing as it went along, picking up syntax and style.
As an aside, PC/Computing magazine also distributed little MS-DOS utilities the same way in the 90s, several paragraphs of hex values you that plugged into DEBUG.COM
!
I don’t remember why, if it was related to the needs of the software or what, but we sold the Model 3 at some point. I was pretty upset at this, because now where would I play games? It wasn’t too long after that we got the Model 4. I seem to recall some stuff we had that ran on the Model 3 wouldn’t run on the Model 4. There was some sort of TRS-DOS conversion program that did something, I wish I could find it or at least the manual to understand what it did.
It feels like I was always on it every day. I was either playing games or fiddling around with other games. Sometimes I’d just be in a TRS-DOS shell goofing around and manage to get TRS-DOS to crash (probably buffer overrun of the command interpreter) in a spectacular fashion with all sorts of garbage spit out on the screen. I spent the majority of my time in BASIC, it wasn’t until way later that I realized TRS-DOS actually could do things other than load BASIC.
At school we started off with Commodore CBMs and then went on to Apple IIe in the computer room in the late 80s/early 90s. The Apples were much nicer to use than the TRS-80 and I got to fiddling with them instead. In the early 90s our school switched to IBM PC clones (8088s w/ monochrome screens, 512 K memory, MS-DOS 3.3), and shortly after we got a 286 at home. I pretty much abandoned the TRS-80 and spent all my time on the PC, altho Dad still used the TRS for billing until they sold off the gas company. After that, it just sat there on the desk under a dust cover.
Ironically years later when I started the ISP I too would wind up having to write my own billing system. Commercial ISP billing systems just didn’t exist. What started off as a bunch of copy-pasting of customer addresses in Excel quickly got out of hand. I had to go learn Perl, MySQL, PHP, and how to parse RADIUS logs or else not make any money!