[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
Int 2F Fn 0803  U - DOS 4+ Driver.sys Support - Get Drive Data Table List  [D]

   AX = 0803h

Return: DS:DI -> first drive data table in list

Note:  not available under DR-DOS 5.0

See Also: AX=0801h

Format of DOS 3.30 drive data table:
Offset Size    Description
 00h   DWORD   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 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 (see below)
 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 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   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 (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 Block (see DOS 4.0-6.0 drive data table below)
 1Fh  6 BYTEs  reserved fields from BPB above???
 25h   BYTE    flags
       bit 6: 16-bit FAT instead of 12-bit FAT
       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 INT 21/AX=440Dh)
 35h   WORD    bit flags describing drive (see below)
 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-6.0 drive data table:
Offset Size    Description
 00h   DWORD   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 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
       bit 7: unsupportable disk (all accesses will return Not Ready)
 20h   WORD    device-open count
 22h   BYTE    device type (see INT 21/AX=440Dh)
 23h   WORD    bit flags describing drive (see below)
 25h   WORD    number of cylinders
 27h 25 BYTEs  BIOS Parameter Block for default (highest) capacity supported
 40h  6 BYTEs  reserved (part of BPB above)
 46h   BYTE    last track accessed
---removable media---
 47h   DWORD   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)

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