X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Tools%2FDiskTool%2Fsrc%2Finclude%2Facess.h;h=7eff8c916cc1b786aba33ac79c8af227a1c69af4;hb=281dc40f1891f368873b0380c58c443669fd958c;hp=79eb27edd511b77254cff60c9e1123d0a62460aa;hpb=0a3c1408fe7dfd6c50d104eb3ecafc534719d4fe;p=tpg%2Facess2.git diff --git a/Tools/DiskTool/src/include/acess.h b/Tools/DiskTool/src/include/acess.h index 79eb27ed..7eff8c91 100644 --- a/Tools/DiskTool/src/include/acess.h +++ b/Tools/DiskTool/src/include/acess.h @@ -13,16 +13,20 @@ #define STR(x) #x #define EXPAND_STR(x) STR(x) +#define ASSERT(x) do{}while(0) + extern char __buildnum[]; #define BUILD_NUM ((int)(Uint)&__buildnum) extern const char gsGitHash[]; +extern const char gsBuildInfo[]; #define BITS 32 #define NULL ((void*)0) #include typedef uintptr_t Uint; -typedef unsigned int size_t; +//typedef unsigned int size_t; +#include typedef uint64_t off_t; typedef char BOOL; @@ -45,10 +49,12 @@ typedef uint32_t tGID; typedef uint32_t tTID; // NOTE: Since this is single-threaded (for now) mutexes can be implimented as simple locks -typedef char tMutex; typedef char tShortSpinlock; typedef int64_t tTime; +extern tTime now(void); +extern int64_t timestamp(int sec, int min, int hr, int day, int month, int year); +extern void format_date(tTime TS, int *year, int *month, int *day, int *hrs, int *mins, int *sec, int *ms); #define PACKED __attribute__((packed)) #define DEPRECATED @@ -64,7 +70,6 @@ extern void *realloc(void *oldptr, size_t bytes); extern void free(void *buffer); #include - #include // Threads @@ -78,22 +83,48 @@ extern tGID Threads_GetGID(void); // Kinda hacky way of not colliding with native errno #define errno (*(Threads_GetErrno())) +/** + * \name Endianness Swapping + * \{ + */ +#ifdef __BIG_ENDIAN__ +#define LittleEndian16(_val) SwapEndian16(_val) +#define LittleEndian32(_val) SwapEndian32(_val) +#define LittleEndian64(_val) SwapEndian32(_val) +#define BigEndian16(_val) (_val) +#define BigEndian32(_val) (_val) +#define BigEndian64(_val) (_val) +#else +#define LittleEndian16(_val) (_val) +#define LittleEndian32(_val) (_val) +#define LittleEndian64(_val) (_val) +#define BigEndian16(_val) SwapEndian16(_val) +#define BigEndian32(_val) SwapEndian32(_val) +#define BigEndian64(_val) SwapEndian64(_val) +#endif +extern Uint16 SwapEndian16(Uint16 Val); +extern Uint32 SwapEndian32(Uint32 Val); +extern Uint64 SwapEndian64(Uint64 Val); +/** + * \} + */ + + #include +extern int strucmp(const char *s1, const char *s2); extern int strpos(const char *Str, char Ch); extern void itoa(char *buf, uint64_t num, int base, int minLength, char pad); - - -#define ENTER(...) do{}while(0) -#define LOG(...) do{}while(0) -#define LEAVE(...) do{}while(0) -#define LEAVE_RET(t,v) return v; - -static inline int Mutex_Acquire(tMutex *m) { - if(*m) Log_KernelPanic("---", "Double mutex lock"); - *m = 1; - return 0; -} -static inline void Mutex_Release(tMutex *m) { *m = 0; } +extern int snprintf(char *buf, size_t len, const char *fmt, ...); +extern int sprintf(char *buf, const char *fmt, ...); +extern int ReadUTF8(const Uint8 *str, Uint32 *Val); +extern int WriteUTF8(Uint8 *str, Uint32 Val); +#define CheckString(str) (1) +#define CheckMem(mem,sz) (1) +#include + +// TODO: Move out? +extern int DivUp(int value, int divisor); +extern uint64_t DivMod64U(uint64_t Num, uint64_t Den, uint64_t *Rem); static inline void SHORTLOCK(tShortSpinlock *Lock) { if(*Lock) Log_KernelPanic("---", "Double short lock"); @@ -101,5 +132,7 @@ static inline void SHORTLOCK(tShortSpinlock *Lock) { } static inline void SHORTREL(tShortSpinlock *m) { *m = 0; } +static inline intptr_t MM_GetPhysAddr(void *Ptr) { return 1; } + #endif