os/arch/i686/interrupts/interrupt.h

24 lines
819 B
C

#include <stddef.h>
struct interrupt_frame {
size_t eip;
size_t cs;
size_t eflags;
size_t ss;
size_t esp;
};
__attribute__((interrupt)) void divide_by_zero(struct interrupt_frame* frame);
__attribute__((interrupt)) void general_protection_fault(struct interrupt_frame* frame);
__attribute__((interrupt)) void double_fault(struct interrupt_frame* frame);
__attribute__((interrupt)) void exception(struct interrupt_frame* frame);
__attribute__((interrupt)) void syscall(struct interrupt_frame* frame);
__attribute__((interrupt)) void keyboard_interrupt(struct interrupt_frame* frame);
__attribute__((interrupt)) void irq_1(struct interrupt_frame* frame);
__attribute__((interrupt)) void irq_2(struct interrupt_frame* frame);
__attribute__((interrupt)) void irq0(struct interrupt_frame* frame);