A Tandy / RadioShack TRS-80 Model 1 Clone
glensstuff.com
glensstuff.com
I cut my teeth on a TRS-80 Model 1 with 4K of RAM. I was like 13 or so and got one in the late 70s. I learned BASIC on it, but quickly ran out of CPU and memory with the interpreted BASIC and switched to Z-80 assembler. I didn't have an assembler however, so would write out all of the Z-80 instructions by hand on paper, then, when I thought I had debugged it enough on paper, I would convert it to the hex OpCodes. At that point I would either use a small BASIC program to POKE the hex into memory and run it, or after I got a hex editor, I would use that to type in the hex values. Of course, all of this was saved to cassette tapes! If there was a bug I would go back to the paper and figure out where I went wrong. I still remember some Z-80 OpCodes to this day from the countless hours of converting assembler to hex.
One really cool way I would use to debug programs, or at least know if they were running, was to keep an AM radio next to the computer. The TRS-80/Z-80 would give off enough RF so you could "hear" the program running on the radio. In fact, you could devise loops and delays in your assembler such that you could "play" music on the radio. :-)
Like you, I cut my teeth on the TRS-80 and wrote my first commercial program around 1982, a graphics drawing tool (written in Z80). It sold maybe a dozen copies, but was a start. I've got fond memories of EDTASM and T-BUG, the assembler and debugger.
I'm glad I'm not the only one who hand-assembled like this! :) Only for me, it was several years later, on a C64 with 6502 assembly, and I had the extra step of converting the hex values to decimal for DATA statements. Assemblers cost money. And my friends were more into playing games, so none of them had an assembler I could "borrow".
Also my dad had recently gotten into HAM radio and we had to negotiate our hobby times because of the Trash-80's RF interferance.
Even now I remember a lot of Z80 opcodes, largely as a result of hacking and patching games to get infinite lives.
I'm slowly working on building my own computer at the moment, with a real Z80 processor and an arduino to drive it. Fun stuff, but I've stalled for the past few months.
I think it cost $75, and I paid an extra few dollars for some old Basic programming books & a few cartridges with games. It was my first experience with programming, and I remember this fun sense of excitement when learning very simple "hacks" like the infinite loop:
10 print "Name"
20 goto 10
I had no storage, no disk drive, everything was lost when I powered off, and the games were awful (compared to NES & SNES) but it was a foundational experience for me. Good times.I made games on it. When BASIC wasn't fast enough for what I wanted to do I looked into Assembly. I sent snail mail to Motorola asking where I could buy the 6809E assembler manual, and they sent me one for free.
(This guy worked at HP, on their calculator chips).
Around that time I got a VIC-20 for Christmas with cassette drive, a great time to be alive.
Funny, almost a decade later in high school, I took a programming class and they were still using the same computer, a TRS-80 all-in-one. Talk about behind the times, haha.
(Recently I've found out that writing assembly on both computers was a thing, a shame no one ever told me at the time.)
But again, no one told me assembly language (or C) even existed. Didn't learn about it until I got to college many years later. Same old 10 PRINT, 20 GOTO 10. Sheesh.
The teachers knew less than people like us did anyways, I’m not sure what they could have taught us.
> The teachers knew less…
Generally that's the case, but it's possible these were pretty sharp, the first teacher was decades ahead for example. It was his computer he brought in. The second teacher, was also my Physics teacher, although I don't have strong memories in that class.
Just remembered—did ask him why I couldn't copy music from my compact discs to the computer, since they were digital? And he gave me a "should be theoretically possible" answer, haha. Many years before multimedia.
Happy to see it has Level II Basic. Level I was very limited: https://en.wikipedia.org/wiki/Level_I_BASIC
(I could go for a modern clone of the Model 100)
[edit: also the parallel (or serial? haven't looked in a while) port switcher so everyone could print is still in the equipment room, older than many of the current students]
My parents got it for me after I showed an interest in the Apple IIe computer that was wheeled around my elementary school at the time (yes - one computer for the whole school, each teach got it "checked out" once a month - it ended up being so popular, that the teachers later gave up their break room for the kids to have a "computer room" to learn in, completely outfitted by Apple and donations).
Anyhow - I had a TV for a monitor, cassette tape for storage, and a few cartridges (Canyon Climber and Reactoid were my favorite - though later in my teenage years I would discover Dungeons of Daggorath).
I typed in tons of BASIC programs from magazines and books, and yes - finding things incompatible was both frustrating, but informative. I took to learning how to convert between BASICs - GWBasic, PCjr BASIC, and AppleSoft Basic were all fairly easy - for the most part - to convert from so as to run on the Color Computer.
Forget anything for the C=64 or Vic-20, as most of them used tons of POKEs and the special sprite hardware to get anything done, and were (for a kid) impossible to understand what was going on or being done.
I also learned how to convert some code from Fortran to BASIC - I had found a book of graphics code in Fortran, and wanted to run the programs myself...so I learned.
Later, I found a book that detailed how to convert BASIC programs from one system to another; that also assisted me. But ultimately, it was a case of trial and error, tons of reading about the different systems graphics modes, etc.
I still own all of my old computers; I'll keep 'em until I die, I suppose.
Don't get me wrong, access to tech is much better, and that's great. I just think it's a different experience than in the past. Not necessarily bad, just... Different
Egads!
http works great though.