aboutsummaryrefslogtreecommitdiff
path: root/devices/pic_8259.c
diff options
context:
space:
mode:
Diffstat (limited to 'devices/pic_8259.c')
-rw-r--r--devices/pic_8259.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/devices/pic_8259.c b/devices/pic_8259.c
index 62164d3..d3a2f6a 100644
--- a/devices/pic_8259.c
+++ b/devices/pic_8259.c
@@ -36,9 +36,15 @@ pic_init()
void
pic_enable()
{
- // PIC masks
- outb(0xfc, PIC1 + DATA);
- outb(0xff, PIC2 + DATA);
+ unsigned char mask1 = 0xff;
+ mask1 &= ~(1 << 0); // irq0 timer
+ mask1 &= ~(1 << 1); // irq1 keyboard
+ // mask1 &= ~(1 << 2); // irq1 cascade
+ outb(mask1, PIC1 + DATA);
+
+ unsigned char mask2 = 0xff;
+ // mask2 &= ~(1 << 4); // irq12 mouse
+ outb(mask2, PIC2 + DATA);
enable_interrupts();
}