Sign in with
Sign up | Sign in
Your question
Solved

Vintage Hard Drive format - FAT12, FAT16?

Last response: in Storage
Share
September 3, 2013 2:56:52 PM

Hello all,

this is my first post, and over the years this site has helped me tremendously!

Anyway, I am having a hard time determining the format of a hard drive I have, probably from 93-95, that is used in a CNC Machining center. The HDD itself is a Western Digital Caviar 2850; though it is not a brand issue, as I have many drives from many brands in these machines. I am by no means a beginner, and I have pretty much used every software available to clone this drive or at the very least be able to view the partitions it has, to no avail. I am certain my drive works as the machine I use it in is running.
Here is what I know about it. It should have 4 partitions. It does work I am able to read/write to it when it is installed in the machinery. The machine uses an NEC PC-9800 series computer running MS-DOS 6.22 which is installed on one of the partitions of the drive. The other partitions are for file and CNC software storage. I figured based on its age it would be FAT12 or FAT16 but any software that claims to be able to read this format can't. Anytime I connect it as a slave it always comes up "Unallocated". I made a little progress as when I used WinHex to open the drive, I can see fragments of ASCII text that make sense (ie: I see a string with the words Seicos Lambda 10L, which is the CNC machine software) but WINHEX tells me it is unallocated. My goal is to make an exact copy of this drive for a friend who had his drive crash. But without knowing the format and being able to see the configuration I can't make any progress. I appreciate any insight possible. Thanks!
a c 869 G Storage
September 3, 2013 4:25:39 PM

A clone program wouldnt care about the format of the drive and just copy it as is to the new one.
m
0
l
September 3, 2013 5:04:35 PM

The cloning programs will not clone Unallocated space, as it thinks the drive is empty. Therein lies my problem.
popatim said:
A clone program wouldnt care about the format of the drive and just copy it as is to the new one.


m
0
l
Related resources
a c 300 G Storage
September 4, 2013 2:16:12 AM

If you clone the drive, sector by sector, then you will get an exact copy, irrespective of the file system.

You could use Clonezilla:
http://clonezilla.org/

"For unsupported file system, sector-to-sector copy is done by dd in Clonezilla."

Can you show us the contents of sector 0? That's where the partition table should be located.
m
0
l
a c 869 G Storage
September 4, 2013 5:19:24 PM

clonezilla can do a sector clone but its in the advanced section
m
0
l
September 4, 2013 5:48:09 PM

I have tried Clonezilla a few times, but no matter what options I choose I get an error saying the Target partition is smaller than the source. It makes no sense because the target drive is 10.00 GB and the source is 800MB. Also, I am choosing to do a sector-to-sector clone and it still does not work. It is driving me nuts!!! I have tried all of the options but still get this error. I do not see how you could get this error as it is a direct clone sector by sector so it should just make a copy direct, right?
m
0
l
September 4, 2013 6:09:23 PM

Here are the contents of the first sector:



fzabkar said:
If you clone the drive, sector by sector, then you will get an exact copy, irrespective of the file system.

You could use Clonezilla:
http://clonezilla.org/

"For unsupported file system, sector-to-sector copy is done by dd in Clonezilla."

Can you show us the contents of sector 0? That's where the partition table should be located.

m
0
l
a c 300 G Storage
September 4, 2013 6:12:56 PM

Show us sector 0. That will tell us the drive's CHS configuration. Then you could try explicitly specifying these parameters in your BIOS setup.

Edit: Sorry, I didn't see your follow-up post.

Sector 0 does not have a standard MS MBR or partition table.
m
0
l
September 4, 2013 6:23:30 PM

I am not surprised it is not a standard MBR or partition table as it is not a normal system. But if I do a direct sector to sector clone, in theory the new drive should work as the old one did, correct? Even if the new drive is larger?

Thank you for your input.

fzabkar said:
Show us sector 0. That will tell us the drive's CHS configuration. Then you could try explicitly specifying these parameters in your BIOS setup.

Edit: Sorry, I didn't see your follow-up post.

Sector 0 does not have a standard MS MBR or partition table.


m
0
l
a c 300 G Storage
September 4, 2013 7:18:24 PM

Try selecting "Type 47" or "User" for the drive type in BIOS. Then use the CHS values reported by WinHex, ie 827/32/63.
m
0
l
a c 869 G Storage
September 4, 2013 7:37:00 PM



Actually, if you have the bios setting for the hdd from the CNC , set the pc up to the exact same figures.
m
0
l
a c 300 G Storage
September 4, 2013 7:37:51 PM

Have you tried to clone the drive using WinHex?

Tools | Disk Tools | Clone Disk

"This function copies a defined number of sectors from a source to a destination. Both the source and the destination can be either a disk (click the button with the disk icon) or a file (click the button with the file icon)."

http://www.x-ways.net/winhex/manual.pdf
m
0
l

Best solution

a c 300 G Storage
September 5, 2013 2:46:09 AM

It won't help you clone your drive, but FWIW here is my take on the contents of sectors 0, 1, and 2.

The first half of sector 0, from offsets 0x00 to 0xFF, appears to be the master boot code. I'm guessing that "IPL1" refers to the Initial Program Loader. The first two bytes (EB 0A) constitute a JUMP instruction which is typical of a boot loader. Offset 0xFF contains the typical 0x55AA signature.

The second half of sector 0 also contains a 0x55AA signature, possibly for compatibility with Microsoft, but the 4 partition table entries, from 0x1BE to 0x1FD, are blank, except for the "80 03 0D" bytes at the end of the 4th partition entry. I can't offer a guess as to what these may mean.

Sector 1 (offsets 0x200 to 0x3FF) appears to contain 4 partition entries, each occupying 32 bytes. The structure appears to be proprietary. The last 16 bytes of each partition entry appear to hold the name of the partition, while the first 16 bytes contain information that could possibly define the size and location of each partition.

I'm guessing that the first byte identifies the number of the partition, with 0xA1 being partition #1, 0xA2 = partition #2, and so on. The second byte could be the partition type. The remaining bytes appear to be arranged in groups of 4, and they appear to be little endian.

For example, I'm wondering whether the partition layout might be as follows:

Partition Num -- Start Offset -- End Offset

Partition #1 0x00010000 0x0C880000
Partition #2 0x0C890000 0x24100000
Partition #3 0x24110000 0x29F20000
Partition #4 0x29F30000 0x2FD40000

Sector 2 (offsets 0x400 to 0x5FF) appears to contain more boot code. As before, the first three bytes (E9 D1 02) constitute a JUMP instruction which causes the code to jump around the NEC data block.

It might be of interest if you could point WinHex to offsets 0x00010000, 0x0C890000, 0x24110000 and 0x29F30000. You might find a FAT12 or FAT16 boot sector or BIOS Parameter Block at these locations.
Share
September 9, 2013 2:24:22 PM

Hey all. I think I might have figured it out, not sure yet, but its a thought. The PC that the system uses for its controller is and NEC PC-9800, probably made around 92-94. The hard drive it had had so many sectors, heads, cylinders, etc. If I am correct in my thinking, I may need to make a direct clone with a hard drive that has the exact same parameters as the other, as the BIOS of the NEC motherboard may be hard-set for those parameters (though I currently dont know for sure), but I just can't think of any other way that a bit-by-bit direct sector copy would not work. I am cloning currently, and will post when I have an update.
m
0
l
!