[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
INT 2F U - DOS 4+ DRIVER.SYS support - GET DRIVE DATA TABLE LIST
AX = 0803h
Return: DS:DI -> first drive data table in list
Note: not available under DR-DOS 5.0
Format of DOS 3.30 drive data table:
Offset Size Description
00h DWORD pointer to next table
04h BYTE physical unit number (for INT 13)
05h BYTE logical drive number
06h 19 BYTEs BIOS Parameter Block (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 FAT
0Dh WORD sectors per track
0Fh WORD number of heads
11h WORD number of hidden sectors
19h BYTE flags
bit 6: 16-bit FAT instead of 12-bit FAT
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 INT 21/AX=440Dh)
29h WORD bit flags describing drive
bit 0: fixed media
bit 1: door lock supported
bit 2: ??? (used in determining BPB to set for INT 21/AX=440Dh)
bit 3: all sectors in a track are the same size
bit 4: physical drive has multiple logical units
bit 5: current logical drive for physical drive
bit 6: ???
bit 7: ???
bit 8: ??? (related to disk change detection)
2Bh WORD number of cylinders
2Dh 19 BYTEs BIOS Parameter Block for highest capacity supported
40h 3 BYTEs ???
43h 9 BYTEs filesystem type???, default = "NO NAME "
(apparently only MSDOS 3.30 fixed media, nulls for removable
media and PCDOS 3.30)
4Ch BYTE least-significant byte of last-accessed cylinder number
---removable media---
4Dh DWORD 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)
Format of COMPAQ DOS 3.31 drive data table:
Offset Size Description
00h DWORD pointer to next table
04h BYTE physical unit number (for INT 13)
05h BYTE logical drive number
06h 25 BYTEs BIOS Parameter Block (see DOS 4.0-5.0 drive data table below)
1Fh 6 BYTEs ??? apparently always zeros
25h BYTE flags
bit 6: 16-bit FAT instead of 12-bit FAT
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 INT 21/AX=440Dh)
35h WORD bit flags describing drive
37h WORD number of cylinders
39h 25 BYTEs BIOS 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 DWORD 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)
Format of DOS 4.0-5.0 drive data table:
Offset Size Description
00h DWORD pointer to next table
04h BYTE physical unit number (for INT 13)
05h BYTE logical drive number
06h 25 BYTEs BIOS Parameter Block (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 (see offset 15h if zero)
0Ah BYTE media descriptor, 00h if unknown
0Bh WORD sectors per FAT
0Dh WORD sectors per track
0Fh WORD number of heads
11h DWORD number of hidden sectors
15h DWORD total sectors if WORD at 08h is zero
1Fh BYTE flags
bit 6: 16-bit FAT instead of 12-bit
20h 2 BYTEs ???
22h BYTE device type (see INT 21/AX=440Dh)
23h WORD bit flags describing drive
bit 0: fixed media
bit 1: door lock supported
bit 2: ???
bit 3: all sectors in a track are the same size
bit 4: physical drive has multiple logical units
bit 5: current logical drive for physical drive
bit 6: ???
bit 7: ???
bit 8: ???
25h WORD number of cylinders
27h 25 BYTEs BIOS Parameter Block for highest capacity supported
40h 7 BYTEs ???
---removable media---
47h DWORD time of last access in clock ticks (FFFFFFFFh if never)
---fixed media, DOS 4.x---
47h WORD partition (FFFFh = primary, 0001h = extended)
49h WORD absolute cylinder number of partition's start on phys drive
(FFFFh if primary partition)
---fixed media, DOS 5.0---
47h WORD ??? apparently always 0001h
49h WORD absolute cylinder number of partition's start on phys drive
------
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 DWORD serial number
5Bh 8 BYTEs filesystem type ("FAT12 " or "FAT16 ")
63h BYTE terminating null for filesystem type???
See Also:
2F0801
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson