#ifndef _LUNA_SYSCALL_H
#define _LUNA_SYSCALL_H

#define SYS_exit 0
#define SYS_yield 1
#define SYS_sleep 2
#define SYS_write 3
#define SYS_paint 4
#define SYS_rand 5
#define SYS_gettid 6
#define SYS_mmap 7
#define SYS_munmap 8
#define SYS_open 9
#define SYS_read 10
#define SYS_close 11

#ifndef __want_syscalls
#ifdef __cplusplus
extern "C"
{
#endif

    long int __luna_syscall0(long int sys_num);
    long int __luna_syscall1(long int sys_num, unsigned long int arg0);
    long int __luna_syscall2(long int sys_num, unsigned long int arg0, unsigned long int arg1);
    long int __luna_syscall3(long int sys_num, unsigned long int arg0, unsigned long int arg1, unsigned long int arg2);
    long int __luna_syscall4(long int sys_num, unsigned long int arg0, unsigned long int arg1, unsigned long int arg2,
                             unsigned long int arg3);
    long int __luna_syscall5(long int sys_num, unsigned long int arg0, unsigned long int arg1, unsigned long int arg2,
                             unsigned long int arg3, unsigned long int arg4);

#ifdef __cplusplus
}
#endif
#endif
#endif