ref: ef372086621d1a55be6dead76ae70896074ac568
dir: /Game/src/dukeunix.h/
// // dukeunix.h // Duke3D // // Created by fabien sanglard on 12-12-12. // Copyright (c) 2012 fabien sanglard. All rights reserved. // #ifndef Duke3D_dukeunix_h #define Duke3D_dukeunix_h #define cdecl #define __far #define __interrupt //#define STUBBED(x) #ifdef __SUNPRO_C #define STUBBED(x) fprintf(stderr,"STUB: %s (??? %s:%d)\n",x,__FILE__,__LINE__) #else #define STUBBED(x) fprintf(stderr,"STUB: %s (%s, %s:%d)\n",x,__FUNCTION__,__FILE__,__LINE__) #endif #define PATH_SEP_CHAR '/' #define PATH_SEP_STR "/" #define ROOTDIR "/" #define CURDIR "./" #ifndef O_BINARY #define O_BINARY 0 #endif #include <unistd.h> #include <fcntl.h> #include <sys/stat.h> #include <sys/types.h> #include <dirent.h> #include <assert.h> struct find_t { DIR *dir; char pattern[MAX_PATH]; char name[MAX_PATH]; }; int _dos_findfirst(char *filename, int x, struct find_t *f); int _dos_findnext(struct find_t *f); struct dosdate_t { uint8_t day; uint8_t month; unsigned int year; uint8_t dayofweek; }; void _dos_getdate(struct dosdate_t *date); #ifndef min #define min(x, y) ((x) < (y) ? (x) : (y)) #endif #ifndef max #define max(x, y) ((x) > (y) ? (x) : (y)) #endif #ifndef strcmpi #define strcmpi(x, y) strcasecmp(x, y) #endif #ifdef DC #undef stderr #undef stdout #undef getchar /* kos compat */ #define stderr ((FILE*)2) #define stdout ((FILE*)2) #define Z_AvailHeap() ((10 * 1024) * 1024) #else // 64 megs should be enough for anybody. :) --ryan. #define Z_AvailHeap() ((64 * 1024) * 1024) #endif #define printchrasm(x,y,ch) printf("%c", (uint8_t ) (ch & 0xFF)) #ifdef __GNUC__ #define GCC_PACK1_EXT __attribute__((packed,aligned(1))) #endif // FCS: Game.c features calls to mkdir without the proper flags. // Giving all access is ugly but it is just game OK ! #define mkdir(X) mkdir(X,0777) #define getch getchar #endif