qa.hlp (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
Int 21H Function 44H Subfunction 00H
   ◄Summary►  ◄Notes►  ◄Back►
──────────────────────────────────────────────────────────────────────────────
 
  Description:  IOCTL: Get Device Information
 
  Returns a device information word for the file or device associated with
  the specified handle.
 
  Input                 Output
  ══════════            ══════════════════════════════════════════════
  AH=44H                If function successful
  AL=00H                Carry flag=clear
  BX=handle             DX=device information word
                        For a file:
                         bits 8-15 = 0 (reserved)
                         bit  7    = 0 indicating a file
                         bit  6    = 0 file has been written
                                     1 file has not been written
                         bits 0-5  = drive number (0=A, 1=B, etc.)
                        For a device:
                         bit 15    = reserved
                         bit 14    = 1 if device supports IOCTL Read
                                      and  Write Control Data
                                      subfunctions
                                     0 if Control Data subfunctions not
                                      supported
                         bits 8-13 = reserved
                         bit 7     = 1 indicating a device
                         bit 6     = 0 if end of file on input
                         bit 5     = 0 if handle in ASCII ("cooked")
                                      mode
                                     1 if handle in binary ("raw") mode
                         bit 4     = reserved
                         bit 3     = 1 if clock device
                         bit 2     = 1 if NUL device
                         bit 1     = 1 if standard output
                         bit 0     = 1 if standard input
                        If function unsuccessful
                        Carry flag= set
                        AX=error code
                                    -♦-