[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
INT 21 - DOS 2+ internal - TRANSLATE BIOS PARAMETER BLOCK TO DRIVE PARAM BLOCK
        AH = 53h
        DS:SI -> BIOS Parameter Block (see below)
        ES:BP -> buffer for Drive Parameter Block (see AH=32h for format)
Return: ES:BP buffer filled
Note:   for DOS 3+, the cluster at which to start searching is set to 0000h
          and the number of free clusters is set to FFFFh (unknown)

Format of BIOS Parameter Block:
Offset  Size    Description
 00h    WORD    number of bytes per sector
 02h    BYTE    number of sectors per cluster
 03h    WORD    number of reserved sectors at start of disk
 05h    BYTE    number of FATs
 06h    WORD    number of entries in root directory
 08h    WORD    total number of sectors
                for DOS 4+, set to zero if partition >32M, then set DWORD at
                  15h to actual number of sectors
 0Ah    BYTE    media ID byte
 0Bh    WORD    number of sectors per FAT
---DOS 3+---
 0Dh    WORD    number of sectors per track
 0Fh    WORD    number of heads
 11h    DWORD   number of hidden sectors
 15h 11 BYTEs   reserved
---DOS 4+ ---
 15h    DWORD   total number of sectors if word at 08h contains zero
 19h  6 BYTEs   ???
 1Fh    WORD    number of cylinders
 21h    BYTE    device type
 22h    WORD    device attributes (removable or not, etc)
---European MSDOS 4.00---
 15h    DWORD   total number of sectors if word at 08h contains zero
                (however, this DOS does not actually implement >32M partitions)

This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson