Close

Zeroing In

A project log for Hacking Yamaha Disklavier Floppies

An effort to decipher MIDI disks from the 1990s

tom-nardiTom Nardi 04/15/2019 at 21:540 Comments

As an extension of my previous work, the script can now determine the position of the track within the disk image as well as the length. These two variables can be used in conjunction with dd to successfully pull individual files out, but ultimately I'm going to add that ability into the program without the need for any manual work. I've sent a handful of manually extracted tracks to my brother for verification, and waiting to hear the verdict.

To do this, I'm searching for the start and end byte sequences of the tracks. But as par for the course with this project, I have at least one disk here that doesn't use the same end sequences as its peers. If there's one, there's probably more, so I'm trying to come up with some kind of alternate scheme to use in the event that the primary method doesn't work.

If the number of detected file start points don't match the number or end points, the program can kick into Plan B. I'm not 100% sure what that is yet, but in the absolute worst case I could simply assume that the end of each track is just 1 byte lower than the start of the next track. But of course that won't work for the last track on the disk so still not a complete solution.

Discussions