Specifications

Interrupt Controller (8259A)
Specific EOI Commands
A specific EOI command sent from the microprocessor lets the
8259A know when a service routine of a particular interrupt level is
completed. Unlike a nonspecific EOI command, which automatically
resets the highest priority ISR bit, a specific EOI command specifies
an exact ISR bit to be reset. One of the eight IR levels of the 8259A
can be specified in the command.
The specific EOI command is needed to reset the ISR bit of a
completed service routine whenever the 8259A is not able to
determine it automatically. An example of this situation might be if
the priorities of the interrupt levels were changed during an interrupt
routine ("Specific Rotation"). In this case, if any other routines were
in service at the same time, a nonspecific EOI might reset the wrong
ISR bit. Thus the specific EOI command is the best choice in this case
or, for that matter, at any time in which confusion of interrupt
priorities may exist. The specific EOI command can be used in all
conditions of 8259A operation, including those that prohibit non-
specific EOI command usage.
Automatic EOI
Mode
When programmed in the automatic EOI mode, the microprocessor
no longer needs to issue a command to notify the 8259A that it has
completed an interrupt routine. The 8259A accomplishes this by
automatically performing a nonspecific EOI at the trailing edge of the
last INTA* pulse (second pulse in 8088 systems).
The obvious advantage of the automatic EOI mode over the other EOI
method is that no command has to be issued. In general, this
simplifies programming and lowers code requirements within
interrupt routines.
12-32