Oldskooler Ramblings

the unlikely child born of the home computer wars

Archive for September 28th, 2008

The diskette that blew Trixter’s mind

Posted by Trixter on September 28, 2008

As an IBM PC historian, one aspect of my hobby is archiving gaming software.  (You can take that statement to mean anything you want — whatever you think of, you’re probably right.)  At the 2008 ECCC this past Saturday, a vendor wanted to offload his entire PC stock on me for $5, which I happily accepted since there was at least one title in there (Martian Memorandum) worth that much.  When I got home, however, I found two additional Avantage (Accolade’s budget publishing title) titles that have not yet been released “into the wild”.  This means there are no copies of these games floating around on Abandonware sites.  For me, this was like finding actual gold nuggets in a collection of Pyrite.

The two games I got were Mental Blocks and Harrier7, so they join my third Avantage title Frightmare.  I decided to archive all three properly, and it was when I got to Mental Blocks that I ran into something I’d never seen before: The manual for Mental Blocks claims that, for both C64 and IBM, you put the diskette in label-side up.  I thought that had to be a typo, since every single mixed C64/IBM or Apple/IBM diskette I have ever seen is a “flippy” disk where one side is IBM and the other side is C64 or Apple — until I looked at the FAT12 for the disk and saw that tons of sectors in an interleaved pattern were marked as BAD — very strange usage.

The Incredibly Strange FAT of Mental Blocks That Stopped Living And Became Mixed-Up Formats

The Incredibly Strange FAT of Mental Blocks That Stopped Living And Became Mixed-Up Formats

A DIR on the disk shows that only about 256K of it is usable as space, instead of 360K.  My Central Point Option Board’s Track Editor (TE.EXE) confirmed that every other track on side 0 cannot be identified as MFM data.  So the manual is correct, and this truly is a mixed-format, mixed-architecture, mixed-sided diskette.

This diskette has officially blown my mind.

This is the very first time I have ever seen something like this.  The data for the IBM program takes up more than 160KB as evidenced by a DIR.  The C64 1541 drive is a single-sided drive; IBM’s is double-sided. Based on all this, we can deduce how this diskette is structured and why:

– The IBM version of the game required more than 160KB (ie. needed more than one side of a disk), probably because it has a set of files for CGA/Herc (4/2 colors) and another for EGA/Tandy (16 colors) and either set will fit in 160K but both won’t
– The C64 version required around 80K, based on the fact that every other track is unreadable by an IBM drive
– The publisher had the requirement of using only a single disk to save on packaging and media costs
– Not wanting to limit the game to either CGA or EGA, someone at Artech (the developer) built the format of this diskette BY HAND so that DOS would not step on the C64 tracks, and somehow the C64 would also read/boot the disk

I don’t know how the C64 portion boots since track 0 sector 0 looks like a DOS boot sector, but quick research shows that C64 disks keep their index on track 18.  If anyone knows how C64 disks are read and boot, I’d love to know.

I think I need to go on a mission to discover who built the disk format(s) by hand to see what he was thinking.  Did he work on it for weeks, feverishly trying to figure out how to meet the publisher’s demands?  Or was he so brilliant that he did it all in a day or so, not thinking too much about it other than it was just another facet of his job?  Fascinating stuff!

Just goes to show that you can still get surprises in this hobby after 25 years, even after being considered one of the top 20 “subject experts” for PC oldwarez.  I guess you truly can never see it all.

Posted in Software Piracy, Vintage Computing | 180 Comments »