AcessNative - Huge changes, cleaning up and getting it to work
[tpg/acess2.git] / Usermode / include / acess / sys.h
index f7deac7..35f582d 100644 (file)
@@ -1,16 +1,22 @@
 /*
  * Acess2 System Interface Header
  */
-#ifndef _SYS_SYS_H_
-#define _SYS_SYS_H_
+#ifndef _ACESS_SYS_H_
+#define _ACESS_SYS_H_
 
 #include <stdint.h>
+#include <sys/types.h>
 
 // === CONSTANTS ===
+#ifndef NULL
+# define NULL  ((void*)0)
+#endif
+
 #define OPENFLAG_EXEC  0x01
 #define OPENFLAG_READ  0x02
 #define OPENFLAG_WRITE 0x04
 #define        OPENFLAG_NOLINK 0x40
+#define        OPENFLAG_CREATE 0x80
 #ifndef SEEK_CUR
 # define SEEK_SET      1
 # define SEEK_CUR      0
@@ -51,18 +57,25 @@ struct s_sysFInfo {
 typedef struct s_sysFInfo      t_sysFInfo;
 typedef struct s_sysACL        t_sysACL;
 
+// === VARIABLES ===
+extern int     _errno;
+
 // === FUNCTIONS ===
-extern void    _SysDebug(char *str, ...);
+extern void    _SysDebug(const char *format, ...);
 // --- Proc ---
 extern void    _exit(int status)       __attribute__((noreturn));
 extern void    sleep();
 extern void    yield();
+extern int     kill(int pid, int sig);
 extern void    wait(int miliseconds);
 extern int     waittid(int id, int *status);
 extern int     clone(int flags, void *stack);
 extern int     execve(char *path, char **argv, char **envp);
 extern int     gettid();
 extern int     getpid();
+extern int     _SysSetFaultHandler(int (*Handler)(int));
+extern void    SysSetName(const char *Name);
+//extern int   SysGetName(const char *Name);
 
 // --- Permissions ---
 extern int     getuid();
@@ -77,17 +90,19 @@ extern int  reopen(int fd, const char *path, int flags);
 extern void    close(int fd);
 extern uint    read(int fd, uint length, void *buffer);
 extern uint    write(int fd, uint length, void *buffer);
-extern int     seek(int fd, uint64_t offset, int whence);
+extern int     seek(int fd, int64_t offset, int whence);
 extern uint64_t        tell(int fd);
 extern int     ioctl(int fd, int id, void *data);
 extern int     finfo(int fd, t_sysFInfo *info, int maxacls);
 extern int     readdir(int fd, char *dest);
+extern int     _SysOpenChild(int fd, char *name, int flags);
 extern int     _SysGetACL(int fd, t_sysACL *dest);
 extern int     _SysMount(const char *Device, const char *Directory, const char *Type, const char *Options);
+extern int     select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *errfds, time_t *timeout);
 
 // --- IPC ---
-extern int     SysSendMessage(int dest, int length, void *Data);
-extern int     SysGetMessage(int *src, void *Data);
+extern int     SysSendMessage(pid_t dest, uint length, void *Data);
+extern int     SysGetMessage(pid_t *src, void *Data);
 
 // --- MEMORY ---
 uint64_t       _SysGetPhys(uint vaddr);

UCC git Repository :: git.ucc.asn.au