#include "kernel.h"
#include "syscall.h"

int Create (int priority, void (*code)()) {
    asm volatile ("swi %0" : "r" (SYS_Create));
    register int RetVal asm("r0");
    return RetVal;
    // return TaskID of new Task
}

int MyTid() {
    asm volatile ("swi %0" : "r" (SYS_MyTid));
    register int RetVal asm("r0");
    return RetVal;
}

int MyParentTid() {
    asm volatile ("swi %0" : "r" (SYS_ParentTid));
    register int RetVal asm("r0");
    return RetVal;

}

void Pass() {
    asm volatile ("swi %0" : "r" (SYS_Pass));
}

void Exit() {
    asm volatile ("swi %0" : "r" (SYS_Exit));
}