Rebooting the dead


This year, I cracked open a box of my old project disks from 1985. This is what happened.

Remaking the games would have been possible enough to do on it's own, but the real trick was in recovering these old disks and extracting the original data.

I went through two logic boards and three disk drives while building an old Apple //e computer from spare parts scavenged on the internet and garage sales.  Then there were the disks themselves, which were very old and hard to get to coorperate.

at one point I was holding the heat gun over the timing crystal to get it to boot up

The first one I tried had no label and didn't read, but I noticed on the bottom in dull pencil (see how I took care of my disks) the letters "DASA". I knew what it was and it took me all night but I got the first strip of bits from the drive. "Digital Audio Sampling Analysis". I later gave it a cooler name, "Dissector".


Dissector, the first digital sound tool I ever wrote in 1984. It's really the genesis of what got me into doing sound for games, no pun intended.

Rescuing these now was pretty close to never since the disks were falling apart

It was weeks of trial and error using forensic data recovery-style methods like deep sector scanning and dismantling the drive to clean the heads with alcohol after every pass. The board components were also old and unstable, at one point I was holding the heat gun over the timing crystal to get it to boot up because it would fail each time the air conditioner dropped below room tempurature.

Each disk was like finding an old treasure chest and picking the lock to see what was inside. Some of them were labelled, some were in such bad condition they were beyond saving, but the ones that recovered after 30 years sitting in an old box were actually pretty astonishing to see.

Using an emulator I was able to extract data over serial to a PC, many of these migrated with no problem but most of the ones that were really worth restoring were also the ones with the most reads and writes to the disk surface, so they were spotty and prone to read errors. Luckily, I was very disorganized back then and found that most of these that crashed were spread over multiple disks. Binaries of one were copied to another, assembler files with no complile or viseversa, many were unfinished or had memory leaks and so on.

Corrupt disk #15.

Rescuing these now was pretty close to never, since the disks were falling apart and very close to extinction. Some of them I had to load just the working parts into memory and copy out to a virtual disk one by one in blocks until I had a working version. It was pretty intense just to get a little game that fit into 128k of RAM, the max stock memory for that model.

All this got me thinking that there is so much that goes on in game development that many aren't aware of. The people behind these games, why they do what they do and how hard it really is to do a lot that goes on behind that screen and your controller. Restoring these took a lot of work but like most projects, it was a labor of love.

And it was a bitch.