BIOSPARAMETERBLOCK

BIOS Parameter Block

Type
USHORT  usBytesPerSector; BYTE    bSectorsPerCluster; USHORT  usReservedSectors; BYTE    cFATs; USHORT  cRootEntries; USHORT  cSectors; BYTE    bMedia; USHORT  usSectorsPerFAT; USHORT  usSectorsPerTrack; USHORT  cHeads; ULONG   cHiddenSectors; ULONG   cLargeSectors; BYTE    abReserved[6]; USHORT  cCylinders; BYTE    bDeviceType; USHORT  fsDeviceAttr;

C Declaration Method
typedef struct

Fields

 * usBytesPerSector:Number of bytes per sector
 * bSectorsPerCluster:Number of sectors per cluster
 * usReservedSectors:Number of reserved sectors
 * cFATs:Number of FATs
 * cRootEntries:Number of root directory entries
 * cSectors:Number of sectors
 * bMedia:Media descriptor
 * usSectorsPerFAT:Number of secctors per FAT
 * usSectorsPerTrack:Number of sectors per track
 * cHeads:Number of heads
 * cHiddenSectors:Number of hidden sectors
 * cLargeSectors:Number of large sectors
 * abReserved[6]:Reserved
 * cCylinders:Number of cylinders defined for the physical device
 * bDeviceType:Physical layout of the specified device
 * 0 48 TPI low-density diskette drive
 * 1 96 TPI high-density diskette drive
 * 2 Small (3.5-inch) 720KB drive
 * 3 8-inch single-density diskette drive
 * 4 8-inch double-density diskette drive
 * 5 Fixed disk
 * 6 Tape drive
 * 7 Other (includes 1.44MB 3.5-inch diskette drive)
 * 8 R/W optical disk
 * 9 3.5-inch 4.0MB diskette drive (2.88MB formatted)


 * fsDeviceAttr:A bit field that returns flag information about the specified drive
 * Bit 0 Removable Media flag
 * 0 Media is removable
 * 1 Media cannot be removed
 * Bit 1 Changeline flag
 * 0 The physical device driver returns the value 0, Unsure if media has changed, from the Media Check function
 * 1 Device support determines that the media was removed since the last I/O operation.