X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=AcessNative%2Facesskernel_src%2Finclude%2Farch.h;h=868a0569c424934ea761926eff33e6211291c17e;hb=2238e69eea50d2274553926f3f294822c1972ff0;hp=849eba8258c58d36c788bc380bb93577735389bb;hpb=7f80ab30017689efe0aaaab18abc7ceda689d859;p=tpg%2Facess2.git diff --git a/AcessNative/acesskernel_src/include/arch.h b/AcessNative/acesskernel_src/include/arch.h index 849eba82..868a0569 100644 --- a/AcessNative/acesskernel_src/include/arch.h +++ b/AcessNative/acesskernel_src/include/arch.h @@ -5,10 +5,10 @@ #include //#include -#include #undef CLONE_VM #define _MODULE_NAME_ "NativeKernel" +#define PAGE_SIZE 0x1000 // Assume, making an Ass out of u and me #define BITS (sizeof(intptr_t)*8) typedef uint8_t Uint8; @@ -28,21 +28,29 @@ typedef intptr_t tPAddr; typedef int BOOL; -//typedef uint32_t tTID; -//typedef uint32_t tPID; -//typedef uint32_t tUID; -//typedef uint32_t tGID; +extern void exit(int status) __attribute__((noreturn)); +#define HALT_CPU() exit(1) + +#include +#undef offsetof struct sShortSpinlock { - int IsValid; - pthread_mutex_t Mutex; + void *Mutex; }; -#define SHORTLOCK(...) -#define SHORTREL(...) +extern void Threads_int_ShortLock(void **Ptr); +extern void Threads_int_ShortRel(void **Ptr); +extern int Threads_int_ShortHas(void **Ptr); + +#define SHORTLOCK(l) Threads_int_ShortLock(&(l)->Mutex) +#define SHORTREL(l) Threads_int_ShortRel(&(l)->Mutex) +#define CPU_HAS_LOCK(l) Threads_int_ShortHas(&(l)->Mutex) //#define NUM_CFG_ENTRIES 10 +extern void Debug_PutCharDebug(char ch); +extern void Debug_PutStringDebug(const char *str); + #endif