Int 4Ah: User Alarm Interrupt

Int 4Ah is a hook called from the Real-Time Clock interrupt service routine (Int 0Ah) when an interrupt is issued by an alarm. Applications may chain into this interrupt so that they may be alerted when an alarm is active. (By default, the BIOS points the Int 4Ah vector to an IRET.)

Int 4Ah handlers should restore all registers. Programs which chain into Int 4Ah are responsible for restoring the original Int 4Ah interrupt vector before exit to DOS.

When the Int 4Ah routine is entered, the BIOS has established a stack frame as shown below:

                 -------------------------
                 Saved Flags 
                 -------------------------
                 Saved CS 
                 -------------------------
                 Saved IP from Int 0Ah 
                 -------------------------
                 Saved AX 
                 -------------------------
                 Saved CX 
                 -------------------------
                 Saved DX 
                 -------------------------
                 Saved BX 
                 -------------------------
                 Saved SP 
                 -------------------------
                 Saved BP 
                 -------------------------
                 Saved SI 
                 -------------------------
                 Saved DI 
                 -------------------------
                 Saved DS 
                 -------------------------
                 Saved ES 
                 -------------------------
                 Saved HIR
                 ------------------------- 
                 Saved RTN 
                 -------------------------
                 Saved Flags 
                 -------------------------
                 Saved CS
                 ------------------------- 
          SP->   Saved IP (from Int 4Ah)
                 -------------------------
Note: The above stack frame is PC incompatible. There may be a few programs that expect the more compatible stack frame that looks like the one shown on the next page. "RTN" is a local offset to the Int 0Ah dispatcher.

The register contents are as shown below when Int 4Ah is called:

PC-Compatible Stack Frame