blob: ca39bde7dc505c97bfc58f77319cbd5d0ef958b9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#pragma once
#include <stdint.h>
struct interrupt_frame {
uint32_t ip;
uint32_t cs;
uint32_t flags;
uint32_t sp;
uint32_t ss;
};
/* typedef void (*irq_handler)(); */
/* isr.c */
void abort_handler(struct interrupt_frame *frame);
void syscall_handler(struct interrupt_frame *frame);
void irq0x00(struct interrupt_frame *frame); /* timer interrupt */
void irq0x01(struct interrupt_frame *frame); /* keyboard interrupt */
void irq0x0c(struct interrupt_frame *frame); /* mouse interrupt */
/* lidt.c */
void idt_install();
|