rk/idt.c
2024-05-21 21:07:04 -05:00

10 lines
338 B
C

#include <idt.h>
void encode_idt_entry(struct idt_entry idt[], int i, uint32_t offset, uint16_t segment_selector, uint8_t attributes) {
idt[i].offset_lo = (uint16_t)(offset & 0xFFFF);
idt[i].seg_select = segment_selector;
idt[i].reserved = 0;
idt[i].attributes = attributes;
idt[i].offset_hi = (uint16_t)(offset >> 16);
}