(Sorry kids; another technical post. I finished this project late Wednesday night and scheduled the post to go live at noon on Thursday. I’m warning you now — it’s late, and there could be tpoys … er, typos.)
ZoomFloppy (which I wrote about earlier today supports parallel file transfers. This would be great news, except for the fact that the 1541 disk drive doesn’t come with a parallel port. If you want one, you’ve got to add one.
On his website, Peter Schepers sells pre-wired piggyback kits for installing parallel ports into 1541 disk drives. Peter was super easy to deal with and super helpful. On his website, Peter also provides all the pinouts for people wanting to make their own cables. It’s a win/win situation. I went with the piggyback (read: solderless) solution. The custom cable, a 15-pin parallel cable, and shipping (from Canada) set me back a little over $30. Absolutely worth it, in my book.
Before ordering one of Peter’s kits, you’ll need to determine which model of 1541 you actually have. The easiest models to modify are the old white VIC-1541 drives, and the common beige C64 1541 drives (both pop-tab drives and the turning-handles models). 1541C, 1541-II and 1571 drives can also be modified, but each of those require additional and extensive disassembly of the drive. Fortunately for me, my garage looks like this:
Most of the drives work. Most of the C64s do not.
After choosing a victim, “Project Parallel Punch” began! As you can see below, the one I picked still had a price written on it in “thrift store grease pencil” — $3.98. One summer several few years ago I managed to snag half a dozen or so 1541 drives at thrift stores and garage sales. Hey, you never know when, five years from now, you might need one to install a parallel port into!
Once the patient was moved to the operating table, the first order of business was to remove the case and the metal shielding. The case is held in place by four metal screws — the shielding, another two.
With the shielding off, you can see the middle (6522) chip that needs to be pulled. With the 6522 removed, the socket is inserted, and the 6522 is reinserted. This was by far the hardest part of the installation. The socket pressed in with no problem. When I reinserted the 6522 chip I managed to smash half of the chip’s legs. ARGH. I really suck at this! It took me half an hour and four or five attempts to get all the legs straight enough to reinsert into the socket. Why am I so bad at this?
Eventually, this is what it looked like.
The next part of the install was making a hole in the back of the 1541 for the parallel connection. Using a Dremmel, in about two minutes I shaped out a workable solution. It ain’t pretty, but it works. Going against Peter’s suggestion I mounted the port from the inside of the drive, rather than from the outside. This is a terrible idea because the plastic is so thick that I had to Dremmel an extra 1/4 inch all the way around the socket to make room for the metal housing around the cable.
Here the drive is, reassembled and ready for action.
Unfortunately, mounting the port on the inside made it to where I couldn’t push the parallel port in far enough. After a quick trial run, I mounted the plate on the outside of the drive with a couple of computer screws. Not only does the cable work better with this mounting, but it hides my shoddy Dremmel work to boot!
With the parallel port in place I fired up D64Copy and ran a quick test:
– Serial only: About 90 Seconds.
– Serial w/Parallel: About 25 Seconds.
As I mentioned earlier, the parallel port not only transfers data more quickly, but it also allows for the capturing of the entire disk’s contents, not just the programs. This is invaluable for people wanting to not only capture programs, but preserve disk formats and study copy protection. I’m having trouble with some of the advanced tools in Windows 7/64-bit at the moment, but since the ZoomFloppy is USB, trying it on other machines won’t be a problem in the near future/
Today I will be giving my first impressions of the ZoomFloppy, a new PCB that allows people to connect old Commodore floppy disk drives to modern PCs via USB.
(I’ll pause a minute while most of you leave the room. You are excused. See you tomorrow.)
I have, on several occasions, talked about the process (and difficulties) of converting physical Commodore 1541 diskettes into D64 disk images, the format used by most Commodore 64 emulators (including WinVice). Most recently, I talked about it here, here, and here. To save you an hour of back-digging, here’s the gist of those posts: I’ve found two reliable methods to convert real disks into D64 images (and back). One involves using a 486 running DOS and a special cable (x1541). The other involves using a 1541 Ultimate, a device that attaches to a Commodore 64. While both solutions work great, neither is without its drawbacks. The 1541 Ultimate runs around $200 US (with tax and shipping) and requires a working C64 computer to run. X1541 cables work best with older parallel ports on 486 computers running DOS, which brings its own unique logistics.
There’s also the FC5025, a USB controller for 5.25 floppy drives. The FC5025 is $60 (shipped), plus you’ll need to supply your own 5 1/4 floppy drive. The FC5025 is good at what it does, but it doesn’t do what I need it to do. It archives PC/DOC-based disks perfectly, but can only read the front side of Commodore 64 and Apple II disks. The FC5025 is also a read-only solution. I own one and use it for archiving old DOS disks, but for archiving Commodore 64 disk collections (almost all of which contain disks with information on the flip side), it’s not a good solution.
This brings us to the ZoomFloppy.
The ZoomFloppy was developed by Nate Lawson and is being manufactured by Jim Brain. It currently sells for $35 US, which makes it the most inexpensive solution to date. It’s USB, so “installing” it is a matter of connecting the card to your computer using a standard mini-USB cable and supplying the drivers.
The ZoomFloppy’s packaging is sparse. The card shipped in an anti-static bag. Inside the box there was also some tissue paper, and a folded-up piece of paper with the GNU General Public License printed on it. Something noticeably missing was a piece of paper with some instructions. A sticker on the anti-static bag pointed me to http://www.go4retro.com/products/zoomfloppy. After searching that page longer than I’d like to admit, I found the link to Nate’s page, which contains links to the installation manual and drivers. The driver installation on my 64-bit Windows 7 machine did not work like the documentation suggested it would, but after manually installing the driver, Windows 7 saw the card. It wasn’t a particularly difficult installation, but the whole process reminded me that the ZoomFloppy is currently, and probably always will be, intended for computer-literate hobbyists.
The 1541. She lives.
ZoomFloppy supports transferring data to and from 1541 disk drives using either serial or parallel cables. Serial cables are the ones most Commodore owners are familiar with. On its side, the ZoomFloppy has a female serial connection identical to the one found on the back of a 1541 drive. A standard C64 serial cable is used to connect a 1541 to the ZoomFloppy. That configuration supports both converting real C64 diskettes to D64 images, and writing D64 disk images out to real floppies. I suspect this is what most people will use the ZoomFloppy for. The ZoomFloppy also supports parallel connections. This requires, at a minimum, modifying your 1541 by adding a parallel port to it. I purchased my parallel port kit from the highly recommended Peter Scheper. (I haven’t installed it yet, but when I do, expect another post on the topic.) Using the advanced parallel connection allows the ZoomFloppy to also read and write nibbled G64 disk images. It’s not a feature most people need or will even want, but if you’re interesting in backing up (or studying) copy protected diskettes, it is well worth the effort.
The ZoomFloppy is designed to work with the OpenCBM tools which are command line tools available for Windows, Linux, and Macintosh machines. For those who prefer GUI interfaces, there are also free front ends available. I downloaded CBMXfer, just to give it a whirl.
Within fifteen minutes, I had discovered the ZoomFloppy in my mailbox, opened the box, installed the drivers, found online documentation, got the card installed, fetched a working 1541 drive from my garage, retrieved a random C64 floppy from the archives, transferred a real disk to a D64 disk image, and launched the image in WinVice.
Click to Enlarge
The only real issue I’ve encountered so far is that one of the D64 images I copied was corrupt. I couldn’t find an option for retries or error checking on CBMXfer, but I see it as an available option via the command line. I’ll do some more experimenting with that tonight. It “seems” like I got better results by turning “warp mode” off, which increases the copy time from just under a minute to just over one.
I can’t believe I’m saying this, but once I get a parallel port installed on my 1541, it looks like I’ll be transferring my old C64 collection over one more time. It’s a Herculean task, but doing it and doing it right is important to me.
The third annual Blockparty (now I believe the longest running US demo party) took place Saturday night at during Notacon. Demo parties are competitions where coders enter their programs and audience members vote on them. Along with the standard “demo” category, the organizers of Blockparty expanded to include several different categories. One of them was music, so I decided to write, record and enter my own song.
My interest in demos and the demo scene goes back to the Commodore 64, so I knew up front I wanted to record a tribute to the 64. I know nothing of 8-bit recording techniques, so that was out. I considered recording samples from 8-bit games into a modern program and restructuring them into a song, but I didn’t want to create an entire song out of other people’s sound samples, so I dropped that idea too. While listening to Run DMC during my recent road trip to Pennsylvania, it hit me — I’ll record a rap! Raps are relatively easy to write and perform as is loop-based music, so that’s what I decided to do.
The end result was “You Can’t Handle the Commodore,” a three-minute song written in the style of an old-school “rap battle”. Rap, and especially the rap I used to listen to growing up, has always been filled with “battle” songs — you know, “I’m so bad” and “I could kick your butt” and stuff like that … so after listening to several hours of old Run DMC, Ice-T, NWA and LL Cool J albums to get me in the mood, I sat down and wrote the lyrics to my song. Here are the lyrics, with a ton of notations added to explain all the jokes. Note that unless you are familiar with the C64 and much of its library, most of this won’t seem very funny.
You Can’t Handle the Commodore
Listen up kid, it’s time to put down the Wiimote
Drop the 32-bits, hop into my boat (1)
Talkin’ trash like a punk emcee,
I’ll punch you in the face like the Ninja from Bruce Lee! (2)
My kid is the son of an 8 bit, (3)
In front of a sixty-four’s where I sit. (4)
I like to battle, but I won’t bark on,
I’ll toast your ass like the Phoenix from Archon. (5)
I’m great at a million games man,
When you were in diapers, I was cleanin up Wasteland.
Summer Games, Winter Games, World Games, too, (6)
California Games cured my summertime Blues (7)
Wanna play? Bring a DB9 Stick, (8)
I got an old Epyx that I’ll kick your ass with. (9)
You want mercy? Well you better start wishin,
You beatin’ me’s an Impossible Mission. (10)
Like HERO, I’m about to fly, (11)
With a disk notcher I’ll use your backside, (12)
Like Load Runner you’ll drop your load,
Then I’ll pick up your package of gold. (13)
You’re a headbanger, cuz you bang your drive’s head (14)
You’re like a zombie, and you’re already dead,
And I’m a serial killer with a serial cable, (15)
Cuz you’re retarded, or should I say disabled?
Let’s play Pitfall, you know what to do? (16)
Well take notes chump and I’ll give you a clue.
Jump over the logs, then swing on the vines,
And then you gotta UH OH out of time! (17)
This battle’s over, I’ve already won,
Cuz you come last like comma eight comma one. (18)
Feelin’ lucky? Wanna test your ability?
You beatin’ me? Realm of Impossibility. (19)
I’m the king of (20) [the Commodore]
You don’t want none of (21) [the Commodore]
You can’t handle (22) [the Commodore] (23)
So bring what you got, whatchu think, you’re bad man?
Well I got skills yo, but I ain’t Rad Man (24)
Cuz he does art, yo and I play games, yo
so pick up a stick and I’ll bring the pain, yo
Cuz here is the church and here is the steeple,
your only friends are Little Computer People (25)
In Skate or Die (26) you always fall,
So you can suck on my Wizballs (27)
I’ll cut your head off, like Barbarian (28)
I’m bout to school you like a librarian
Your expectations are never gonna be met
I’ll rip you apart like Racing Destruction Set (29)
You think your bad, you better get your facts on,
Cuz I can rock a perfect score in Zaxxon, (30)
Wanna play some Hacker or Hacker II, (31)
Well look it up bitch I wrote the walk thru. (32)
Your face is red, I can tell your pissed,
Cuz I whipped you in the Way of the Exploding Fist (33)
Cuz I kick ass, and I never come in last,
And I’ll beat your ass at Boulderdash (34)
Player one, player two, it just don’t matter,
In Karate Champ (35) your face will splatter,
I’ll whip you, like a goddess wearing leather (36)
You can Stay a while, but don’t stay forever. (37)
In Beach Head (38) you took two the dome,
You gonna need a Space Taxi (39) to get you home.
Yes I’m better than you, you’re not just paranoid,
and I’m a 999 in Paradroid (40)
Three minutes and this track is through (41)
I’m number one and you’re 6502 (42)
We’re done here, and there’s the door,
I was right, you can’t handle the Commodore.
That’s right, he’s the king.
You better run/stop your mouth. (43)
Aw your disk is all floppy … (44)
He’s got two kids — Vic, and Sid. (45)
He’s gonna get you with an Isepic. (46)
Yeah, you can’t handle the Commodore …
1 – The Wii is a 32-bit System
2 – Bruce Lee = Popular C64 Game (that featured a ninja).
3 – Play on “son of a b***h”
4 – sixty-four = Commodore 64
5 – In the game Archon, the Phoenix attacked by exploding into fire.
6 – Wasteland, Summer Games, Winter Games, World Games, California Games = Popular C64 games.
7 – This was going to be a joke about “M Network Games” who had a commercial sung to the tune of “Summertime Blues” but I decided it was too obscure so I got rid of it and replaced it with this line.
8 – The C64 uses a nine pin or DB9 joystick.
9 – Epyx made a popular C64 joystick, the XJ 500.
10 – Impossible Mission = Popular C64 game.
11 – HERO = Popular C64 game (in which the player flew)
12 – A disk notcher allowed owners to store data on the back side of a floppy. I thought this was one of the wittier jokes in the song.
13 – Lode Runner = Popular C64 game that involved picking up packages.
14 – The 1541 was notorious for banging its head.
15 – The 1541 used a serial cable.
16 – Pitfall appeared on many systems, including the C64.
17 – Pitfall was a timed game.
18 – The command to load a game on the C64 ended in “,8,1″. This is another good line I thought.
19 – Realms of Impossibility = Popular C64 game
20 – “I’m the King of” (Run DMC sample)
21 – You don’t want none of” (David Space from Tommy Boy sample)
22 – “You can’t handle” (A Few Good Men sample)
23 – “The Commodore” (William Shatner from old Vic-20 Commercial sample)
24 – Rad Man is one of the two co-organizers of Blockparty and a famous computer artist.
25 – Little Computer People = Popular C64 game
26 – Skate or Die = Popular C64 game
27 – Wizball = Popular C64 game (and a play on a vulgar phrase)
28 – Barbarian = Popular C64 game (allowed you to decapitate your opponent)
29 – Racing Destruction Set = Popular C64 game
30 – Zaxxon = Popular video game.
31 – Hacker and Hacker 2 = Popular C64 games
32 – A “walk thru” is a file people write that tells you how to beat a game. I did actually write a walk-thru for Hacker years ago but I needed help beating the game.
33 – Way of the Exploding Fist = Popular C64 game
34 – Boulderdash = Popular C64 game
35 – Karate Champ = Popular video game
36 – “goddess wearing leather” refers to the game Leather Goddess of Phobos
37 – “You can stay a while but don’t stay forever” is a popular sample from the game Impossible Mission
38 – Beach Head = Popular C64 game (where you could get shot)
39 – Space Taxi = Popular C64 game
40 – Paradroid = Popular C64 game (the highest level was 999)
41 – The song competition limit was 3 minutes in length. This song is 3:00, exactly.
42 – 6502 = the main CPU in the Commodore 64.
43 – Run/Stop is a key on the C64 keyboard.
44 – The C64 used floppy disks.
45 – VIC and SID are the C64′s video and sound chips.
46 – Isepic was a popular cracking cartridge.
As you can tell, I tried to cram an awful lot of jokes and references into a three-minute song. My minimum goal was one joke or reference every other line, and I tried to put one per line where I could do so without making it feel forced.
The song also contains several samples, both in the actual music and behind the lyrics. The song is composed of a couple of drum loops I actually ripped from vinyl to mp3 using my Ion USB turntable. The main “riff” is comprised of a modem tone, a dial tone, a 2600 tone, and a red box tone. (Surely that ought to earn me some old school cred!) The build up to the chorus is a jet taking off in Raid Over Moscow, slowed down. Most of the incidental samples come from the songs I’m talking about at the time (Pitfall, Little Computer People, Beach Head, etc). The chorus features a 1541 head bang. The bass line was created by hand by manipulating a single bass sample; the dial tone was then modified to play the same notes. The chorus samples were mentioned above in notes 20-23. The whole song was put together in Acid 6.0; I’d say I spent a total of 5-6 hours working on the music specifically, and then another couple of hours laying down (and doubling) the vocals.
I sent copies of the song out to half a dozen friends and the majority of them said, “it’s not as bad as I was expecting.” Based on their feedback I lowered the volume of the modem tone, EQ’ed the voice on the second track a little lower, and added the “end comments” which in the end I didn’t like, but it sounded better than having nothing there.
Blockparty had 15 song entries, and mine was number 14th in line to be played. As the organizers began playing the songs, I noticed something — none of them had any lyrics! They all sounded computer generated, and none of them were “songs” like I was thinking. I slumped further in my seat. I had misjudged the style of music completely. My only hope was that the crowd would be full of C64 fans and that they would like my jokes.
Well, they didn’t, at least not very much. I tied for seventh place out of fifteen songs which put me right in the middle. To be honest, after hearing the quality and style of the other entries I expected to be closer to the bottom of the list. While I’m not exactly proud of where I placed, I’m glad I entered and, if nothing else, forced a room full of a couple hundred nerds to listen to me rap. It’s a trauma I’m sure it will take some time for them to get over.
If you would like to recreate the experience, turn off all your lights, stay up until 2:30 in the morning, crank up your volume and press play below.
Or, if you would prefer to put it on your iPod and rock out at the gym, here you go:
For the fourth day in a row now, I’ve continued working on my quest to convert all of my old Commodore 64 disks into modern D64 images. Over the past few days I’ve converted approximately 150 disks out of the 700 or so disks I still have. After handling 150 floppy disks in a row over the past few days, I’ve gotten pretty good at predicting which disks are going to convert, and which are going to be full of read errors.
Back when I first got my Commodore 64, floppy disks were roughly ten bucks for a box of ten ($1/disk). For the first few months I had my computer, especially while using a 300 baud modem, a box of ten disks would last a few weeks. By the time I graduated to 1200 baud, I was filling one side of a disk each night.
Keep in mind that you were only supposed to use one side (the front) of a floppy disk. The back side was not “notched” and by default, could not be written to. The simplest solution to this was purchasing a disk notcher, which ran around $5. After floppies were notched, you could write to the back side of them as well, doubling their capacity. There were all sorts of reasons people gave why one should not do this. Some people said that the backsides of disks weren’t quality checked, and were prone to data loss (maybe true). One person once told me that the dust filters inside disks were only meant to run clockwise — when run counter-clockwise (when the disk was in upside down), the filters would essentially run in reverse, dumping any collected dust directly into your drive. I can’t imagine that’s true. Regardless of whether or not it was good practice, I was young, broke, and desperate for disk space. I used the backsides of disks whenever I could.
By the time my parents were driving me all over the city so that I could trade games in person with fellow Commodore 64 owners, I was going through blank disks like mad. Mail order companies began delivering diskettes much cheaper than the stores — maybe $60 or $70 per hundred, vs. the still going rate of a buck a disk at retail stores. None of my friends nor I had $60 or $70, so we would all chip in and split a hundred pack two, three, sometimes four ways. It kept us going.
At the time I don’t remember these disks feeling or performing any different than the name brand floppies sold in stores, but boy can I sure tell a difference now. Some of the floppies I pull out of my old disk box are stiff as a board and as thick as cardboard. I haven’t had a single one that felt like that fail me. Others slide out of their old disk sleeves almost like an undercooked slice of cheese pizza, drooping over my fingertips. You can practically see the 1′s and 0′s falling off the disk. Those are the disks that are failing with multiple read errors.
The other disks that are failing almost without exception are my first hundred or so disks. Keep in mind that I was a Commodore user for basically a decade, meaning the earlier disks in my collection are years older than the later ones. As I mentioned earlier this week, I recently read on the net that the average lifespan of a 5 1/4 floppy disk was six months. Some of my earliest disks are 21 and 22 years old — the “younger” ones are merely 15 years old. Apparently those few extra years, combined with the cheap ass brands of floppy disks I used over the years, are finally catching up with me.
Surprisingly, I haven’t run into any disks yet that are completely unreadable. The ones that are bad simply have random bad sectors, usually near the beginning or the end of the disk. Once I’m done with this conversion project I’ll have to go back through and test them all, seeing what still works and what doesn’t. It’s the project that never ends, I tell ya.
One of my goals for 2008 is to finish all of the analog-to-digital conversion projects I started in 2007. This includes converting all our VHS tapes to DVDs, and all of our old CDs, cassette tapes and records to MP3. Another one of the projects, which has proved to be both the most rewarding and the most frustrating, is the conversion of all my old Commodore 64 diskettes to D64 images.
Just to get everybody up to speed … on one hand, in the real world, you have real Commodore 64 computers and real Commodore 64 disk drives that use real floppy disks. On the other hand, you have virtual Commodore 64 machines, called emulators, that run on modern personal computers. These virtual computers need virtual disks to work, and those disks are commonly stored in D64 format. You can take those virtual D64 disks and put them in a virtual disk drive connected to your virtual Commodore 64 and load them and play them as if it were all real. There are two ways to acquire D64 images. You can download them, or, if you have the proper equipment, you can make your own.
So, let’s talk about the “proper equipment.” The tried and true method requires a unique combination of hardware and software. On the hardware side, you’ll need a computer running DOS with either a SPP, PS/2, EPP or ECP parallel port. You’ll need a real, vintage Commodore disk drive, and you’ll need a special “X1541″ cable to connect the two. There are at least six different flavors of “X” cables (X1541, XE1541, XM1541, XA1541, XH1541, and XP1541), each of which require different software tweaks and configurations. Once you get everything wired up and talking, the DOS-based program Star Commander will allow you to convert real Commodore disks to D64 disk images.
The trickiest part of the whole process is finding a parallel port that works. In my experience, the older the computer, the better your chances are of getting everything working. I finally got everything to work by using a 486 PC from the mid-90s, which I keep around for this sole purpose. Adding to the project’s complexity is the problem of getting D64 images off my 486 and onto my laptop. When’s the last time you networked a DOS-based machine to a Windows XP laptop? I ended up with a dual-boot setup on the 486; that way I can transfer disks through DOS, and connect to my home network using Windows 98 (using ten-year-old networking tools and protocols) to transfer the images over. Clunky, but it works. I don’t complain.
Star Commander is a DOS program that resembles the old DOS versions of PC-Tools and Norton Commander, with a split screen display showing the Commodore drive on the left side of the screen and the PC’s hard drive on the right. Once everything’s connected and working, creating a D64 image is simply a matter of pressing a button, waiting, and praying that my disks are still good and not full of read errors.
The back side of most disk sleeves contained pictoral examples of things that could damage your disks, including: magnets (which includes monitors, speakers, motors, and cell phones), bending, heat, cold, touching the disk, opening the drive while the disk was loading, opening the drive while the disk was being written to, powering the drive or computer off with the disk still in the drive, or exposing the disk to dirt, dust or smoke. Even if you managed to keep your disks away from all those things, the biggest killer of floppy disks has been time. The older 5 1/4 disks get, the more prone they are to develop errors. According to this page, the average life span of a floppy disk is six months. Most of the disks I’m converting are between 20 and 25 years old.
And of course, I run in to errors. If there is a silver lining to this cloud it’s that the errors aren’t always where data is stored. The conversion process tries to copy and archives every track and sector of a floppy disk. So far I’ve found lots of disks with errors on the inside or outside edge (Track 1 or Track 35), but that doesn’t always seem to affect the data stored on the disk. The only way to know for sure is to test every archive, something that would take years.
It takes roughly a minute to convert each disk to a D64 image, not including things like sorting, cataloging and testing. I have roughly 700 Commodore floppy disks — double sided. That’s 24 hours of conversion time alone; hopefully I can get them all done within a month or two, assuming I put all my other analog to digital conversions on hold. Testing each one could take a year.
The most common question people ask me about this is, “why are you doing this?” Even my wife asked, “hasn’t somebody already done this?” For the most part, yes. 95% of what I’m archiving has already been archived. Through Google, I could find 95% of the programs on my disks and download them all in a single day. That leaves 5%, however, that aren’t out there. 5% of my programs are things I, or friends of mine, wrote or created. There are pictures, letters, stories, demos and even programs that my friends and I created. There are things on these disks that I have the only known copy of. It is a race against time to archive these things on to a new media that is not deteriorating on a daily basis. In D64 format, these disk images can live on forever. It is a way to finalize my old C64 collection, to set it in stone and share it with the world. I’m not sure that the world’s that interested in it, but it’s something I feel like I need to do.
The hardest part of the entire process is not getting sidetracked by playing each disk.
For at least a decade, the problem with emulation has not been technological in nature. For several years now, modern computers have been able to, for all intents and purposes, faithfully reproduce older computers, videogame consoles, and arcade machines. The difference between emulation and “the real deal” is all the other things that went along with those old gaming experiences — and one of the most memorable things about those old games were their controls. Playing Atari games doesn’t feel right to me unless I’m using an Atari joystick, and playing arcade games, no matter how accurately MAME reproduces their sounds and graphics, does not feel right unless I’m standing in front of an arcade machine’s control panel.
Shortly after getting my Commodore 64 back in 1985, I got my favorite joystick of all time. Made by Kraft, the joystick had a short, black stick and a base the same color as the Commodore 64 itself. It also had a small switch on the bottom that swapped the stick between 4-way and 8-way mode. I’m sure a lot of it is just what you grew up with, but I hated all the Commodore joysticks that included buttons on top of the sticks (Wico, Thrustmaster, Boss, etc.) The Kraft’s small size allowed it to be held much like the Epyx 500 sticks (which came out a few years later). My friend Jeff owned the Epyx sticks and, while I liked them too, the Kraft was always my favorite.
After almost twenty years of off-and-on usage, my old Kraft finally gave out on me. At first, it started having problems going left. You could still make it go left, but you had to press the small stick really hard. Unfortunately, the small stick wasn’t meant for that kind of pressure and it quickly bent before breaking. I’ve tried a few other joysticks (including original Atari 2600 joysticks) on my old Commie, but games haven’t felt the same since. After a year or two of missing that old Kraft, I did what pretty much everybody looking for old things does.
I turned to eBay.
I found a few of the old joysticks online, but I passed them by due to high prices. Most of the ones I saw were selling for $40 or more. Apparently, other people were interested in the sticks as well. After almost a year of searching I finally got one for $20. Finally! When the joystick arrived it was well-used, but at least it worked. I quickly hooked the stick up and got back to playing. In the back of my mind, I wondered how much life this stick had left in it. I kept my eBay searches going, in hopes of a better deal. Eventually, I found one. Four, to be exact.
A month or two ago I found someone selling four Kraft joysticks, still new in the box. The best part of the deal was, the seller was only asking $5 per joystick, and was willing to combine shipping. I bought all four in a heartbeat. When the joysticks arrived I was surprised to find they were black in color with a red firing button. Apparently Kraft made two different color combinations — a black/red combo (for the Atari 2600) and a beige/black combo (for Commodore 64 owners). Functionally, the sticks are the same (Commodore 64 and Atari 2600 joysticks are interchangable).
Considering my original Kraft stick lasted 20 years, I now own a lifetime supply of joysticks. Time to get gaming, I’d say!
H.O.G. – Handy Online Guides
Written by Rob “Flack” O’Hara
The Commodore 64 was a truly amazing machine, but its processing power is no match for the computers of today. With a clock speed of 1 megahertz and a display of 320×240 (16 colors), modern Pentium-based computers have no problem accurately emulating the Commodore 64.
There are several Commodore 64 emulators available for Windows-based PCs. One of the simplest to set up, configure and use is WinVICE. My goal in this article is to not only help you get WinVICE up and running, but also explain a little bit about how the Commodore 64 worked, and what makes WinVICE so neat.
The first thing you’ll need to do is download WinVICE. A simple Google search should turn up the latest version — this article was written using 1.7, but very little changes in the program’s GUI (most changes are to make WinVICE compatible with even more programs than it already supports). A semi-recent copy of WinVICE should always be available on VICETeam’s website: http://www.viceteam.org.
Once you’ve unzipped WinVICE into a suitable directory … that’s it! Wasn’t that easy? Of course, a computer (even a virtual one) isn’t much fun without any software. The WWW contains several very large Commodore 64 software libraries. There are several companies that have been gracious enough to release many of their old commercial Commodore 64 into the public domain. To avoid breaking any copyright laws, you should stick with those games. Websites like http://www.Lemon64.com and http://almighty.c64.org have large selections of legally available images for you to download. (And if you’re looking for a bit more, track down the Gamebase collection, which contains essentially every known Commodore program ever released.)
WinVICE handles three basic types of files: cartridge images, tape images, and drive images. Cartridge images are the least used of the three, if for no other reason than most cartridge-based games have been dumped to both tape and disk. Cartridge images usually end in the extension .CRT.
That leaves us with tape images and disk images. In the 1980s, Commodore disk drives were very expensive, often exceeding the cost of the computer itself! Disk drive prices did not drop in Europe for a long time. This led to the US market making the switch early on to floppy disk drives, while the European scene continued to store data on tapes for many years. Games on cassette tape were much cheaper but took an extremely long time to load. Disk-based games loaded much faster, but of course disk drives were much more expensive. In the end, it doesn’t really matter which you use with WinVICE as it handles both formats. Tape files (.t64, .p00, and .TAP) as well as disk images (.d64, .d71, .d81) load almost instantly in WinVICE. For this tutorial, I’ll be using a .d64 disk image, so if you want to play along at home; you’ll want to grab one too.
Go ahead and unzip your .d64 image somewhere on your PC and note the location. I’m going to go ahead and make a prediction and say that the file is … 171k! Was I right? A 1541 floppy disk held approximately 180k of information, including the header info. Without that, it’s around 171k in size.
Once you’ve got that .d64 prepared, go ahead and launch WinVICE. In the directory you unzipped WinVICE into, it should be the x64.exe file. Double click that file, and prepare to take a trip in the wayback machine to 1983.
The first thing you’ll notice is that 320×240 wasn’t very big. To make things easier on your eyes, click OPTIONS > DOUBLE SIZE. Now the window should be 640×480, and have a lot of lines through it since we just stretched the video signal. Go ahead and click OPTIONS > DOUBLE SCAN, and you should see the other lines fill in.
Since we’re already under Options, allow me to point out a couple other features. MAXIMUM SPEED should be set at 100%. Trust me, your super-duper-whiz-bang computer can emulate a Commodore 64 really, really quickly. Unless you want your Commodore 64 running at 1000x times its originally intended speed (which would make playing games quite a challenge), leave that at 100%.
Under Options you’ll also see TRUE DRIVE EMULATION. I recommend that you turn this on. Even though 1541 disk drives were notoriously slow (a fact that you can confirm yourself by turning TRUE DRIVE EMULATION on), you can tun into some compatibility issues by turning this off. Years ago someone suggested I leave TRUE DRIVE EMULATION turned on and then use ALT+W (Warp Mode) to max out the emulator’s loading times. That’s how I do it now and it works great. ALT+W disables the MAXIMUM SPEED limit we set earlier. When loading a game with TRUE DRIVE EMULATION enabled, just hit ALT+W and the loading time will literally zip by — just don’t forget to hit ALT+W again before playing the game or else you’ll be playing it 1000x faster than the original!
Also under OPTIONS is SWAP JOYSTICK. The Commodore 64 had two joystick ports. In the 10+ years the computer was made and the 15,000 games that were released for it, no one ever came up with a standard joystick port. About half the games available for the computer use port 1; the other half use port 2. I know. I don’t understand it either. On real Commodore 64s, users spent a lot of time plugging and unplugging their joysticks. On WinVICE, you won’t have to. Simply hit ATL+J, and your joystick will magically swap ports. If a game doesn’t seem to be responding, try hitting ALT+J and trying it again. You can see which joystick is active in the bottom right hand corner.
The only other thing you’ll need to do before starting your retro gaming session is setting up your joystick. WinVICE supports both PC Joysticks and keypads, so getting your input method of choice set up and configured shouldn’t be a problem. WinVICE supports my two USB gamepads perfectly for head-to-head play as well. You can see which joystick is enabled by checking the bottom right hand portion of the screen. There are two tiny + signs down there, one for Joystick 1 and one for Joystick 2. As you move your joystick around you will see the corresponding directions light up. The middle lights up when you hit the fire button.
The Commodore 64 used serial cables to connect peripherals together. Each device was given a number. The default number for a floppy disk drive was “8″. A directory was signified by a dollar sign (“$”). To get a directory of a floppy disk, users had to first type “LOAD “$”,8″, followed by LIST when it was done loading. Don’t let this scare you off because it won’t be on the final exam. In WinVICE, this is all done for you with one single click.
Click on FILE > AUTOSTART DISK/TAPE IMAGE. Now, browse to where your .d64 file is stored and single-click on it. See the window in the bottom left hand corner with file names in it? You just got the directory of the disk!
Back in the 1980s, to load a game on a true Commodore 64 users had to type “LOAD ‘FILENAME’,8,1″ followed by the RUN command. As you may have guessed, this has also been replaced with a simple click. Find the file on the d64 image you want to load and simply double click it. If you’re quick enough you may actually see the LOAD command appear on the blue Commodore screen!
Once you’ve got your program loaded, it’s game time! Here are a few basic hints to help you along:
- The Commodore 64 keyboard had four large function keys running down its right hand side. They read F1, F3, F5 and F7. You will find that those keys are often used, especially when setting options in games before they start.
- The majority of all Commodore 64 games supported the joystick. If the joystick doesn’t seem to be responding, try hitting ALT+J to swap joystick ports.
- The wildcard (“*”) was used on the Commodore 64 to load the first program on a floppy disk or tape drive. You can execute the LOAD “*”,8,1 command by simply double-clicking a .d64 file in the AUTOSTART DISK/TAPE IMAGE menu. You will use this method on disks that only have one game, or disks that have built in menu systems on them.
- The Commodore 64 used Atari 2600 compatible joysticks, which means that most games are designed to support 4/8 directions and one button. Some games, like Commando, use the space bar for a second button (in Commando, the space bar throws grenades). In many platform games, the button may shoot while a diagonal movement on the joystick may cause your character to jump. Likewise, in Buggy Boy, “up” on the joystick applies gas, while the fire button changes gears.
- Once you’ve loaded your game, don’t be afraid to hit ALT-ENTER and make WinVICE run in full screen mode!
- The Commodore 64 had no physical reset button. Some programs allowed the Commodore to “break” by hitting RUN/STOP and RESTORE at the same time (similar to hitting ALT+BREAK on your PC). Like ALT+BREAK, RUN/STOP + RESTORE didn’t work that well either. Usually when switching between games, users simply turned their Commodore’s off and back on again. If you have a reason to do that, you can select FILE > RESET > HARD. The SOFT reset is the same as hitting RUN/STOP + RESTORE.
- Remember that disk and tape images for the Commodore 64 aren’t ROMs. ROM is Read Only Memory. .t64 and .d64 are images of tapes and floppy disks.
- If you end up downloading “cracked” software, you will notice cracking screen intros. At that time it was common for cracking groups to mark their releases with an intro. It was not uncommon for the cracker, distributor, and maybe even a courier to stick their own intros onto games. Just hit space bar and you should skip past these screens. If you’ve never seen them before, you might check a couple of them out — quite often some of the best graphics and sound as well as newest program techniques made their way into these intros.
You may find some Commodore 64 games that span multiple disks. If a game prompts you to insert another disk, that is done by “attaching” that disk to the virtual disk drive (FILE > ATTACH DISK IMAGE). That’s a fancy way of saying “I just put a disk in the disk drive”.
WinVICE supports both snapshots and screenshots. A screenshot capture can be performed by either hitting ALT+C, or selecting the option from the SNAPSHOT menu. ALT+U allows users to capture audio from a program. This too can be selected from the SNAPSHOT menu. Like most other modern emulators, WinVICE also allows users to perform “snapshots”. Basically, this allows you to freeze the computer, and save that moment in time. For example, if there’s a jump in Impossible Mission you just can’t seem to make, you can take a snapshot of the game right before you attempt your leap. If you fall and plummet to your death, you can reload that snapshot and keep trying until you make it.
That’s basically all there is to getting started! Should you continue dabbling in the world of Commodore emulation, you might want to take time to read the readme file included with WinVICE. Also, besides WinVICE, there are several other Commodore 64 emulators out there, most of them free and each with slightly different features and compatibility lists, should you feel the need to experiment. Good luck!