aboutsummaryrefslogtreecommitdiff
path: root/src/kernel/idt.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/idt.c')
-rw-r--r--src/kernel/idt.c23
1 files changed, 0 insertions, 23 deletions
diff --git a/src/kernel/idt.c b/src/kernel/idt.c
deleted file mode 100644
index 2805889..0000000
--- a/src/kernel/idt.c
+++ /dev/null
@@ -1,23 +0,0 @@
-#include "idt.h"
-#include "gdt.h"
-#include <stdint.h>
-
-static Gate_Descriptor_t idt[256];
-extern GDTR_t idtr;
-
-void get_idtr() {
- idtr.offset = (uintptr_t)&idt[0];
- idtr.size = sizeof(Gate_Descriptor_t) * 256 - 1;
- for (uint8_t vec = 0; vec < 32; vec++) {
- make_gate(stub_table[vec], 0x8E, vec);
- }
-}
-
-void make_gate(uint32_t offset, uint8_t attrs, uint8_t vec) {
- Gate_Descriptor_t *descriptor = &idt[vec];
-
- descriptor->offset_low = offset & 0xFFFF;
- descriptor->attrs = (0b1000 << 4) | attrs;
- descriptor->offset_high = offset >> 16, descriptor->segment_selector = 0x08;
- descriptor->reserved = 0;
-}