aboutsummaryrefslogtreecommitdiff
path: root/src/core/idt.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/idt.cc')
-rw-r--r--src/core/idt.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/core/idt.cc b/src/core/idt.cc
index b808625..a73d92c 100644
--- a/src/core/idt.cc
+++ b/src/core/idt.cc
@@ -6,7 +6,7 @@ IDT_REGISTER IDTR = {
IDT_ADDR
};
-extern u64 INT_DEFAULT,INT_0,INT_14;
+extern u64 INT_DEFAULT,INT_0,INT_14,INT_KBD;
void idt_enable_interrupt(void){
IDT_DESCRIPTOR d;
@@ -25,6 +25,10 @@ void idt_enable_interrupt(void){
d.offset=(u64)&INT_14;
idt_write_descriptor(d, i);
}
+ else if(i==60){ // Page fault
+ d.offset=(u64)&INT_KBD;
+ idt_write_descriptor(d, i);
+ }
else {
d.offset=(u64)&INT_DEFAULT;
idt_write_descriptor(d, i);