MMC/SD card has weird MBR after WinXP formatting

Go To Last Post
4 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hello,

Has anyone found this problem or can confirm this:

I've been trying to reformat two different 16MB memory cards in Windows XP, other is SD and other is MMC.

The cards initially have FAT12 filesystem, but I want to change them to FAT16 filesystem by formatting them from Computer Management with custom cluster size. I know cluster size of 4 sectors (2k) or less will give more clusters than FAT12 can have, so the filesystem will be FAT16. And right I was, the filesystem itself is FAT16.

But the MBR partition table (sector 0) of the cards do not change. The filesystem type in MBR is still 0x01 (FAT12), while it should change to something else to represent FAT16 (0x04, 0x06 or 0x0E). I tried to force the partition type to one of the FAT16 values (0x06), but after disconnecting and connecting the card reader again the value was overwritten back to 0x01.

This sounds really weird to me, is this normal or am I doing something wrong here? Does Windows think that since the cards are so small, nobody will put FAT16 on them? Maybe I should try reformatting the cards in Linux or something?

Okay maybe this is not so serious but it just stinks that the MBR says something the partition is not!

- Jani

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I think that MS white paper about FAT formatting suggests that the Microsoft tools base their FAT decision (12, 16 or 32) solely on the number of sectors on the device so maybe that's how their format routine determines the entry to put into the MBR?

Cliff

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

It should actually be the number of clusters from where to determine what FAT filesystem is in question (the info is in fatgen103.pdf from MS). By itself the FAT type cannot be determined from the number of sectors. But maybe the FS type in MBR depends solely on sector count, we don't know, the MS document does not say anything about MBR.

So I guess I must ignore the partition type in MBR, maybe a check that it is any of the valid FAT types, and then use the cluster count to calculate FAT type.

Not a problem, but still I think it is wrong to put wrong FS type into the MBR.

- Jani

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I agree, but what you are attempting I guess might be described as "unusual" and maybe it's a test case that MS never tried for the MBR generation stuff?

Cliff