plbyrd Posted May 17, 2015 Share Posted May 17, 2015 I'm trying to decipher the file format for the MicroFox/Micro Innovations filesystem using the replacement image for the first disk image supplied with the MicroFox 100MB kit. From what I can tell, it starts with a standard disk image as a directory block exists at $00000400. In that directory block is a mixture of junk that doesn't appear to lead to any valid data since none of the pointers lead to any valid data. So I've been trying to locate some table indicating the location of the various "partitions" in the file. What I have figured out is a list of valid "partitions" at the following locations. 00200000 RecipeFilr 00300000 Klondyke 00600000 SmartBasic 00000021 00900000 Smart_Filer 00F00000 Snowman 01200000 Klondyke 01800000 Blank 01A00000 Blank 01B00000 Addictus 01C00000 Blank 01E00000 Blank This data was discovered by simply following every $100000 bytes and looking for a directory block $400 bytes into each. I've searched the image for references to these locations and cannot find any, thus leading me to believe that these locations are somehow encoded into whatever table holds this data. If anyone has documentation about the Micro Innovations drive layout, that would be the awesome thing in the world. 1 Quote Link to comment Share on other sites More sharing options...
plbyrd Posted May 18, 2015 Author Share Posted May 18, 2015 After more careful analysis, I found the following directory structures: 00200000 RecipeFilr 00300000 Klondyke 00400000 Smart_Filer 00600000 SmartBasic 00800000 Snowman 00900000 Smart_Filer 00A00000 FlashCard 00C00000 Ltrs&Forms 00E00000 VideoTunes 00F00000 Snowman 01000000 Addictus 01200000 Klondyke 01400000 Blank 01500000 Ltrs&Forms 01600000 Blank 01800000 Blank 01A00000 Blank 01B00000 Addictus 01C00000 Blank 01E00000 Blank It does appear that the directories are always on a boundary of $00100000. That means the table I'm looking for may be using a 16-bit number to specify the offset of the "partition". If that's the case, these things will be nearly impossible to find. I'm gonna keep digging. Quote Link to comment Share on other sites More sharing options...
NIAD Posted May 18, 2015 Share Posted May 18, 2015 For technical details such as these, it's best to contact Doug Slopsema or Rich Drushel (Dr. D) via PM or email seeing as they are the two programmers who are currently maintaining and upgrading the IDE driver software that was originally developed by Tony Morehen in the early 90s. Quote Link to comment Share on other sites More sharing options...
plbyrd Posted May 18, 2015 Author Share Posted May 18, 2015 For technical details such as these, it's best to contact Doug Slopsema or Rich Drushel (Dr. D) via PM or email seeing as they are the two programmers who are currently maintaining and upgrading the IDE driver software that was originally developed by Tony Morehen in the early 90s. Thank you for pointing me in the right direction. I will contact them directly. I posted these message here because I didn't know who specifically to go to. Quote Link to comment Share on other sites More sharing options...
plbyrd Posted May 18, 2015 Author Share Posted May 18, 2015 OK, for posterity's sake I'm posting this here. What I've found is that I can create a bootable image by making a blank disk image of any size, copying in the boot block that loads a file named HARDDISK and then copy over both the HARDISK and FILEMAN files to the new image. Also, the name of the image's first directory does not matter, but the directory ID must be 55 AA 00 FF which I suppose is hard coded into the boot block's code. Now, I was able to view the partition table in the HARDDISK software once ADAMEm booted from this fresh disk image. I was able to create a new partition. Going to my hex editor I found my new partition at $00100000. So I copied the partition info and pasted into $00200000. Rebooted ADAMEm and it did not see the new partition. So I copied it again, and pasted it into $00300000... and it found it. SO, I was right, there does not appear to be a master table of partitions. Instead, it simply looks for "partitions" at odd boundaries of $00100000 and simply either finds a partition or doesn't. I hope that someone can validate what I'm saying so that I can document it on the ADAM Wiki with some confidence. I am already making the changes necessary to ADAMDsk to create these partitions. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.