INT 13h,  16h (22)       Change Line Status                              many

This service reports whether or not a diskette has been changed (disk
drive door opened) since the last disk access. This service can be
performed on diskettes only.

On entry:      AH         16h
DL         Drive number (Bit 7 must be clear)

Returns:       AH         Change Line Status (See below)
CF         Set if AH is not 0; otherwise cleared


Notes:         This service is not available for PCs, PCjrs, and
XTs dated before 1/10/86.

Use Service 15h to determine if a drive supports
change line detection.

If the Carry Flag is set and AH is 01h or 80h, then
an error has occurred. If AH is 06h, the Carry Flag
will be set, but that does not signal an error;
instead it means the "Diskette change" signal is
active (as shown below).

Change Line Status
AH       Meaning
00h      "Diskette change" signal not active
01h      Invalid diskette parameter         (ERROR)
06h      "Diskette change" signal active
80h      Drive not ready                    (ERROR)

For the AT, XT-286, and PC Convertible, the BIOS
executes INT 15h, Service 90h (Device Busy), for the
diskette (Type = 01h) prior to waiting for the
interrupt. INT 15h, Service 91h (Interrupt
Complete), is executed upon completion. Diskette
operations that require the diskette motor to be on
will call INT 15h, Service 90 (Device Busy), with
the type equal to "Diskette Drive Motor Start" (Type
= FDh). This allows the system to perform another
task while the drive motor is waiting to get up to

See also: INT 13h, 15h
See also: INT 13h, 17h
See also: INT 13h, 01h

INT 13h, 16h (22) Change Line Status many