Int 28

Prev Next Ralf Interrups Categories Contents

------

DOS 2+ - DOS IDLE INTERRUPT

SS:SP = top of MS-DOS stack for I/O functions

Return:
All registers preserved

Desc: This interrupt is invoked each time one of the DOS character input functions loops while waiting for input. Since a DOS call is in progress even though DOS is actually idle during such input waits, hooking this function is necessary to allow a TSR to perform DOS calls while the foreground program is waiting for user input. The INT 28h handler may invoke any INT 21h function except functions 00h through 0Ch.

Notes: Under DOS 2.x, the critical error flag (the byte immediately after the InDOS flag) must be set in order to call DOS functions 50h/51h from the INT 28h handler without destroying the DOS stacks.. Calls to INT 21/AH=3Fh,40h from within an INT 28 handler may not use a handle which refers to CON. At the time of the call, the InDOS flag (see INT 21/AH=34h) is normally set to 01h; if larger, DOS is truly busy and should not be reentered. The default handler is an IRET instruction. Supported in OS/2 compatibility box. The _MS-DOS_Programmer's_Reference_ for DOS 5.0 incorrectly documents this interrupt as superseded. The performance of NetWare Lite servers (and probably other peer-to- peer networks) can be dramatically improved by calling INT 28 frequently from an application's idle loop

See Also: INT 21/AH=34h - INT 2A/AH=84h - INT 2F/AX=1680h

Category: DOS Kernel - Int 28h - D

------

Prev Next Ralf Interrups Categories Contents