X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=ginge.git;a=blobdiff_plain;f=loader%2Fsyscalls.h;fp=loader%2Fsyscalls.h;h=e82e0fab1d4c03b15a22ad61cad1987f73570869;hp=0000000000000000000000000000000000000000;hb=d0b9b0df7ed0dc36aabe30e2d584c27c8c32a3d9;hpb=1fc90bfe7c558b33f4e76f8346b9134baeb0c661 diff --git a/loader/syscalls.h b/loader/syscalls.h new file mode 100644 index 0000000..e82e0fa --- /dev/null +++ b/loader/syscalls.h @@ -0,0 +1,23 @@ +#include + +struct timespec; + +void sys_cacheflush(const void *start_addr, const void *end_addr); + +long g_syscall(long number, ...); + +// arg6 is func ptr, for convenience +long g_clone(unsigned long flags, void *child_stack, ...); + +int g_syscall_error(long kret); + +// raw - no errno handling +long g_open_raw(const char *pathname, int flags, ...); +long g_read_raw(int fd, void *buf, size_t count); +long g_write_raw(int fd, const void *buf, size_t count); +long g_futex_raw(int *uaddr, int op, int val, + const struct timespec *timeout); +long g_nanosleep_raw(const struct timespec *req, struct timespec *rem); +long g_clock_gettime_raw(int clk_id, const struct timespec *tp); +long g_rt_sigprocmask_raw(int how, const void *set, void *oldset, + size_t sigsetsize);