summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSimponic <loganthebean222@gmail.com>2021-03-08 23:31:08 -0700
committerSimponic <loganthebean222@gmail.com>2021-03-08 23:31:08 -0700
commitfe3d7ad8322df67abd4255b9d377d8bab0007c04 (patch)
tree01f5b3eb9c6512d5fa88d0a739627ef9810f677a /include
parentc1beac8b2174e0bdc333b69deb92bce5a2c33fd9 (diff)
parentdede7fa93eb4d19c6290355af0c5cb342e47e2f6 (diff)
downloadsimponicOS-master.tar.gz
simponicOS-master.zip
Merge branch 'interrupts'HEADmaster
Diffstat (limited to 'include')
-rw-r--r--include/idt.h34
-rw-r--r--include/isr.h36
2 files changed, 37 insertions, 33 deletions
diff --git a/include/idt.h b/include/idt.h
index c08cf75..1722820 100644
--- a/include/idt.h
+++ b/include/idt.h
@@ -2,6 +2,7 @@
#define IDT_H
#include "types.h"
+#include "isr.h"
struct IDT {
uint32_t base;
@@ -20,37 +21,4 @@ struct IDT createIDT(uint32_t base, uint16_t selector, uint8_t flags);
void encodeIDT(uint8_t* idtEntry, struct IDT source);
void initializeIDT();
-extern void isr0 ();
-extern void isr1 ();
-extern void isr2 ();
-extern void isr3 ();
-extern void isr4 ();
-extern void isr5 ();
-extern void isr6 ();
-extern void isr7 ();
-extern void isr8 ();
-extern void isr9 ();
-extern void isr10();
-extern void isr11();
-extern void isr12();
-extern void isr13();
-extern void isr14();
-extern void isr15();
-extern void isr16();
-extern void isr17();
-extern void isr18();
-extern void isr19();
-extern void isr20();
-extern void isr21();
-extern void isr22();
-extern void isr23();
-extern void isr24();
-extern void isr25();
-extern void isr26();
-extern void isr27();
-extern void isr28();
-extern void isr29();
-extern void isr30();
-extern void isr31();
-
#endif // IDT_H
diff --git a/include/isr.h b/include/isr.h
index 831a2f4..f2f4aea 100644
--- a/include/isr.h
+++ b/include/isr.h
@@ -10,4 +10,40 @@ struct registers{
uint32_t eip, cs, eflags, useresp, ss;
} __attribute__((packed));
+extern void isr_common_stub();
+extern void isr_handler(struct registers regs);
+
+extern void isr0 ();
+extern void isr1 ();
+extern void isr2 ();
+extern void isr3 ();
+extern void isr4 ();
+extern void isr5 ();
+extern void isr6 ();
+extern void isr7 ();
+extern void isr8 ();
+extern void isr9 ();
+extern void isr10();
+extern void isr11();
+extern void isr12();
+extern void isr13();
+extern void isr14();
+extern void isr15();
+extern void isr16();
+extern void isr17();
+extern void isr18();
+extern void isr19();
+extern void isr20();
+extern void isr21();
+extern void isr22();
+extern void isr23();
+extern void isr24();
+extern void isr25();
+extern void isr26();
+extern void isr27();
+extern void isr28();
+extern void isr29();
+extern void isr30();
+extern void isr31();
+
#endif // ISR_H