axle OS
x86_32 UNIX-like hobby OS
isr.h
1 #ifndef ISR_H
2 #define ISR_H
3 
4 #include <std/common.h>
5 
6 #define IRQ0 32
7 #define IRQ1 33
8 #define IRQ2 34
9 #define IRQ3 35
10 #define IRQ4 36
11 #define IRQ5 37
12 #define IRQ6 38
13 #define IRQ7 39
14 #define IRQ8 40
15 #define IRQ9 41
16 #define IRQ10 42
17 #define IRQ11 43
18 #define IRQ12 44
19 #define IRQ13 45
20 #define IRQ14 46
21 #define IRQ15 47
22 
23 //enables registration of callbacks for interrupts or IRQs
24 //for IRQs, to ease confusion, use #defines above
25 //as first parameter
26 typedef void (*isr_t)(registers_t);
27 void register_interrupt_handler(uint8_t n, isr_t handler);
28 void isr_install_default();
29 void pic_acknowledge(unsigned int interrupt);
30 
31 //debug function
32 //dumps memory around 'ptr' to kernel log
33 void dump_stack(uint32_t* ptr);
34 
35 #endif
Definition: common.h:14