From 7eb20457ff3d80cc81d54204ffd2c9edaf991905 Mon Sep 17 00:00:00 2001 From: Nicholas Noll Date: Wed, 17 Nov 2021 17:38:58 -0800 Subject: automated platform specific code parsing --- include/sys.h | 35 ++++++++++++++++++++++++++++------- 1 file changed, 28 insertions(+), 7 deletions(-) (limited to 'include') diff --git a/include/sys.h b/include/sys.h index 773ff3a..15fba2a 100644 --- a/include/sys.h +++ b/include/sys.h @@ -1,12 +1,33 @@ #pragma once -#include +#include +#include -#define sys·Oread 0x0u -#define sys·Owrite 0x1u -#define sys·Ordwr 0x2u +// ----------------------------------------------------------------------- +// global constants -/* system calls */ +/* open */ +#define sys·ORead 0x0u +#define sys·OWrite 0x1u +#define sys·ORdwr 0x2u + +/* seek */ +#define sys·SeekSet 0u +#define sys·SeekCur 1u +#define sys·SeekEnd 2u + +// ----------------------------------------------------------------------- +// functions + +/* + * system calls with errno-free interface + */ int sys·call(int num, ...); -int sys·open(char *path, int flag, int mode, int *ret); -int sys·close(char *path, int flag, int mode, int *ret); + +/* file operations */ +int sys·open(char *path, int flag, int mode, int *fd); +int sys·close(int fd); +int sys·write(int fd, intptr len, void *buf, intptr *nw); +int sys·read(int fd, intptr len, void *buf, intptr *nr); +int sys·seek(int fd, intptr offset, int from, intptr *pos); +int sys·dup(int from, int to); -- cgit v1.2.1