Thirty years ago, Commodore Business Machines released the Commodore 64, an 8-bit home personal computer that became an iconic cultural force.
With its low price, and considerable graphical prowess, the Commodore 64 served primarily as a game console for millions of users, although many also took advantage of the C64's full potential as a programmable general purpose computer.
To celebrate the 30th anniversary of this legendary PC (it started selling in the first week of 1982), I sequestered myself in a quiet room with an authentic 1982 Commodore 64 for one week. The goal: to see if I could get any work done with a machine that possesses a miniscule fraction of the RAM and CPU power of computers commonly in use today.
A year ago, I spent a week with the IBM PC 5150 to undergo a similar challenge. Unlike the IBM PC, however, the Commodore 64 was not designed as a high-end business machine, making productivity tasks a little harder to pull off.
Despite the odds weighing against me, I would put the C64 through its paces as a writing, gaming, and yes, Internet machine. By the end of the week, I would judge my success rate by the number of hairs left on my head. As it turned out, I didn't up nearly as bald as I thought.
Day 1: Setting Up
Of the ten original C64 units I have owned (all second-hand), only three of them actually worked. I'm a computer collector, and most old computers I run across work just fine despite their age--but not the C64. (To add insult to injury, over the past few years, I've had two of those working C64 units fail on me during regular usage.)
In the C64's case, I've found that the biggest cause of failure is heat and poor ventilation. Heat causes all kinds of problems in electronics, from warped circuit boards to flat-out IC failure. The C64 does not contain a fan, and its hot-running chips are nestled under a cardboard RF shield, with the system's internal components packed like sardines in a poorly-ventilated plastic case. You can see what I mean in this photo I took in 2008:
Yes, I said that right: cardboard. To reduce costs in manufacturing, Commodore opted to forgo the common sheet metal RF shield (which prevents TV reception interference from the C64's circuitry) in favor of one composed of compressed paper coated with a thin metallic foil. Apparently, it worked, but cardboard isn't known for its heat conductive qualities.
(For more info on the internal construction of the Commodore 64, check out this teardown slideshow I did for PC World in 2008.)
On top of all that, the C64's circuit design isn't quite as robust as it should be, making it very easy to fry things if you short the wrong pins together on its various connectors. And Commodore's power transformers (think "brick on a leash") get extremely hot and tend to melt their plastic cases then fail over time. Basically, if you wink at the C64, it might crap out on you.
And sure enough, a few minutes after plugging in my pride and joy--my last working C64 breadbox model--it failed. Luckily, I had a spare working C64 motherboard, and after troubleshooting that ate up a large portion of the day, I simply swapped the boards and I was back up and running.
The Rig: No Commodore 64 is an island; it needs a nebula of supporting peripherals to be a truly useful system. For a monitor, I chose my trusty Commodore 1702, which not only supports composite video input but also a special S-Video-like chroma/luma input in the back that guarantees a very high quality video display. I own a single cable made for this connection between C64 and 1702, and I almost couldn't find it. But I did.
For storage, I chose the standard Commodore 1541 floppy disk drive. It can use single- or double-sided 5.25-inch floppies that hold 170 kilobytes per side. It hooks to the C64 via a serial interface that can be quite slow, but at least it was user friendly.
Disk drives could be very expensive in the 1980s, so many C64 users opted for a lower-cost cassette tape drive. Such a drive stored and read computer data from standard audio cassette tapes. I hooked up one of the more popular models, the Commodore 1530 C2N Datasette drive (shown sitting on top of the stack above), but alas, I had trouble finding meaningful programs on tape to use with it (most of my tapes are for the earlier VIC-20).
For game controllers, I rummaged through my collection and found two Commodore VIC-1311 joysticks. More on that later.
The Software: A computer is only as good as its software, and the Commodore 64 platform suffered no want in that department. Over 10,000 programs were created and sold for the C64 during its lifetime, and sometimes it feels like I have all of them sitting in a gigantic box as shown below. This is part of my Commodore 64 software collection.
Two things were against me when using this software. The first is that these disks were old, and, as many folks have realized in recent years, floppy disks don't last forever. (I wrote a piece about the ramifications of that fact earlier this year.) The magnetic data fades over time, making them unreadable.
Sometimes the disks do work, but graphics data becomes scrambled, as was the case with the game Gauntlet, seen below:
Over the past decade, C64 fans have created a number of adapters that utilize modern secure digital flash media for data storage. But I wanted to make this experience as authentic as possible by utilizing only vintage equipment.
So by the end of day one, I was faced with the prospect of spending my week with an unreliable discount computer, reading ancient floppies that rarely work. But hey--nobody said this was going to be easy.
Day 2: Interacting with web sites
Day 2: Cruising the Information Superhighway
Setting up was fun, and I'm glad you've read this far. But I know what you're really here for: to see me tweet from a Commodore 64.
How is it even possible to tweet from a 30 year-old machine?
Tweeting: Well, there are two ways to go about it. The first, and most obvious, method is the "vintage" way, which I will describe in a moment. The second is to buy a modern C64 to Ethernet adapter and run Breadbox64, a native Twitter client written for the C64 in 2009 by Johan Van den Brande.
Since I had decided to stick with vintage hardware and software, I felt like that was cheating. So I went the "simulated ISP" route--the same method I used with the IBM PC 5150 last year. Back in the day, one used serial ports for everything. If one wanted to use information services, one called up a bigger, more powerful machine with a modem, and that machine fed info to the C64 through the serial port.
I did the same thing, hooking my C64 to my "virtual ISP" (a semi-modern PC running Linux) through a serial port. On the C64 end, I ran ASCII terminal emulator software (the same kind you'd use with a modem).
Hooking the machines together was more complicated than using a single cable. On the C64 end, I had to use a Omnitronix Deluxe RS-232 Interface. This Interface connects to the C64's I/O port and converts the signals to allow usage of standard RS-232 serial devices. I attached a null modem serial cable to this interface that led to the serial port on the Linux PC
Once connected, I had access to the entire Linux system as if I had a "shell account" on a remote ISP.
From there, I could check email, browse the web, and even send tweets. As I mentioned in my 5150 piece, this may seem like cheating, but this method, which involves connecting to a bigger, more capable machine, is very similar to how one would have accessed a larger computer network in the 1980s.
I decided to kick things off with a tweet from the C64 using a Linux-based command-line program called Twidge, shown on the screen below:
And here is how the tweet looked from the Twitter website, as rendered by the iMac. As you can see, I received both incredulous and congratulatory responses on Twitter.
Surfin' The Web, 64 Style: Next, I decided to try browsing the World Wide Web. As with Twitter, there were a few ways I could go about it. I could utilize modern browsers that C64 die-hards have created for the C64, but what fun is that?
Instead, I went the "vintage" ISP route. I loaded Lynx, the famous text-based web browser, on the Linux machine. I called up a few websites--or what I think are websites--and watched them unfold like literary spaghetti on the screen. Here is PC World in 40 columns, text-only:
And here's what Google looks like if you access it from a C64. If you squint the right way, you can hardly tell any difference from Firefox :-)...
The sites work, albeit not very well. They'd look much better with a better software solution, but time was a-tickin', and I needed to move on.
Checking Email: What is computing without checking email? Dutifully, I loaded up Pine, a popular command-line email client for Linux. It did not look good in 40 columns. I knew there were other solutions that would work better with 40 columns, but by the time I got to email, I was out of gas.
Next: Day 3, Word Processing
Day 3: Word Processing
On day three, I decided it was time to write.
I knew right off that this would be an entertaining adventure on a machine that could only display 40 columns of text (natively, in text mode, at least). 80-column text displays, present on high-end business PCs of the day (like the IBM PC), were considered the standard necessary to represent the width of text on letter-sized, typewritten paper. (Trivia: The 80-column standard originated as a reflection of the number of columns on a Hollerith punch card.
But first, I needed some software. I combed through my illicit disk archive and pulled out as many disks I could that appeared to contain word-processing software. I found three working disks with three working programs: OmniWriter, Easy Script, and Super Script 64.
Omniwriter, a 1984 program published by Human Engineered Software, felt like the most intuitive, easy-to-use, and powerful of the three. Like other word processors for 40-column systems, Omniwriter simulates 80 columns of width by simply scrolling the screen around a virtual 80-column-wide page as you type. (It's worth noting that a few word processor packages simulated 80 columns on a standard C64 in a high-res graphics mode, but I did not run across one during this experiment.)
Easy Script is a simple, bare-bones word processor created by Precision Software, Ltd. and published by Commodore in 1982. It is so "easy" that it doesn't even include word wrap, and it doesn't pretend to simulate a page. I was not very impressed.
Finally, I tried Super Script 64, a 1985 application also created by Precision Software. As a sequel to Easy Script, it felt similar, but included nicer features including word wrap, pagination, tabs, and even more that I didn't dig into very much.
The Keyboard: My attempts at writing on the C64 were thwarted early on by the clumsy keyboard layout of the Commodore 64, which I feel is not conducive to word processing. (Cue 30 defensive comments from people who wrote term papers on the thing.) At any given time, you are only one key away from accidentally clearing the screen, and there is no dedicated backspace key that works the same in all applications.
I will grant you that the Commodore 64's keyboard was very adequate for the unit's price range, target audience, and the era in which it was designed. As I found in my week of typing with it, you can become accustomed to the layout, even if it is rather clumsy for someone who is used to the now-standard IBM PC 101-key layout.
Next: Day 4, Video Games
Day 4: Video Games
By the time day four rolled around, I was tired of working. Wasn't the C64 supposed to be a world-famous game platform, anyway? It was time for some fun.
So I hooked up some joysticks. I mentioned the Commodore VIC-1311 joysticks earlier, and I wish I hadn't. They are terrible. Whoever decided to make the joystick shaft shaped like a triangular prism was either high or trying to avoid a patent lawsuit. Now roughly 30 years old, pushing their ancient mushy buttons feels like pushing a solid, immovable piece of plastic.
So I ditched them.
In their place, I whipped out a Suncom TAC-2--perhaps the greatest digital joystick ever created. Its unique ball/plate based contact mechanism makes it very rugged, yet accurate and responsive. Its two buttons both wire up to the same contacts, which makes it lefty-friendly.
With the TAC-2 firmly attached to the C64, I was ready to game. After a few games of Frogger and Wizard of Wor on cartridge, I was left unsatisfied. What games, if any, defined the Commodore 64? I flipped through my cartridge collection, below, looking for familiar names.
I happened to have a bunch of non-pirated C64 game disks too--unfortunately, most of them are now unreadable--but I did manage to find and run Summer Games, a digital implementation of the Summer Olympic Games created by EPYX in 1984. I also tried Summer Games II (1984), which lets you combine events from the first game into a huge Olympics-style competition. Here are the disks:
And here is one of the games running on the Commodore 64. Does the Olympic Torch there beat London's?:
After that, I loaded up one of my personal favorites, M.U.L.E. (Electronic Arts, 1983), a multiplayer strategy game that involves trading and resource management. Here's how it looked:
Next: Day 5, Graphics
Day 5: Graphics and Frustration
On day five, I had planned to tackle graphics-related applications. On the C64, that mostly means joystick-based doodling programs, mouse-based clones of MacPaint, and Broderbund's The Print Shop, which allowed users to design and print cute banners, newsletters, and custom calendars.
But in truth, I spent most of Day 5 trying to transfer NovaTerm, a nice 80-column terminal program, over the serial connection from the Linux Machine to the C64. At 1200 bits per second, each attempt took quite a while, and just as I succeeded, I ran out of time.
Earlier in the day, I did get a chance to try a single graphics package: Doodle, a joystick-based drawing program released by Omni Software around 1985. This is what I managed to doodle:
I was aiming for "Sunset, as viewed from the Eiffel Tower in 1892," but it ended up looking more like lines made by a woodworm.
So what did I learn from my week-long Commodore 64 adventure? I'd have to say that, truthfully, I ended my week with less respect for the platform as a general purpose PC than I had before I started.
I've owned a C64 (or ten) for almost two decades now, and I only had used them casually to play games now and then. Using them for anything else is an exercise in frustration, especially when you're dealing with vintage hardware that was unreliable to begin with.
But I have a great respect for the C64's role as a cultural catalyst for a generation who grew up basking in its warm blue glow. For them, the Commodore 64 did everything they needed: it provided a valuable stepping stone to a larger world of computers, it taught many how to program for the first time, and it was a killer gaming machine.
If you simply take C64 as it was--an entry-level home computer that provided immense entertainment value--then it is obvious that few products fulfilled that role better than Commodore's little brown machine.
Few technology products have been as influential or important in the lives of millions as the C64.
Despite my troubles using it as a work machine, I am not ashamed to raise a glass to toast its 30th anniversary.