41ed2134512c187d40dbd5c372864f4edf65a48e
2 * COPYRIGHT: GPL - See COPYING in the top level directory
3 * PROJECT: ReactOS Virtual DOS Machine
5 * PURPOSE: Programmable Interrupt Controller emulation
6 * (Interrupt Controller Adapter (ICA) in Windows terminology)
7 * PROGRAMMERS: Aleksandar Andrejevic <theflash AT sdf DOT lonestar DOT org>
13 /* DEFINES ********************************************************************/
15 #define PIC_MASTER_CMD 0x20
16 #define PIC_MASTER_DATA 0x21
17 #define PIC_SLAVE_CMD 0xA0
18 #define PIC_SLAVE_DATA 0xA1
21 #define PIC_ICW1_ICW4 (1 << 0)
22 #define PIC_ICW1_SINGLE (1 << 1)
23 #define PIC_ICW4_8086 (1 << 0)
24 #define PIC_ICW4_AEOI (1 << 1)
26 #define PIC_OCW2_NUM_MASK 0x07
27 #define PIC_OCW2_EOI (1 << 5)
28 #define PIC_OCW2_SL (1 << 6)
30 #define PIC_OCW3 (1 << 3)
31 #define PIC_OCW3_READ_ISR 0x0B
33 /* FUNCTIONS ******************************************************************/
35 VOID
PicInterruptRequest(BYTE Number
);
36 BYTE
PicGetInterrupt(VOID
);
38 VOID
PicInitialize(VOID
);