INT 15H 86H: Wait

                                                                        [AT]
 Expects: AH    86H
          CX,DX interval in microseconds (1,000,000ths of a second)
                CX is high word, DX is low word
          ──────────────────────────────────────────────────────────────────
 Returns: AH    86H
          AL    mask written to interrupt ctrlr 2 (if successful)
                unmodified (if fn is busy)
          CF    NC (0) no error
                CY (1) error; fn is busy
          ──────────────────────────────────────────────────────────────────
    Info: This suspends execution of the caller for the specified interval.
          Interrupts are enabled during the delay.

          The interval is set in microseconds with CX and DX being the high
          and low words, respectively.

          1,000,000 microseconds = 1 second; for instance, to set an
          interval for 2 seconds, set CX=001eH and DX=8480H.

          Upon expiration of the interval, control returns to the caller
          and bit 7 of the byte at 0040:00A0 in the BIOS Data Area will be
          set.

   Notes: ■ If CX and DX are both 0000H on entry, no action is taken.

          ■ In most systems, the finest possible resolution is about 1000
            microseconds (about one one-thousandth of a second).  Thus, CX
            must be at least 1000 (03e8H) for this to be useful.

          ■ If you want to set a timer and continue processing, use
            INT 15H 8300H.

          ■ Other timer functions include INT 1AH (1/18-th second minimum
            interval) and DOS fn 2cH (1/100-th second minimum interval).

See Also: INT 15H (extended AT services)
          BIOS Data Area
          ROM-BIOS Functions
                                    -♦-