#ifndef INTERRUPTS_H #define INTERRUPTS_H #include /** * @file * * Interrupts * ========== * * Exceptions * ---------- * 0x00-0x12 Exceptions * * Legacy PIC * ---------- * 0x20-0x27 disabled pic * 0x28-0x36 disabled pic * * Hardware Interrupts * ------------------- * This interrupts are remapped by the IOAPIC * * 0x0 PIT Timer -> 0x90 * 0x1 Keyboard -> 0x91 * 0xC Mouse -> 0x92 * * Local Interrupts from LAPICs * ---------------------- * 0x8C APIC Timer * * Software Interrupts * ------------------- * 0x80 System Call * 0x81 IPI */ #define INTERRUPT_PIT_TIMER 0x90 #define INTERRUPT_KEYBOARD 0x91 #define INTERRUPT_MOUSE 0x92 #define INTERRUPT_APIC_TIMER 0x8C #define INTERRUPT_SYSCALL 0x80 #define INTERRUPT_IPI 0x81 void interrupts_init(uint16_t sel); void interrupts_install(); #endif