en:docs:dos:api:int28

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
en:docs:dos:api:int28 [2021/08/06 07:44] – created prokusheven:docs:dos:api:int28 [2021/12/22 12:35] (current) prokushev
Line 5: Line 5:
 ===== Version ===== ===== Version =====
  
-and higher+and higher
  
 ===== Brief ===== ===== Brief =====
  
- DOS IDLE INTERRUPT+DOS IDLE INTERRUPT
  
 ===== Family API ===== ===== Family API =====
Line 16: Line 16:
 ===== Input ===== ===== Input =====
  
-  SS:SP = top of MS-DOS stack for I/O functions+SS:SP = top of MS-DOS stack for I/O functions
      
 ===== Return ===== ===== Return =====
  
-   all registers preserved+all registers preserved
        
 ===== Macro ===== ===== Macro =====
Line 27: Line 27:
 ===== Notes ===== ===== Notes =====
  
-    This interrupt is invoked each time one of the DOS character input +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.  
-   functions loops while waiting for input.  Since a DOS call is in + 
-   progress even though DOS is actually idle during such input waits, +The INT 28h handler may invoke any INT 21h function except functions 00h through 0Ch. 
-   hooking this function is necessary to allow a TSR to perform DOS + 
-   calls while the foreground program is waiting for user input.  The +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. 
-   INT 28h handler may invoke any INT 21h function except functions + 
-   00h through 0Ch. +calls to INT 21/AH=3Fh,40h from within an INT 28 handler may not use a handle which refers to CON 
-  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 +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 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 +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
-   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 ===== ===== See Also =====
  
-  INT 21/AH=34h,INT 2A/AH=84h,INT 2F/AX=1680h+INT 21/AH=34h,INT 2A/AH=84h,INT 2F/AX=1680h
      
 ===== Note ===== ===== Note =====