February 18, 2010

Ode to the Commodore 64


My first hands-on encounter with a computer was in 1987 when I got a pre-owned Commodore 64. The 8-bit C64 was basically a fat keyboard that looked like a breadbox. It featured 64 kilobytes of RAM with sound/graphics performance that was superior to most IBM-compatible computers of that time and rivaled only the Atari 8-bit family computers. The C-64 had a built-in RF modulator and thus you have an option of plugging it into a television set (instead of a specialized monitor-- which was quite expensive at that time). I plugged my C-64 to an old black-and-white Philips TV (The first television I bought. I bought it in 1980 for P999.00 and came with a free clothes iron).

The C64, being pre-owned (-- there's that scary word again), didn't come with a User Manual so I had to figure out by myself most of what the C64 was all about. The C64 did come with a Datassette-- a tape cassette recorder/player with which you could save and upload programs. Like most home computers from the late 1970s and 1980s, the C64 came with an on-board (ROM) version of a stripped down/simplified version of the BASIC programming language (-- yup, that's Bill Gate's Beginner's All-purpose Symbolic Instruction Code. Jack Tramiel of Commodore International-- maker of C64 was said to have paid US$25,000 to Bill Gates for a perpetual license for it and thus did not see the need to acknowledge Bill Gates, but typing "WAIT 6502, 1" would invoke an embedded easter egg that would make "Microsoft!" appear on the monitor screen). There was no so-called "operating system" then; the kernel was accessed via BASIC commands. The interface, unlike what is usually expected from computers nowadays, is an austere and unwelcoming blank screen with a blinking cursor on the upper left of the screen. I spent a lot of late nights punishing my poor eyes as I stared on the contrasty B&W television screen. Unlike nowadays where everything could be downloaded from the internet, documentation then was hard to come by. It took some work to figure out the C64 Basic Language and for a long time all I could do with it was to use it as a calculator and as a synthesizer.

It was by mere chance that I came upon a sixth copy of a photocopy of a copy of the User Manual (-- which, praise God, included a glossary of BASIC commands and a short tutorial on BASIC programming) in an obscure shop in Greenhills. And after much anguish, I came out with my first program-- a crude clone of the virtual ping pong game. From the same shop I got
the MIKRO assembler-- which curiously came in a Game Boy-like cartridge (-- there is a slot behind the C64 console that accepts cartridges), and which integrated seamlessly with the standard BASIC screen editor. I also explored third party BASIC compilers. Then I discovered the SEUCK (Shoot'Em-Up Construction Kit) development suite which allowed wannabe-programmers like me to create original, professional-looking shooting games.

The C64 introduced me to Unix (-- initially via the Unix-like LUnix), and encouraged me to explore scripting via Python (-- and later AppleScript) and object programming via SmallTalk-80 (via its quirky dialect, Squeak), to look and think beyond the GUI that present day operating systems have forced down our throats-- and to confront the CLI. It taught me perseverance, patience, to think logically and not to trust what I see.


2 comments:

  1. After seeing WAR GAMES at age seven, I wanted a computer more than anything else in the world. Within a few months, my parents got a Commodore 64. The system itself was magical. But the real magic came from the programmers of the games for the 64. These games squeezed every bit of power from the humble 64. Those were the golden age of mom and pop software publishing.

    ReplyDelete
  2. Thanks for your thoughts. The 8-bit era also ushered in "demoscenes"-- which remain cool to this day and the beginnings of software cracking (-- which usually feature a demo as a crack intro or "cracktro").

    -- J.Thomas

    ReplyDelete