Developer manually reconstructs game he made years ago from a corrupted Apple II floppy disk

You can even try it out for yourself.

Ben Zotto game
Source: Ben Zotto on Twitter

A developer and digital forensics researcher, in a rather dramatic process, has successfully reconstructed a game he created when he was in elementary school. He retrieved the game from a corrupted Apple II floppy disk.

In a 63-tweet-long thread, developer Ben Zotto documented the process of retrieving a retro game titled “Wonderland 2” that he made for Apple II computers back when he was still in elementary school. Apparently, the Apple II floppy disk on which he stored the game was corrupted, so he decided to embark on a journey of applying his forensic skills to reconstruct the game.

The game in question is a simple betting game allowing players to virtually bet on Greyhounds racing. It’s also a “fancier sequel” to a game he made earlier, Ben says.

Initially, when he tried to boot the disk, it returned an I/O error while cataloging it as a ProDOS disk. ProDOS was the operating system that ran on Apple II computers from 1983 to 1993.

He then went on to image the disk to an Applesauce USB Disk Controller. This enabled him to map out the bad sectors on the 140 Kilobyte disk. He also referred a ProDOS 8 Technical Reference Manual created by Apple to advance in the process when he discovered that the disk was indeed a ProDOS volume divided into blocks.

Later, he mapped each sector on the disk to their respective blocks manually since it wasn’t directly mapped. The manual came in handy while figuring out how to map those sectors. He then went on to decode the file entries in a particular segment by hand, which seems like a frame right out of Mr. Robot.

decoding apple II game
Ben decoded file entries in a particular segment by hand.

Ben finally figured out how to reconstruct the data. However, since the floppy disk was corrupted, the retrieval came at an expense of the first 256 bytes of the “LIGHTNING” image. “LIGHTNING,” in this case, is one of the dog’s names included in the game. Other names include LUCKY.CHARM, CHAMP, TWENTY.BUCKS, JACKSON, and OLD.MOE.

The Eureka moment was when the game booted into an Apple IIe emulator since the game was written on an Apple IIc+. The way he was able to boot into the game was by patching up the disk image and editing it as a raw DSK file which enables the game to run on an emulator.

Those 256 bytes that were lost were evident while viewing the dog named LIGHTNING in the game in the form of random black stripes.

LIGTHNING
LIGTHNING with a bunch of black stripes indicating the lost 256 bytes.

Fortunately, for us, Ben also offered the DSK file for everyone to try out. You can pop it in the Scullinsteel Apple IIe simulator which runs entirely on the browser.

It’s interesting to see an 8-Bit game made over 30 years ago being reconstructed in dramatic documentation of the process. It shows how simple, yet somehow fun, games were back then and how far we’ve come. You can read Ben’s entire journey in the form of a Twitter thread here.

Ben Zotto is a developer and digital forensics researcher who also developed Penultimate, the popular iPad digital handwriting app that got acquired by Evernote.

Let us know your thoughts in the comments section below.