; syscall_nr.inc - assembled from syscall_nr.h for use in .asm files ; Keep in sync with syscall_nr.h and ke_syscall.c. ; Process & Thread SYS_EXIT_PROCESS EQU 0 SYS_EXIT_THREAD EQU 1 SYS_CREATE_THREAD EQU 2 SYS_GET_CURRENT_TID EQU 3 SYS_GET_CURRENT_PID EQU 4 SYS_YIELD EQU 5 SYS_SLEEP EQU 6 SYS_SET_THREAD_PRIORITY EQU 7 ; Memory SYS_ALLOC EQU 8 SYS_FREE EQU 9 SYS_REALLOC EQU 10 ; Mutex SYS_MUTEX_CREATE EQU 11 SYS_MUTEX_ACQUIRE EQU 12 SYS_MUTEX_TRY_ACQUIRE EQU 13 SYS_MUTEX_RELEASE EQU 14 ; Semaphore SYS_SEM_CREATE EQU 15 SYS_SEM_WAIT EQU 16 SYS_SEM_TRY_WAIT EQU 17 SYS_SEM_SIGNAL EQU 18 ; Event SYS_EVENT_CREATE EQU 19 SYS_EVENT_SIGNAL EQU 20 SYS_EVENT_CLEAR EQU 21 SYS_EVENT_WAIT EQU 22 ; Queue SYS_QUEUE_CREATE EQU 23 SYS_QUEUE_SEND EQU 24 SYS_QUEUE_RECV EQU 25 ; Handle (unified - one close for every object type) SYS_CLOSE_HANDLE EQU 26 ; File I/O SYS_OPEN_FILE EQU 27 SYS_READ_FILE EQU 28 SYS_SEEK_FILE EQU 29 SYS_GET_FILE_SIZE EQU 30 SYS_WRITE_FILE EQU 31 ; handle, buf, size, *bytesWritten SYS_CREATE_FILE EQU 32 ; *path, *handleOut SYS_DELETE_FILE EQU 33 ; *path SYS_TRUNCATE_FILE EQU 34 ; handle, newSize SYS_GET_FILE_POS EQU 35 ; handle -> current offset ; Screen SYS_SCREEN_BLIT EQU 36 SYS_SCREEN_CLEAR EQU 37 SYS_SCREEN_GET_SIZE EQU 38 SYS_SCREEN_PUT_CHAR EQU 39 ; Keyboard SYS_KB_POLL EQU 40 SYS_KB_READ_CHAR EQU 41 SYS_KB_READ_SCANCODE EQU 42 SYS_KB_GET_MODIFIERS EQU 43 ; Mouse SYS_MOUSE_POLL EQU 44 SYS_MOUSE_READ EQU 45 SYS_MOUSE_GET_POS EQU 46 ; Timer SYS_GET_TICK EQU 47 ; Debug SYS_DEBUG_PRINT EQU 48 ; Process launch & lifecycle SYS_CREATE_PROCESS EQU 49 SYS_WAIT_FOR_PROCESS EQU 50 SYS_GET_PROCESS_EXIT_CODE EQU 51 ; Console output SYS_WRITE_CONSOLE EQU 52 ; Directory enumeration SYS_OPEN_DIR EQU 53 SYS_READ_DIR EQU 54 ; Current Working Directory SYS_SET_CWD EQU 55 SYS_GET_CWD EQU 56 ; Thread join SYS_WAIT_THREAD EQU 57 ; a0=tid -> KSTATUS ; Process PID query SYS_GET_PROCESS_PID EQU 58 ; a0=procHandle a1=*pidOut -> KSTATUS ; Named Queue Registry SYS_PUBLISH_QUEUE EQU 59 ; a0=*name a1=queueHandle -> KSTATUS SYS_OPEN_NAMED_QUEUE EQU 60 ; a0=*name a1=*handleOut -> KSTATUS ; Handle duplication SYS_QUEUE_DUPLICATE EQU 61 ; a0=handle a1=targetPid a2=*handleOut -> KSTATUS SYS_NAMED_QUEUE_OWNER_PID EQU 62 ; a0=*name a1=*pidOut -> KSTATUS ; Sentinel SYS_MAX EQU 63