INT 2F U - DOS 4.0+ DRIVER.SYS support - GET DRIVE DATA TABLE LIST              
	AX = 0803h
Return: DS:DI -> first drive data table in list (see #02601,#02602,#02603)
Note:	not available under DR DOS 5.0, but supported by Novell DOS 7 (using
	  the MS-DOS 4+ data table format)
SeeAlso: AX=0801h


Format of DOS 3.30 drive data table:
Offset	Size	Description	(Table 02601)
 00h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	pointer to next table (offset FFFFh if last table)
 04h	BYTE	physical unit number (for INT 13)
 05h	BYTE	logical drive number (0=A:)
 06h 19 BYTEs	BIOS Parameter BlockThe BIOS Parameter Block stores the low-level layout of a drive.	See also INT 21h Function 53h. (see also INT 21/AH=53h)
		Offset	Size	Description
		 00h	WORD	bytes per sector
		 02h	BYTE	sectors per cluster, FFh if unknown
		 03h	WORD	number of reserved sectors
		 05h	BYTE	number of FATs
		 06h	WORD	number of root dir entries
		 08h	WORD	total sectors
		 0Ah	BYTE	media descriptor, 00h if unknown
		 0Bh	WORD	sectors per FATsee File Allocation Table
		 0Dh	WORD	sectors per track
		 0Fh	WORD	number of heads
		 11h	WORD	number of hidden sectors
 19h	BYTE	flags
		bit 6: 16-bit FATsee File Allocation Table instead of 12-bit FATsee File Allocation Table
 1Ah	WORD	number of DEVICE OPEN calls without corresponding DEVICE CLOSE
 1Ch 11 BYTEs	volume label or "NO NAME    " if none (always "NO NAME" for
		  fixed media)
 27h	BYTE	terminating null for volume label???
 28h	BYTE	device type (see #01561 at INT 21/AX=440Dh"DOS 3.2+")
 29h	WORD	bit flags describing drive (see #02604)
 2Bh	WORD	number of cylinders
 2Dh 19 BYTEs	BIOS Parameter BlockThe BIOS Parameter Block stores the low-level layout of a drive.	See also INT 21h Function 53h. for highest capacity supported
 40h  3 BYTEs	???
 43h  9 BYTEs	filesystem type???, default = "NO NAME	"
		(apparently only MS-DOS 3.30 fixed media, nulls for removable
		  media and PC-DOS 3.30)
 4Ch	BYTE	least-significant byte of last-accessed cylinder number
---removable media---
 4Dh	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	time of last access in clock ticks (FFFFFFFFh if never)
---fixed media---
 4Dh	WORD	partition (FFFFh = primary, 0001h = extended)
 4Fh	WORD	absolute cylinder number of partition's start on physical
		  drive (always FFFFh if primary partition)
SeeAlso: #02602,#02603


Format of COMPAQ DOS 3.31 drive data table:
Offset	Size	Description	(Table 02602)
 00h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	pointer to next table (offset FFFFh if last table)
 04h	BYTE	physical unit number (for INT 13)
 05h	BYTE	logical drive number (0=A:)
 06h 25 BYTEs	BIOS Parameter BlockThe BIOS Parameter Block stores the low-level layout of a drive.	See also INT 21h Function 53h. (see #02603)
 1Fh  6 BYTEs	reserved fields from BPBsee BIOS Parameter Block above???
 25h	BYTE	flags
		bit 6: 16-bit FATsee File Allocation Table instead of 12-bit FATsee File Allocation Table
		bit 5: large volume???
 26h	WORD	device-open count???
 28h 11 BYTEs	volume label or "NO NAME    " if none (always "NO NAME" for
		  fixed media)
 33h	BYTE	terminating null for volume label
 34h	BYTE	device type (see #01561 at INT 21/AX=440Dh"DOS 3.2+")
 35h	WORD	bit flags describing drive (see #02604)
 37h	WORD	number of cylinders
 39h 25 BYTEs	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 for highest capacity drive supports
 52h  6 BYTEs	??? apparently always zeros
 58h	BYTE	least-significant byte of last-accessed cylinder number
---removable media---
 59h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	time of last access in clock ticks (FFFFFFFFh if never)
---fixed media---
 59h	WORD	partition (FFFFh = primary, 0001h = extended)
 5Bh	WORD	absolute cylinder number of partition's start on physical
		  drive (always FFFFh if primary partition)
SeeAlso: #02601,#02603


Format of DOS 4.0-7.0 drive data table:
Offset	Size	Description	(Table 02603)
 00h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	pointer to next table (offset FFFFh if last table)
 04h	BYTE	physical unit number (for INT 13)
 05h	BYTE	logical drive number (0=A:)
 06h 25 BYTEs	BIOS Parameter BlockThe BIOS Parameter Block stores the low-level layout of a drive.	See also INT 21h Function 53h. (see also INT 21/AH=53h)
		Offset	Size	Description
		 00h	WORD	bytes per sector
		 02h	BYTE	sectors per cluster, FFh if unknown
		 03h	WORD	number of reserved sectors
		 05h	BYTE	number of FATs
		 06h	WORD	number of root dir entries
		 08h	WORD	total sectors (refer to offset 15h if zero)
		 0Ah	BYTE	media descriptor, 00h if unknown
		 0Bh	WORD	sectors per FATsee File Allocation Table
		 0Dh	WORD	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	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	total sectors if WORD at 08h is zero
 1Fh	BYTE	flags
		bit 6: 16-bit FATsee File Allocation Table instead of 12-bit
		bit 7: unsupportable disk (all accesses will return Not Ready)
 20h	WORD	device-open count
 22h	BYTE	device type (see #01561 at INT 21/AX=440Dh"DOS 3.2+")
 23h	WORD	bit flags describing drive (see #02604)
 25h	WORD	number of cylinders (for partition only, if hard disk)
 27h 25 BYTEs	BIOS Parameter BlockThe BIOS Parameter Block stores the low-level layout of a drive.	See also INT 21h Function 53h. for default (highest) capacity supported
 40h  6 BYTEs	reserved (part of BPBsee BIOS Parameter Block above)
 46h	BYTE	last track accessed
---removable media---
 47h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	time of last access in clock ticks (FFFFFFFFh if never)
---fixed media---
 47h	WORD	partition (FFFFh = primary, 0001h = extended)
		always 0001h for DOS 5+
 49h	WORD	absolute cylinder number of partition's start on physical drive
		(FFFFh if primary partition in DOS 4.x)
------
 4Bh 11 BYTEs	volume label or "NO NAME    " if none (apparently taken from
		  extended boot record rather than root directory)
 56h	BYTE	terminating null for volume label
 57h	DWORDDoubleword; four bytes.	 Commonly used to hold a 32-bit segment:offset or selector:offset address.	serial number
 5Bh  8 BYTEs	filesystem type ("FAT12	  " or "FAT16	")
 63h	BYTE	terminating null for filesystem type
SeeAlso: #02601,#02602


Bitfields for flags describing drive:
Bit(s)	Description	(Table 02604)
 0	fixed media
 1	door lock ("changeline") supported
 2	current BPBsee BIOS Parameter Block locked
 3	all sectors in a track are the same size
 4	physical drive has multiple logical units
 5	current logical drive for shared physical drive
 6	disk change detected
 7	device parameters were changed (set DASD before formatting)
	(see #01560 at INT 21/AX=440Dh"DOS 3.2+")
 8	disk reformatted (BPBsee BIOS Parameter Block of current media was changed)
 9	access flag (fixed media only, disables reads and writes)
	(see #01566 at INT 21/AX=440Dh"DOS 3.2+")