FAT32 Partition Types
The following table displays all valid partition types and their corresponding values for use in the Part_FileSystem member of the s_partition structure.
Partition Type Values
Value | Description |
---|---|
PART_UNKNOWN (00h) | Unknown |
PART_DOS2_FAT (01h) | 12-bit FAT |
PART_DOS3_FAT (04h) | 16-bit FAT. Partitions smaller than 32MB. |
PART_EXTENDED (05h) | Extended MS-DOS Partition |
PART_DOS4_FAT (06h) | 16-bit FAT. Partitions larger than or equal to 32MB. |
PART_DOS32 (0Bh) | 32-bit FAT. Partitions up to 2047GB. |
PART_DOS32X (0Ch) | Same as PART_DOS32 (0Bh), but uses Logical Block Address Int 13h extensions. |
PART_DOSX13 (0Eh) | Same as PART_DOS4_FAT (06h), but uses Logical Block Address Int 13h extensions. |
PART_DOSX13X (0Fh) | Same as PART_EXTENDED (05h), but uses Logical Block Address Int 13h extensions. |
s_partition (FAT32)
Values for head and track are 0-based. Sector values are 1-based. This structure is implemented in Windows OEM Service Release 2 and later.
s_partition STRUC
Part_BootInd DB ?
Part_FirstHead DB ?
Part_FirstSector DB ?
Part_FirstTrack DB ?
Part_FileSystem DB ?
Part_LastHead DB ?
Part_LastSector DB ?
Part_LastTrack DB ?
Part_StartSector DD ?
Part_NumSectors DD ?
s_partition ENDS
Members
Member Name | Description |
---|---|
Part_BootInd | Specifies whether the partition is bootable or not. This value could be set to PART_BOOTABLE (80h), or PART_NON_BOOTABLE(00h). The first partition designated as PART_BOOTABLE is the boot partition. All others are not. Setting multiple partitions to PART_BOOTABLE will result in boot errors. |
Part_FirstHead | The first head of this partition. This is a 0-based number representing the offset from the beginning of the disk. The partition includes this head. |
Part_FirstSector | The first sector of this partition. This is a 1-based, 6-bit number representing the offset from the beginning of the disk. The partition includes this sector. Bits 0 through 5 specify the 6-bit value; bits 6 and 7 are used with the Part_FirstTrack member. |
Part_FirstTrack | The first track of this partition. This is an inclusive 0-based, 10-bit number that represents the offset from the beginning of the disk. The high 2 bits of this value are specified by bits 6 and 7 of the Part_FirstSector member. |
PartFileSystem | Specifies the file system for the partition. The following are acceptable values: |
Value | Description |
PART_UNKNOWN(00h) | Unknown. |
PART_DOS2_FAT(01h) | 12-bit FAT. |
PART_DOS3_FAT(04h) | 16-bit FAT. Partition smaller than 32MB. |
PART_EXTENDED(05h) | Extended MS-DOS Partition. |
PART_DOS4_FAT(06h) | 16-bit FAT. Partition larger than or equal to 32MB. |
PART_DOS32(0Bh) | 32-bit FAT. Partition up to 2047GB. |
PART_DOS32X(0Ch) | Same as PART_DOS32(0Bh), but uses Logical Block Address Int 13h extensions. |
PART_DOSX13(0Eh) | Same as PART_DOS4_FAT(06h), but uses Logical Block Address Int 13h extensions. |
PART_DOSX13X(0Fh) | Same as PART_EXTENDED(05h), but uses Logical Block Address Int 13h extensions. |
Part_LastHead | The last head of the partition. This is a 0-based number that represents the offset from the beginning of the disk. The partition includes the head specified by this member. |
Part_LastSector | The last sector of this partition. This is a 1-based, 6-bit number representing offset from the beginning of the disk. The partition includes the sector specified by this member. Bits 0 through 5 specify the 6-bit value; bits 6 and 7 are used with the Part_LastTrack member. |
Part_LastTrack | The last track of this partition. This is a 0-based, 10-bit number that represents offset from the beginning of the disk. The partition includes this track. The high 2 bits of this value are specified by bits 6 and 7 of the Part_LastSector member. |
Part_StartSector | Specifies the 1-based number of the first sector on the disk. This value may not be accurate for extended partitions. Use the Part_FirstSector value for extended partitions. |
Part_NumSectors | The 1-based number of sectors in the partition. |