This hardware-generated interrupt (IRQ 0) is executed upon each tick of
the PC's real-time clock.  The clock ticks every 55ms, or about 18.2 ticks
per second.

The ROM-BIOS (default) code for this interrupt updates the clock values at
0:046c.  It also turns off the diskette drive motors after about 2 seconds
without read/write activity.  See BIOS Data Area for other variables.

If you want to use this interrupt for custom timer-keyed activities (as
with a TSR program) you must be sure to include the code that tells the
system when the interrupt is finished.  The magic sequence is:

mov     al,20H     ;send End-Of-Interrupt signal
out     20H,al     ; to the 8259 Interrupt Controller

Most TSRs let the default code do this.  For instance, when the TSR is
installed, the original vector is saved in a variable named cs:[old_int8].
Then the following code is executed on each INT 08H:

pushf                            ;simulate an INT
call  dword ptr cs:[old_int8]    ;perform normal timer actions
cmp   cs:my_var,test_value       ;now do customized stuff
... etc. ...
iret    ;return to interrupted foreground application program

  CPU Exception Interrupt  
286+ computer execute INT 08H when encountering a Double Exception Error
(an exception while processing an exception).

- -

INT 08H: Timer Interrupt