FrostWing
A lightweight raw-control operating system.
Loading...
Searching...
No Matches
isr.h
Go to the documentation of this file.
1
11#ifndef ISR_H
12#define ISR_H
13
14#include <stdint.h>
15#include <stddef.h>
16#include <graphics.h>
17
18typedef struct InterruptFrame
19{
20 uint64_t r11, r10, r9, r8;
21 uint64_t rsi, rdi, rdx, rcx, rax;
22 uint64_t int_no, err_code;
23 uint64_t rip, cs, rflags, rsp, ss;
25
29typedef void(*irq_handler)(InterruptFrame*);
30
31void exceptionHandler(InterruptFrame* frame);
32void irqHandler(InterruptFrame* frame);
33
40void registerInterruptHandler(uint8_t irq, irq_handler handler);
41
42void rtl8139_handler(InterruptFrame* frame);
43
44#endif
struct acpi_gas __attribute__
Physical Region Descriptor Table (PRDT) entry.
Definition ahci.h:71
Contains all the print functions.
void(* irq_handler)(InterruptFrame *)
A function pointer for interrupt handlers.
Definition isr.h:29
void registerInterruptHandler(uint8_t irq, irq_handler handler)
Registers a handler for an interrupt.