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/syscall.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 include/syscall.h (limited to 'include/syscall.h') diff --git a/include/syscall.h b/include/syscall.h new file mode 100644 index 0000000..c9c26d8 --- /dev/null +++ b/include/syscall.h @@ -0,0 +1,46 @@ +#ifndef _JOVE_SYSCALL_H +#define _JOVE_SYSCALL_H 1 + +#include +#include +#include "object.h" + +enum +{ + SYSCALL_NONE = 0, + SYSCALL_INVOKE, + SYSCALL_SEND, + SYSCALL_RECV, + + SYSCALL_DEBUG_PUTC, + SYSCALL_DEBUG_IDENTIFY +}; + +typedef uint16_t invokeid_t; + +struct syscallInvokeHeader +{ + obj_path_t target_path; + invokeid_t func_id; +}; + +enum +{ + INVOKE_OBJDIR_NMEMB = 0, + INVOKE_OBJDIR_GETMEMB +}; + +struct syscallInvoke_objdir_nmemb +{ + struct syscallInvokeHeader header; + size_t value; +}; + +struct syscallInvoke_objdir_getmemb +{ + struct syscallInvokeHeader header; + uint8_t member; + obj_type_t value; +}; + +#endif -- cgit v1.2.1