This is a subset of the data found in the Boot Sector Layout used by
device drivers.  The 'Build BPB' device driver command (DvRq 02H) expects
the driver to fill a buffer in this layout.

Note the DOS 4.0 extensions (Extended BPB) at the end of the block.

BPBRec
Offset Size Contents
                                                                 
+0      2  wSectSize    bytes per sector (usually 512; 200H)
+2      1  bClustSects  sectors per allocation unit (cluster)
+3      2  wResSects    boot and reserved sectors
+5      1  bFatCnt      number of File Allocation Tables.  See FAT.
+6      2  wRootEntries max number of 32-byte DirEntryRecs in root
+8      2  wTotSects    total number of sectors in media
0000H means >32 MB, so use lBigTotSects
+0aH      1  bMedia       media descriptor (same as 1st byte in FAT)
+0bH      2  wFatSects    number of sectors in one FAT
                          Extended BPB additions
+0dH      2  wSectsPerTrk sectors per track
+0fH      2  wHeads       number of read/write heads
+11H      4  lHidSects    hidden sectors (ignore hiword in pre-DOS 4.0)
+15H      4  lBigTotSects 32-bit TotSects in volume (partitions > 32M)
25               Length of a BPBRec (was 13 in pre-DOS 4.0)

wResSects  The number of "reserved sectors", starting with absolute
sector 0.  This counts how many sectors come before the first
FAT in the partition.  It is usually 0001H; that is only the
boot sector comes before the first FAT sector.

bFatCnt  The number of File Allocation Tables.  Usually 02H; The second
FAT is just a copy of the first.

wRootEntries  The size of the root directory, given in 32-byte units.  The
root directory has a fixed size, but subdirectory space is
allocated as needed.

wTotSects  Total size of the media, in sectors (wSecSize bytes each).
DOS 4.0+: This field will be 0000H to indicate a DOS partition
that is larger than 32 MB.  In that case, the total sector
count is the 32-bit value lBigTotSects.

bMedia  Might identify the media.  Media Descriptor.

                                      Extended BPB (DOS 4.0+)
These fields may help the driver and/or disk utility programs
to understand the media better.  Also, you may need to know
this stuff when using BIOS Disk I/O (INT 13H).

wSectsPerTrk  Sectors per track (one surface of one platter)

wHeads  Disk read/write heads (total surfaces all platters)

lHidSects  Sectors before the start of the 1st FAT in the partition.

lBigTotSects  Dword total sectors in the partition.  When a partition is
larger than 32 MB, there are more than 65535 sectors--the
actual count won't fit in wTotSects so it goes here.

- -

BPB: BIOS Parameter Block