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) |