Technical information
© Jean Louis-Guérin – V1.2a – September 2014 Page 56 / 69
RES
0x0e
2
Reserved sector count. The number of sectors before the first FAT in the file
system image (including boot sector). Typically 1 for FAT12/FAT16 and 32 for
FAT32.
NFATS
0x10
1
Number of file allocation table following the reserved sectors. Almost always 2.
The second FAT is used by recovery program if the first FAT is corrupted.
NDIRS
0x11
2
Maximum number of root directory entries
18
. This value should always be such
that the root directory ends on a sector boundary (i.e. such that its size becomes a
multiple of the sector size). 0 for FAT32.
NSECTS
0x13
2
Total number of sectors on the drive. If the size of the drive is greater than 32MB,
this field is set to zero and the number of sectors is specified in the huge number
of sectors field at offset 0x20 (HSECTS). 0 for FAT32
MEDIA
0x15
1
Media descriptor: Usually 0xF8 for Hard disk. Same value of media descriptor
should be repeated as first byte of each copy of FAT.
SPF
0x16
2
Number of Sectors per File Allocation Table
SPT
0x18
2
Number of Sectors per single Track
NHEADS
0x1a
2
Number of heads on the drive
NHID
0x1c
4
Number of Hidden sectors
HSECTS
0x20
4
Huge number of Sectors (when more than 65535 sectors) otherwise, see
NSECTS at offset 0x13. This field allow support for drives larger than 32MB
10.6.1.1 Extended BIOS Parameter Block used by FAT12 and FAT16:
Name
Offset
Length
Description
DRNUM
0x24
1
Drive ID: Specifies whether the drive is the first hard disk drive (value 0x80) or not
(value 0x00). Used internally by MS-DOS
0x25
1
Reserved
EBSIG
0x26
1
Extended boot signature. Value is 0x29 (or 0x28).
VOLID
0x27
4
Volume serial number
VLAB
0x2b
11
Volume Label, padded with blanks (0x20).
FSTYPE
0x36
8
FAT file system type, padded with blanks (0x20), e.g.: "FAT12 ", "FAT16 ". This
is not meant to be used to determine drive type; however, some utilities use it in
this way.
0x3E
448
Operating system boot code
0x1FE
2
Boot sector signature (0x55 0xAA)
10.6.1.2 Extended BIOS Parameter Block used by FAT32:
Offset
Length
Description
0x24
4
Big Sectors per FAT
0x28
2
Extended FAT Flags
0x2a
2
FS Version
0x2c
4
First Cluster number of root directory
0x30
2
Sector number of FS Information Sector
0x32
2
Sector number of a copy of this boot sector
0x34
12
Reserved
0x40
1
Physical Drive Number (Drive ID)
0x41
1
Reserved for NT
0x42
1
Extended boot signature.
0x43
4
ID (serial number)
0x47
11
Volume Label
0x52
8
FAT file system type: "FAT32 "
0x5a
420
Operating system boot code
18
This value should always be such that the root directory ends on a sector boundary (i.e. such that its size becomes a multiple
of the sector size).