Basic instinct: how we used to code
In praise of Beginners All-purpose Symbolic Instruction Code
I’ve recently caught myself, like some horrific solo re-write of the Monty Python Four Yorkshiremen sketch, waxing lyrical to my two iPod-wielding young ‘uns about the good old days; when men were men, computers were effectively clockwork, and computer games… well, come to think about it, they still cost about 69p. But you didn’t download them from an app store. Oh no. They came bound into computer magazines and had to be typed in by hand. And oh yes, they were in an arcane language called Basic.
1980: that last year of primary school when I was shown my first computer, a Sinclair ZX80. Sixth-formers from the local comp were there to test our reaction times using a necessarily simple program they’d written. Themselves. Wow. Heady stuff. Only four kiddiewinks were allowed in at a time, and even then we were only allowed to touch one key on the bizarrely colourful, flat keyboard. But it was a computer! Just like on Tomorrow’s World!
Admit it, YOU wrote this on a shop's demo micro, didn't you?
Fast-forward a year: home computing hit the big time. At senior school, various tribes formed round newly-acquired weapons of choice: parentally-purchased ZX81s and Vic-20s, with a smattering of TRS-80 (dads in technical jobs) and the occasional Commodore Pet (dads managing the dads in technical jobs).
Oh, and that one guy whose dad was an electronics engineer who owned a 64K SuperBrain that came with a built-in green screen and something called a database. Actually it was my Nanna who bought me that 1KB ZX81, and my sister the small B&W rotary dial TV to run it on. You can imagine the bargaining that ensued…
Pretty much every home computer in the early 1980s came with a Basic interpreter as standard. The exception? The Jupiter Ace running Forth in 4KB. Weird, but fun.
Choose your weapons: which platform did you pursue?
However you stored your programs - cassette, Microdrive or pages ripped out of Your Computer – even the most disinterested luddite almost certainly started their games with a variation of
RUN, the programming equivalent of mono-linguists strangling 'dos cervezas, por favor'.
Even when the program was a machine-coded version of Space Invaders shoehorned into 1KB, you invoked it by typing this arcane Basic on an actual keyboard.
It didn’t take a mammoth chunk of Basic code to fill that paltry 1KB of memory - ah, how we pined for the wide open spaces of a 16KB Ram Pack - but only having a single kilobyte meant that any viable program you found could pretty much be copied blindly, assuming the faultless coding of the author (ahem).
A dialect for every machine
And thanks to the ZX81's and later Speccy's per-keyword command entry, debugging was just a simple matter of your mate reading the code v-e-r-y s-l-o-w-l-y as you moved your finger across the screen checking what you’d written. Understanding was there none. And if that failed, and if you were lucky, you saved your masterpiece-in-progress to tape, to fix next time he was allowed over to play. Heaven help the numpty who jogged the power cable.
Sponsored: Customer Identity and Access Management