INT 21 - DOS 2+ internal - TRANSLATE BIOS(Basic Input/Output System) A set of standardized calls giving low-level access to the hardware.  The BIOS is the lowest software layer above the actual hardware and serves to insulate programs (and operating systems) which use it from the details of accessing the hardware directly. PARAMETER BLOCK TO DRIVE PARAM BLOCK
	AH = 53h
	DS:SI -> BIOS Parameter BlockThe BIOS Parameter Block stores the low-level layout of a drive.	See also INT 21h Function 53h. (see #01663)
	ES:BP -> buffer for Drive Parameter BlockThe DOS Drive Parameter Block stores the description of the media layout for a logical drive, as well as some housekeeping information.  See also INT 21h Function 1Fh and INT 21h Function 32h. (see #01395 at AH=32h)
	    DBP drive byte must be set to valid drive (Windows95-OSR2)
	---Windows95---
	CX = signature 4558h ('EX') for FAT32 extended BPBsee BIOS Parameter Block/DPBsee Drive Paramter Block (see #01664)
	DX = signature 4152h ('AR') for FAT32 extended BPBsee BIOS Parameter Block/DPBsee Drive Paramter Block
Return: ES:BP buffer filled
Notes:	for DOS 3.0+, the cluster at which to start searching is set to 0000h
	  and the number of free clusters is set to FFFFh (unknown)
	if the number of sectors per cluster is set to zero, MS-DOS will hang
	  at startup because it computes the internally-used shift count by
	  shifting this value right until the carry flag is set; since this
	  will never happen when the field is zero, MS-DOS hangs
	not supported by Windows NT 3.1


Format of BIOS Parameter BlockThe BIOS Parameter Block stores the low-level layout of a drive.	See also INT 21h Function 53h.:
Offset	Size	Description	(Table 01663)
 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.0+, set to zero if partition >32M, then set DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address. at
		  15h to actual number of sectors
 0Ah	BYTE	media ID byte (see #01356)
 0Bh	WORD	number of sectors per FATsee File Allocation Table
---DOS 2.13---
 0Dh	WORD	number of sectors per track
 0Fh	WORD	number of heads
 11h	WORD	number of hidden sectors
---DOS 3.0+ ---
 0Dh	WORD	number of sectors per track
 0Fh	WORD	number of heads
 11h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	number of hidden sectors
 15h 11 BYTEs	reserved
---DOS 4.0+ ---
 15h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	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)
---DR DOS 5+ ---
 15h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	total number of sectors if word at 08h contains zero
 19h  6 BYTEs	reserved
---European MS-DOS 4.00---
 15h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	total number of sectors if word at 08h contains zero
		(however, this DOS does not actually implement >32M partitions)
SeeAlso: #01395,#01664


Format of Extended BIOS Parameter BlockThe BIOS Parameter Block stores the low-level layout of a drive.	See also INT 21h Function 53h.:
Offset	Size	Description	(Table 01664)
 00h 25 BYTEs	same as standard DOS 4-6 BPBsee BIOS Parameter Block (see #01663)
 19h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	sectors per FATsee File Allocation Table if WORD at 0Bh is 0000h
 1Dh	WORD	extended flags
		bit 7: do not mirror active FATsee File Allocation Table to inactive FATs
		bits 6-4: reserved (0)
		bits 3-0: the 0-based FATsee File Allocation Table number of the active FATsee File Allocation Table
		    (if mirroring disabled)
 1Fh	WORD	file system version (high byte=major, low byte=minor)
		0000h = Win95-OSR2
 21h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	starting cluster number of root directory
 25h	WORD	file system information sector number (see also #01788)
		FFFFh if none
 27h	WORD	sector number of backup boot sector (FFFFh if none)
 29h  6 WORDs	reserved
SeeAlso: #01560,#01787