| Bit | Initialization Command Word 1 |
|---|---|
| 0 | 1=ICW4 is needed 0=no ICW4 needed |
| 1 | 1=single 8259 0=cascading 8259's |
| 2 | 1=4 byte interrupt vector 0=8 byte int vectors |
| 3 | 1=level triggered mode 0=edge triggered mode |
| 4 | must be 1 for ICW1 (port must also be 20h or A0h) |
| 5-7 | must be zero for PC systems |
| Bit | Initialization Command Word 2 |
|---|---|
| 0-2 | 000= on 80×86 systems |
| 3-7 | A7-A3 of 80×86 interrupt vector |
| bit | Initialization Command Word 3 for Master Device |
|---|---|
| 0 | 1=interrupt request 0 has slave 0=no slave |
| 1 | 1=interrupt request 1 has slave 0=no slave |
| 2 | 1=interrupt request 2 has slave 0=no slave |
| 3 | 1=interrupt request 3 has slave 0=no slave |
| 4 | 1=interrupt request 4 has slave 0=no slave |
| 5 | 1=interrupt request 5 has slave 0=no slave |
| 6 | 1=interrupt request 6 has slave 0=no slave |
| 7 | 1=interrupt request 7 has slave 0=no slave |
| bit | Initialization Command Word 3 for Master Device |
|---|---|
| 0-2 | master interrupt request slave is attached to |
| 3-7 | must be zero |
| Bit | Initialization Command Word 4 |
|---|---|
| 0 | 1 for 80×86 mode 0 = MCS 80/85 mode |
| 1 | 1 = auto EOI 0=normal EOI |
| 2-3 | slave/master buffered mode (see below) |
| 4 | 1 = special fully nested mode (SFNM) 0=sequential |
| 5-7 | unused (set to zero) |
| Bits | Buffering Mode | |
|---|---|---|
| 3 | 2 | |
| 0 | 0 | not buffered |
| 0 | 1 | not buffered |
| 1 | 0 | buffered mode slave (PC mode) |
| 1 | 1 | buffered mode master (PC mode) |
| bit | Operation Control Word 1 - IMR Interrupt Mask Register |
|---|---|
| 0 | 0 = service IRQ0 1 = mask off |
| 1 | 0 = service IRQ1 1 = mask off |
| 2 | 0 = service IRQ2 1 = mask off |
| 3 | 0 = service IRQ3 1 = mask off |
| 4 | 0 = service IRQ4 1 = mask off |
| 5 | 0 = service IRQ5 1 = mask off |
| 6 | 0 = service IRQ6 1 = mask off |
| 7 | 0 = service IRQ7 1 = mask off |
| bit | Operation Control Word 2 - ICR Interrupt Command Register |
|---|---|
| 0-2 | interrupt request level to act upon |
| 3 | must be 0 for OCW2 |
| 4 | must be 0 for OCW2 |
| 5-7 | EOI type (see table) |
| Bits | EOI - End Of Interrupt code (PC specific) | ||
|---|---|---|---|
| 7 | 6 | 5 | |
| 0 | 0 | 1 | non-specific EOI command |
| 0 | 1 | 0 | NOP |
| 0 | 1 | 1 | specific EOI command |
| 1 | 0 | 0 | rotate in automatic EOI mode |
| 1 | 0 | 1 | rotate on non-specific EOI command |
| 1 | 1 | 0 | set priority command (uses bits 2-0) |
| 1 | 1 | 1 | rotate on specific EOI command |
| bit | Operation Control Word 3 |
|---|---|
| 0 | 1=read IRR on next read 0=read ISR on next read |
| 1 | 1=act on value of bit 0 0=no action if bit 0 set |
| 2 | 1=poll command issued 0=no poll command issued |
| 3 | must be 1 for OCW3 |
| 4 | must be 0 for OCW3 |
| 5 | 1=set special mask 0=reset special mask |
| 6 | 1=act on value of bit 5 0=no action if bit 5 set |
| 7 | not used (zero) |