On 2 Nov 2001, Iggy Drougge wrote:
Haven't you ever ended up with a disk which you
don't know what it might
contain. For all intents and purposes, it might contain the VAX/MIPS sources.
=)
So what do you do? Plug it into every computer where it would fit? That could
become quite tiresome.
So, to get to the point, is there any software out there which might identify
what OS or filesystem is on a disk? It really shouldn't be too difficult, just
a matter of identifying some hundred partition tables, MBRs, RDBs or boot
blocks, right?
1) check for FM / MFM / GCR recording on the first side. You now know
density.
2) check the second side to determine SS / DS
3) check whether cylinder number fields match with cylinder you are on for
other than cylinder 0, to determine 48TPI / 96 TPI
4) check sector headers to determine bytes per sector, sectors per track
5) look at sectors near the beginning of disk and near middle, looking for
something that resembles a DIRectory structure
6) Look at DIR entries for what kind of OS
7) look for text on disk, or ANYTHING of known or recognizable form
look for which sector appears to follow other sectors for sector sequence
(skew, interleave) (Look for half a worm - find a sector that ends in mid
word, and find the sector where the rest of the word is)
8) look at second side and determine whether it alternates sides / goes
up side A and DOWNside B / goes up side A and UP side B
YES, all of those, and more are commonly used.
9) look for DIRectory entries for large files to determine block size,
block pointer sizes, etc.
That's a start. There are LOTS of further weirdities, many of which are
OS specific (such as an MS-DOS format where the Directory is NOT on track
0), or Various "Stand-alone BASIC" formats that have differing concepts of
disk center.
XenoCopy-PC has provision to do #1 through #4, and gray out formats from
the format selection menu that don't have the same physical parameters.
--
Fred Cisin cisin(a)xenosoft.com
XenoSoft
http://www.xenosoft.com
PO Box 1236 (510) 558-9366
Berkeley, CA 94701-1236