X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fmisc.h;h=521ba1b16e0a375e66c4249fd5c7bc26f6391fc3;hb=467fb3a191a20318590ac5681e21bcfefb0eb2ad;hp=d90727d9416cd6c396a8c7ac91980513e915e4e2;hpb=41e8d55b767c898f20c29a1b0b8d2ef8840be2f5;p=rocksndiamonds.git diff --git a/src/libgame/misc.h b/src/libgame/misc.h index d90727d9..521ba1b1 100644 --- a/src/libgame/misc.h +++ b/src/libgame/misc.h @@ -1,7 +1,7 @@ /*********************************************************** * Artsoft Retro-Game Library * *----------------------------------------------------------* -* (c) 1994-2001 Artsoft Entertainment * +* (c) 1994-2002 Artsoft Entertainment * * Holger Schemel * * Detmolder Strasse 189 * * 33604 Bielefeld * @@ -20,12 +20,6 @@ #include "system.h" -/* functions for version handling */ -#define VERSION_IDENT(x,y,z) ((x) * 10000 + (y) * 100 + (z)) -#define VERSION_MAJOR(x) ((x) / 10000) -#define VERSION_MINOR(x) (((x) % 10000) / 100) -#define VERSION_PATCH(x) ((x) % 100) - /* values for InitCounter() and Counter() */ #define INIT_COUNTER 0 #define READ_COUNTER 1 @@ -76,8 +70,13 @@ char *getPath2(char *, char *); char *getPath3(char *, char *, char*); char *getStringCopy(char *); char *getStringToLower(char *); + void GetOptions(char **); + +void SetError(char *, ...); +char *GetError(void); void Error(int, char *, ...); + void *checked_malloc(unsigned long); void *checked_calloc(unsigned long); void *checked_realloc(void *, unsigned long); @@ -90,14 +89,47 @@ int getFile32BitInteger(FILE *, int); void putFile32BitInteger(FILE *, int, int); boolean getFileChunk(FILE *, char *, int *, int); void putFileChunk(FILE *, char *, int, int); +int getFileVersion(FILE *); +void putFileVersion(FILE *, int); void ReadUnusedBytesFromFile(FILE *, unsigned long); void WriteUnusedBytesToFile(FILE *, unsigned long); +#define getFile16BitBE(f) getFile16BitInteger(f,BYTE_ORDER_BIG_ENDIAN) +#define getFile16BitLE(f) getFile16BitInteger(f,BYTE_ORDER_LITTLE_ENDIAN) +#define putFile16BitBE(f,x) putFile16BitInteger(f,x,BYTE_ORDER_BIG_ENDIAN) +#define putFile16BitLE(f,x) putFile16BitInteger(f,x,BYTE_ORDER_LITTLE_ENDIAN) +#define getFile32BitBE(f) getFile32BitInteger(f,BYTE_ORDER_BIG_ENDIAN) +#define getFile32BitLE(f) getFile32BitInteger(f,BYTE_ORDER_LITTLE_ENDIAN) +#define putFile32BitBE(f,x) putFile32BitInteger(f,x,BYTE_ORDER_BIG_ENDIAN) +#define putFile32BitLE(f,x) putFile32BitInteger(f,x,BYTE_ORDER_LITTLE_ENDIAN) +#define getFileChunkBE(f,s,x) getFileChunk(f,s,x,BYTE_ORDER_BIG_ENDIAN) +#define getFileChunkLE(f,s,x) getFileChunk(f,s,x,BYTE_ORDER_LITTLE_ENDIAN) +#define putFileChunkBE(f,s,x) putFileChunk(f,s,x,BYTE_ORDER_BIG_ENDIAN) +#define putFileChunkLE(f,s,x) putFileChunk(f,s,x,BYTE_ORDER_LITTLE_ENDIAN) + char *getKeyNameFromKey(Key); char *getX11KeyNameFromKey(Key); +Key getKeyFromKeyName(char *); Key getKeyFromX11KeyName(char *); char getCharFromKey(Key); + +ListNode *newListNode(void); +void addNodeToList(ListNode **, char *, void *); +void deleteNodeFromList(ListNode **, char *, void (*function)(void *)); +ListNode *getNodeFromKey(ListNode *, char *); +int getNumNodes(ListNode *); + + +boolean FileIsGraphic(char *); +boolean FileIsSound(char *); +boolean FileIsMusic(char *); +boolean FileIsArtworkType(char *, int); + +void ReloadCustomArtworkList(struct ArtworkListInfo *); +void FreeCustomArtworkList(struct ArtworkListInfo *); + + #if !defined(PLATFORM_UNIX) void initErrorFile(); FILE *openErrorFile();