ESP8266
|
BIOS parameter block. More...
Public Attributes | |
uint16_t | bytesPerSector |
uint8_t | sectorsPerCluster |
uint16_t | reservedSectorCount |
uint8_t | fatCount |
uint16_t | rootDirEntryCount |
uint16_t | totalSectors16 |
uint8_t | mediaType |
uint16_t | sectorsPerFat16 |
uint16_t | sectorsPerTrtack |
uint16_t | headCount |
uint32_t | hidddenSectors |
uint32_t | totalSectors32 |
uint32_t | sectorsPerFat32 |
uint16_t | fat32Flags |
uint16_t | fat32Version |
uint32_t | fat32RootCluster |
uint16_t | fat32FSInfo |
uint16_t | fat32BackBootBlock |
uint8_t | fat32Reserved [12] |
BIOS parameter block.
The BIOS parameter block describes the physical layout of a FAT volume.
uint16_t biosParmBlock::bytesPerSector |
Count of bytes per sector. This value may take on only the following values: 512, 1024, 2048 or 4096
uint16_t biosParmBlock::fat32BackBootBlock |
If non-zero, indicates the sector number in the reserved area of the volume of a copy of the boot record. Usually 6. No value other than 6 is recommended.
uint16_t biosParmBlock::fat32Flags |
This field is only defined for FAT32 media and does not exist on FAT12 and FAT16 media. Bits 0-3 – Zero-based number of active FAT. Only valid if mirroring is disabled. Bits 4-6 – Reserved. Bit 7 – 0 means the FAT is mirrored at runtime into all FATs. – 1 means only one FAT is active; it is the one referenced in bits 0-3. Bits 8-15 – Reserved.
uint16_t biosParmBlock::fat32FSInfo |
Sector number of FSINFO structure in the reserved area of the FAT32 volume. Usually 1.
uint8_t biosParmBlock::fat32Reserved[12] |
Reserved for future expansion. Code that formats FAT32 volumes should always set all of the bytes of this field to 0.
uint32_t biosParmBlock::fat32RootCluster |
Cluster number of the first cluster of the root directory for FAT32. This usually 2 but not required to be 2.
uint16_t biosParmBlock::fat32Version |
FAT32 version. High byte is major revision number. Low byte is minor revision number. Only 0.0 define.
uint8_t biosParmBlock::fatCount |
The count of FAT data structures on the volume. This field should always contain the value 2 for any FAT volume of any type.
uint16_t biosParmBlock::headCount |
Number of heads for interrupt 0x13. Not used otherwise.
uint32_t biosParmBlock::hidddenSectors |
Count of hidden sectors preceding the partition that contains this FAT volume. This field is generally only relevant for media visible on interrupt 0x13.
uint8_t biosParmBlock::mediaType |
This dates back to the old MS-DOS 1.x media determination and is no longer usually used for anything. 0xF8 is the standard value for fixed (non-removable) media. For removable media, 0xF0 is frequently used. Legal values are 0xF0 or 0xF8-0xFF.
uint16_t biosParmBlock::reservedSectorCount |
Number of sectors before the first FAT. This value must not be zero.
uint16_t biosParmBlock::rootDirEntryCount |
For FAT12 and FAT16 volumes, this field contains the count of 32-byte directory entries in the root directory. For FAT32 volumes, this field must be set to 0. For FAT12 and FAT16 volumes, this value should always specify a count that when multiplied by 32 results in a multiple of bytesPerSector. FAT16 volumes should use the value 512.
uint8_t biosParmBlock::sectorsPerCluster |
Number of sectors per allocation unit. This value must be a power of 2 that is greater than 0. The legal values are 1, 2, 4, 8, 16, 32, 64, and 128.
uint16_t biosParmBlock::sectorsPerFat16 |
Count of sectors occupied by one FAT on FAT12/FAT16 volumes. On FAT32 volumes this field must be 0, and sectorsPerFat32 contains the FAT size count.
uint32_t biosParmBlock::sectorsPerFat32 |
Count of sectors occupied by one FAT on FAT32 volumes.
uint16_t biosParmBlock::sectorsPerTrtack |
Sectors per track for interrupt 0x13. Not used otherwise.
uint16_t biosParmBlock::totalSectors16 |
This field is the old 16-bit total count of sectors on the volume. This count includes the count of all sectors in all four regions of the volume. This field can be 0; if it is 0, then totalSectors32 must be non-zero. For FAT32 volumes, this field must be 0. For FAT12 and FAT16 volumes, this field contains the sector count, and totalSectors32 is 0 if the total sector count fits (is less than 0x10000).
uint32_t biosParmBlock::totalSectors32 |
This field is the new 32-bit total count of sectors on the volume. This count includes the count of all sectors in all four regions of the volume. This field can be 0; if it is 0, then totalSectors16 must be non-zero.