summaryrefslogtreecommitdiff
path: root/include/hilbert/kernel/syscall.hpp
diff options
context:
space:
mode:
authorBenji Dial <benji@benjidial.net>2024-01-15 15:44:20 -0500
committerBenji Dial <benji@benjidial.net>2024-01-15 15:44:20 -0500
commitc9a1266d219a83882735a3a8304f3824e0219cdb (patch)
treefea71a0b5b0de8f3a8962dc6ed417273f231e2a9 /include/hilbert/kernel/syscall.hpp
parent7c6a18d77a81f232ad2e1d3a311bb21ea8f1f5b4 (diff)
downloadhilbert-os-c9a1266d219a83882735a3a8304f3824e0219cdb.tar.gz
redo application paging and system calls, rename mercury to hilbert
Diffstat (limited to 'include/hilbert/kernel/syscall.hpp')
-rw-r--r--include/hilbert/kernel/syscall.hpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/hilbert/kernel/syscall.hpp b/include/hilbert/kernel/syscall.hpp
new file mode 100644
index 0000000..c83e514
--- /dev/null
+++ b/include/hilbert/kernel/syscall.hpp
@@ -0,0 +1,13 @@
+#include <cstdint>
+
+namespace hilbert::kernel::syscall {
+
+ typedef void (*syscall_handler)(
+ uint64_t &rax, uint64_t &rdi, uint64_t &rsi, uint64_t &rdx);
+
+ void init_syscalls();
+
+ //assumes this rax has not been used yet and is < 256.
+ void add_syscall(uint64_t rax, syscall_handler handler);
+
+}