Device Request 0dH: Device Open

Blk► Chr► OCR► 
 This tells the driver that a block-device file or character device is
 being opened or created.

DevReq0dRec
  Offset Size Contents
  ▀▀▀▀▀▀ ▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
   +0      1  bLen         0dH (length of this request packet)
   +1      1  bUnitNo      (not used)
   +2      1  bCmd         00H (command code)
   +3      2  rStatus      OUTPUT: Device Status Word must fill before exit
   +5H     8  res          (reserved)
          13               size of this record

     rStatus  On exit, the driver must place a DevStatusWord here.  Always
              set the Done bit (bit 8).  On an error, set the Done bit and
              the Error bit (bit 15) and put a Device Error Code in the low
              byte.

   Notes: ■ Only drivers capable of device Open/Close-processing need
            support this request (see Device Attribute bit 11).

          ■ DOS uses this request whenever an application opens or creates
            a file or opens a device (fn 3dH) and DOS issues DvRq 0eH
            (Device Close) when the device or file gets closed (fn 3eH).

            Drivers supporting this request can uses these fns to help with
            maintenance of internal buffers, etc.

            Character devices (such as PRN drivers) can watch for Open
            requests and send control data to the device (such as font
            downloads) when it is opened after being closed.  In that
            scenario, the driver should also accept DvRq 03H and DvRq 0cH
            (IOCTL fns) in order to provide a means to receive download
            data from applications.

See Also: Device Requests
          DevRequestHdrRec
          Installable Device Drivers
                                    -♦-