It’s not too late to archive old disks

I have a collection of around 300 Commodore 64 5 1/4 disks. They were last used around 1995 and were kept in an unheated, sometimes damp room in my family home. It’s not all bad, I kept them in proper disk boxes so the disks were mostly upright during that time and not horizontal and pressing down on each other. For a long time I wondered about transferring the disks to more permanent and modern media.

When I had an Amiga I joined it and the C64 together using some sort of serial cable and an ASM programme I painstakingly typed into my C64 from the Amiga. Then when PCs became popular I hooked my 1541-II disk drive to the parallel port of my 486 and transferred over some of my own demos but nothing else. Unfortunately with the passage of time parallel ports became as rare as the Dodo and more complicated cables are now required which discouraged me from trying to build them.

So I did a little shopping last month.



On Ebay France I found an old Commodore 1541-II disk drive in pristine condition. The Irish Ebay site was useless and I couldn’t find any local drives. I bought a Zoom Floppy from Jim Brain in the USA. That’s a USB interface you can use to connect the 1541 to a modern PC. You can use the ordinary IEC cable that came with the 1541 or a parallel port variant to “nibble copy” protected disks.

Shortly after ordering both of those I read this post saying it was too late to archive disks. The author, Jason Scott, warned that we had left it too long to move everything off old floppy disks and other magnetic media. Too much time had elapsed. The magnetic signature of the data would have degraded, the media dirty and unusable. I was worried.

Back in the day I had swapped disks with people all over Europe and further beyond. It was my first contact with people from Germany, Denmark, Poland, Belgium and elsewhere. Stuck on those disks were notes and personalised collections of demos and programmes that couldn’t be found online.

The disk drive arrived first, then a few days later the Zoom Floppy interface. Was it too late? Thankfully no.

I’ve transferred 243 disks now and I’m not finished yet. I couldn’t rescue all the disks I tried. In some the media had stuck to the outer covering. In others the magnetic media was so dirty it wasn’t readable. By the time I got to 180 double sided disks done the disk drive packed it in giving the ominous “74, DRIVE NOT READY” error. All it took was a swipe of an alcohol swab over the drive head and all was right with the world again. Then I retried one of Iain’s disks and it died again so that disk will remain uncopied! As luck would have it some of the disks that would inevitably fail were those I used often and had snippets of code, graphics or music on them! I guess less than 10% failed however which isn’t bad for 20 year old magnetic media.

After a number of failures I went searching online for disk images when I recognised directory listings. CSDB is invaluable, and the Binary Zone disks section lists all the disks they offered. I remember buying demos from there so it was great to get the disk images. I sent Kenz a PayPal donation to thank him for his efforts.

I found many interesting things, including stuff that isn’t online. Some of it I have to talk to a few people about but I found something called DMSREAD (and related utilities) for creating disk images. The nice thing about it was that it would break up the image into smaller files so you could squeeze in an extra disk at the end of a double sided disk. Very important when you had to pay postage! Nothing about the C64 version online that I can find.

Setting up the Zoom Floppy was easy. It comes with no documentation (beyond a copy of the GPL) but the xum1541 homepage has the required install files. I used CBMXfer and GUI4CBM4WIN, both frontends to the Open CBM library to read the disks.
Also read about Rob’s experiences with the Zoom Floppy. I definitely recommend it if you need to connect a Commodore drive to a modern PC!

Once I’m satisfied with my archive I’ll probably throw out the disks but can they be recycled? I presume so. I’ll miss them though. A directory listing of D64 images can’t hope to compete with the variety of disk covers and hand written labels!

This 5 years of my personal data amounted to less than 130MB of data. I’ll run through that amount of space today in half an hour of taking photos so I shudder to think how much storage I’ll need in another 20 years time. I use 1.6TB of the space on an external 2TB drive and I find that external USB drives fail every 2-3 years. I’m currently waiting on a new 2TB drive to replace two 1TB drives that died recently (they mirrored each other so no data lost, unless this 2TB drive dies. Gulp!) but I’ll probably go down the route of a gigabit network and a NAS when I can afford it. Any suggestions for a quiet NAS enclosure are more than welcome in the comments section please!

Amazing C64 and Speccy Pixel Art

Computers have always been home to amazing artwork. The C64 has so many graphics modes that artists were spoiled for choice near the end of the machine’s life. Luckily, artists are still working on the machine and releasing stuff even now!



You can find some amazing Commodore 64 artwork on c64pixels.com and it’s even sorted by graphics format like hires, FLI and others.

There’s also a comprehensive and detailed collection at CSDB of course but it does have a gallery. You’ll have to click through to each image to view it.





Here’s a wonderful ZX Spectrum gallery. The Speccy was known for attribute clash but despite this you can create really amazing work if you know what you’re doing. Check out this Binary Zone tribute to Speccy artist David Thorpe. You will recognise the loading screens!

Mastering Machine Code on your Commodore 64

Before the internet became popular and the web was still in diapers I had a Commodore 64 at home. “Mastering Machine Code on your Commodore 64″ by Mark Greenshields was the first programming book I owned that wasn’t full of BASIC listings and opened my eyes to the wonders of low level assembly development. It was a daunting task learning machine code on my own but I devoured the book and learned so much by looking at the code in demos and games of the time.

The book was originally published in 1984, and I discovered it in a small bookshop next to Paul Street Shopping Centre in Cork sometime in 1990 or 1991. I still remember the excitement I felt at finding any book on the subject. The city library had books on computers, even one or two on building robots and things you could connect to a computer but nothing that explored the C64 in depth.

Based on what I learned in that book and from hacking demos with the aid of an Action Replay I was able to do quite a bit. Nothing amazing but I’m proud of what I did along with others in my demo group way back 20 years ago. I was 16 at the time. I wonder what I’d be hacking on now if I was that age?

You can find a zip file with all our demos in this post. Commodore 64 emulator required!

While flicking through the book I stumbled upon a favourite section, the one on interrupts which I’ve scanned and posted the first two pages of in this post. Here’s another doc on this subject, with the same example code flashing the border 60 times a second. Happy memories.

What was your first programming book?

Ghosts ‘n Goblins is much easier..

Games are a hell of a lot easier when they’re trained! Ghosts ‘n Goblins was one of the first games I dived into to see how it worked back in the day. Earlier I played a remix of it’s soundtrack and fired up the game afterwards. I remembered it was hard but compared to games today it’s a demon!

Luckily it was trained and my son and I had an enjoyable half hour shooting the baddies and jumping from platform to platform. I wish the compatible joysticks from back then had more than one button, left/right and up to diagonal jump is a PITA!

In case you’re wondering, a trained game is where the game has been hacked and various cheats added. Usually a fancy intro with swirling graphics and music is added at the start and the group that has hacked the game give you the option of adding infinite lives, time, invulnerability or whatever suits the games. Practically every C64 game you’ll find online has these features now. :)

Reverse Engineering the MOS 6502

This is the first part of a great presentation given by Michael Steil at 27C3 last year. The 6502 was the CPU used on many 8 bit computers of the eighties like the Commodore 64, Apple I and II and NES.

It’s an hour long presentation split into 6 parts, I’ve only watched the part above but it brings me back 20 years when I used to code in assembler using an Action Replay cartridge on my C64.

Check out this post for the rest of the presentation. I’ll be watching them later tonight.