The Everyday Retrocomputing Project
So, what is “everyday retrocomputing”, and how did it all start? I guess that requires a little bit of history, both personal and recent.
Like a lot of the latter cohort of Gen X, I grew up with personal computing as a going concern. My parents brought a TRS-80 Color Computer 2 home shortly before I entered kindergarten (fun fact: they chose that computer model because Radio Shack was in partnership with Children’s Television Workshop to produce a line of educational programs). My first “grown up book” was the guide to ColorBASIC. I actually don’t remember my first BASIC program because I was so young.
The bulk of my childhood was spent on an Apple //e, though. The venerable MOS 6502 processor contributed greatly to my youth, though I stayed safely in the world of BASIC and didn’t know how people were writing the more sophisticated software that I’d boot from separate disks. I knew it had to be possible, but neither I nor any mentor I had really knew much about it. Of course, I gamed a lot, too, and I was a little arcade hound when I had the quarters for it. But it was my fascination with how these computers and video game machines did what they did that turned me into a grown up operating systems hacker.
I’m armed with the skills now to answer those burning childhood questions. In addition, computing has changed massively since the 1980s, to the point that I strongly doubt there are many, if any, engineers who can claim to understand every aspect of their own workstations, soup to nuts, power-up BIOS to GPU to printer. This is, of course, because we all move so much more data than we used to; even casual web browsing can move megabytes per request and require interpreting a complex and heavy high-level language. But it means the era of truly understanding every last aspect of a machine is mostly gone.
So, enter me. I’m like a mechanic or automotive engineer entering their middle age and deciding to work on a classic car in their garage. Although the industrial work is still fun, it’s nice to go back to the garage and work on something that’s completely tractable to the single expert. This started with me writing a series of tutorials on NES coding, a project I’m still continuing on. Still, I started to realize that retro tech nostalgia around games only keeps the interest going so far. Truth is, I just don’t game that much, and a lot of my retro gaming has been short walks down memory lane.
But, since I have been learning a great deal about 6502 assembly, spurred on by my regular conversations with @email@example.com, I started wondering if maybe I wouldn’t get more time and familiarity with an old 6502-based system if I used it for my “everyday computing”. That is, as a tool for checking my email, web browsing, chats, etc. Ultimately, I can see such a project expanding into coding, too. The fundamental root of the challenge basically comes down to what it takes to make an old retrocomputing machine…let’s say an Apple //e or a Commodore 128…something I can live a reasonable amount of my digital life on.
This isn’t per se a study in minimalism or asceticism, nor is it intrinsically meant as an art project to point out the absurd levels of waste that endless computing resources have put into our everyday lives. It’s not for show, and I have no intentions of “doing without”, since I’m still working for a living and still singing for my supper. I’ll still spend a lot of my days at my workstation. But, maybe with a little bit of learning by doing, I can find myself moving more of my time and my recreational coding over to one of these machines, and give it a little bit of a life it never intended to have.
Watch this space. I’ll be back with more in the coming days.