From b905869a35f062a4e5072f10bec3a2ba3db0e365 Mon Sep 17 00:00:00 2001 From: Jon Santmyer Date: Wed, 30 Jul 2025 14:32:01 -0400 Subject: working userland with some invoke syscalls --- include/arch/x86_64/idt.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 include/arch/x86_64/idt.h (limited to 'include/arch/x86_64/idt.h') diff --git a/include/arch/x86_64/idt.h b/include/arch/x86_64/idt.h new file mode 100644 index 0000000..90ce48b --- /dev/null +++ b/include/arch/x86_64/idt.h @@ -0,0 +1,18 @@ +#ifndef _JOVE_x86_64_IDT_H +#define _JOVE_x86_64_IDT_H 1 + +#include "processor.h" + +typedef struct jove_IVTState +{ + uint64_t r15, r14, r13, r12, r11, r10, r9, r8; + uint64_t rbp, rdi, rsi, rdx, rcx, rbx, rax; + uint64_t rip, cs, rflags, rsp, ss; +} ivt_state_t; + +void kpanic_state(ivt_state_t *state, const char *fmt, ...); + +void ivt_setup(void); +void idt_setup(processor_t *processor); + +#endif -- cgit v1.2.1