3 #ifndef _NATIVE_SYSCALLS_H_
4 #define _NATIVE_SYSCALLS_H_
6 #define SERVER_PORT 0xACE
11 * tRequestHeader header
12 * tRequestValue params[header.NParams]
13 * tRequestValue retvals[header.NReturn]
14 * uint8_t paramData[SUM(params[].Lengh)];
22 typedef struct sRequestValue {
23 /// \see eArgumentTypes
29 typedef struct sRequestHeader {
31 uint32_t MessageLength;
32 uint16_t CallID; //!< \see eSyscalls
35 tRequestValue Params[];
36 } __attribute__((packed)) tRequestHeader;
41 #include "syscalls_list.h"
46 #ifndef DONT_INCLUDE_SYSCALL_NAMES
47 static const char * casSYSCALL_NAMES[] = {
49 #include "syscalls_list.h"
63 ARG_FLAG_RETURN = 0x40, // Pass back in the return message
64 ARG_FLAG_ZEROED = 0x80 // Not present in the message, just fill with zero