Thursday, May 1, 2014

Celebrating 50 years of BASIC

On May 1, 1964, Professor John Kemeny ran the first BASIC program from a timesharing terminal at Dartmouth College, and ushered in a new era in accessible programming. Growing up in the 1970s and 1980s, BASIC tended to be the first language that children of my generation came across; despite well-known claims to the contrary, many of us are doing just fine.

We’ve got a few goodies to help get you in the party mood.

First up, our friends at RISC OS Open have produced a disk image for the Pi which boots straight into BASIC V for that authentic retro feel. BASIC V is the direct descendant of Sophie Wilson’s original BBC BASIC, which I cut my teeth on back in the late 1980s, and is therefore officially the best BASIC ever. RISC OS Pico comes bundled with a heap of demos illustrating how BASIC V programs work and how to do things like control the Pi’s GPIO lines, and a free copy of Martyn Fox’s book, First Steps in Programming RISC OS Computers.

Inspired by all this BASIC nostalgia, a couple of weeks ago I broke out a copy of BeebEm and started writing a BBC BASIC version of popular timewaster du jour 2048. It comes in at about 6K of BASIC, machine code and data.

Liz is much better at this game than any of the rest of us

Liz is much better at this game than any of the rest of us

It all got a bit out of control, and to be honest there’s rather more 6502 machine code (and rather fewer comments) than I’d originally intended, but it runs at a solid, flicker-free 50Hz in Mode 2, and gets the Liz “office champion” Upton seal of approval. (Liz asks that I point out that this screenshot was not taken when she was playing the game, because she is proud. She got over 10k points on her first and, so far, only session testing this version of the game, while complaining that it was “a bit hard” because I ran out of colours for the higher-scoring numbers.)  You can grab a disk image here; load it up in BeebEm, hit Shift-F12 and enjoy.

Finally no BASIC post would be complete without a plug for Gordon Henderson’s splendid Return To Basic, a modern BASIC interpreter for Raspbian with built-in support for the Raspberry Pi GPIO pins. Gordon’s “BASIC at 50″ post is here.

No comments:

Post a Comment