X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Flibgame%2Fmisc.h;h=6c654cb5a5e0666db8344ec7f9d892ba511a3621;hp=244a3992d2e02b725dd6cc0be3d17db758c865ce;hb=0d214d4e314f6f42df24be140bb433e980319767;hpb=7ecf99096c7c23909ada034e05d971464f66552f diff --git a/src/libgame/misc.h b/src/libgame/misc.h index 244a3992..6c654cb5 100644 --- a/src/libgame/misc.h +++ b/src/libgame/misc.h @@ -1,15 +1,13 @@ -/*********************************************************** -* Artsoft Retro-Game Library * -*----------------------------------------------------------* -* (c) 1994-2006 Artsoft Entertainment * -* Holger Schemel * -* Detmolder Strasse 189 * -* 33604 Bielefeld * -* Germany * -* e-mail: info@artsoft.org * -*----------------------------------------------------------* -* misc.h * -***********************************************************/ +// ============================================================================ +// Artsoft Retro-Game Library +// ---------------------------------------------------------------------------- +// (c) 1995-2014 by Artsoft Entertainment +// Holger Schemel +// info@artsoft.org +// http://www.artsoft.org/ +// ---------------------------------------------------------------------------- +// misc.h +// ============================================================================ #ifndef MISC_H #define MISC_H @@ -52,11 +50,6 @@ #define ERR_EXIT_SOUND_SERVER (ERR_EXIT | ERR_SOUND_SERVER) #define ERR_EXIT_NETWORK_SERVER (ERR_EXIT | ERR_NETWORK_SERVER) #define ERR_EXIT_NETWORK_CLIENT (ERR_EXIT | ERR_NETWORK_CLIENT) -#if 0 -#define ERR_ERROR (ERR_UNKNOWN) -#define ERR_FATAL (ERR_EXIT) -#define ERR_VERBOSE (ERR_INFO) -#endif /* values for getFile...() and putFile...() */ #define BYTE_ORDER_BIG_ENDIAN 0 @@ -121,8 +114,15 @@ typedef struct /* function definitions */ void fprintf_line(FILE *, char *, int); +void fprintf_line_with_prefix(FILE *, char *, char *, int); void printf_line(char *, int); void printf_line_with_prefix(char *, char *, int); + +void Print(char *, ...); +void PrintNoLog(char *, ...); +void PrintLine(char *, int); +void PrintLineWithPrefix(char *, char *, int); + char *int2str(int, int); char *i_to_a(unsigned int); int log_2(unsigned int); @@ -132,9 +132,14 @@ boolean getTokenValueFromString(char *, char **, char **); void InitCounter(void); unsigned int Counter(void); void Delay(unsigned int); +boolean DelayReachedExt(unsigned int *, unsigned int, unsigned int); boolean FrameReached(unsigned int *, unsigned int); boolean DelayReached(unsigned int *, unsigned int); -void WaitUntilDelayReached(unsigned int *, unsigned int); +void ResetDelayCounterExt(unsigned int *, unsigned int); +void ResetFrameCounter(unsigned int *); +void ResetDelayCounter(unsigned int *); +int WaitUntilDelayReached(unsigned int *, unsigned int); +void SkipUntilDelayReached(unsigned int *, unsigned int, int *, int); unsigned int init_random_number(int, int); unsigned int get_random_number(int, int); @@ -147,6 +152,7 @@ time_t getFileTimestampEpochSeconds(char *); char *getBasePath(char *); char *getBaseName(char *); char *getBaseNamePtr(char *); +char *getBaseNameNoSuffix(char *); char *getStringCat2WithSeparator(char *, char *, char *); char *getStringCat3WithSeparator(char *, char *, char *, char *); @@ -154,9 +160,12 @@ char *getStringCat2(char *, char *); char *getStringCat3(char *, char *, char *); char *getPath2(char *, char *); char *getPath3(char *, char *, char*); -char *getStringCopy(char *); -char *getStringCopyN(char *, int); -char *getStringToLower(char *); +char *getImg2(char *, char *); +char *getImg3(char *, char *, char*); +char *getStringCopy(const char *); +char *getStringCopyN(const char *, int); +char *getStringCopyNStatic(const char *, int); +char *getStringToLower(const char *); void setString(char **, char *); boolean strEqual(char *, char *); boolean strEqualN(char *, char *, int); @@ -165,7 +174,9 @@ boolean strSuffix(char *, char *); boolean strPrefixLower(char *, char *); boolean strSuffixLower(char *, char *); -void GetOptions(char **, void (*print_usage_function)(void)); +void GetOptions(int, char **, + void (*print_usage_function)(void), + void (*print_version_function)(void)); void SetError(char *, ...); char *GetError(void); @@ -180,22 +191,22 @@ void clear_mem(void *, unsigned int); void swap_numbers(int *, int *); void swap_number_pairs(int *, int *, int *, int *); -int getFile8BitInteger(FILE *); +int getFile8BitInteger(File *); int putFile8BitInteger(FILE *, int); -int getFile16BitInteger(FILE *, int); +int getFile16BitInteger(File *, int); int putFile16BitInteger(FILE *, int, int); -int getFile32BitInteger(FILE *, int); +int getFile32BitInteger(File *, int); int putFile32BitInteger(FILE *, int, int); -boolean getFileChunk(FILE *, char *, int *, int); +boolean getFileChunk(File *, char *, int *, int); int putFileChunk(FILE *, char *, int, int); -int getFileVersion(FILE *); +int getFileVersion(File *); int putFileVersion(FILE *, int); -void ReadBytesFromFile(FILE *, byte *, unsigned int); +void ReadBytesFromFile(File *, byte *, unsigned int); void WriteBytesToFile(FILE *, byte *, unsigned int); -void ReadUnusedBytesFromFile(FILE *, unsigned int); +void ReadUnusedBytesFromFile(File *, unsigned int); void WriteUnusedBytesToFile(FILE *, unsigned int); #define getFile8Bit(f) getFile8BitInteger(f) @@ -234,6 +245,9 @@ int getNumNodes(ListNode *); File *openFile(char *, char *); int closeFile(File *); int checkEndOfFile(File *); +size_t readFile(File *, void *, size_t, size_t); +int seekFile(File *, long, int); +int getByteFromFile(File *); char *getStringFromFile(File *, char *, int); Directory *openDirectory(char *); @@ -252,9 +266,6 @@ char *get_mapped_token(char *); int get_parameter_value(char *, char *, int); -struct ScreenModeInfo *get_screen_mode_from_string(char *); -void get_aspect_ratio_from_screen_mode(struct ScreenModeInfo *, int *x, int *y); - struct FileInfo *getFileListFromConfigList(struct ConfigInfo *, struct ConfigTypeInfo *, char **, int); @@ -262,19 +273,19 @@ void LoadArtworkConfig(struct ArtworkListInfo *); void ReloadCustomArtworkList(struct ArtworkListInfo *); void FreeCustomArtworkLists(struct ArtworkListInfo *); -char *getErrorFilename(char *); -void openErrorFile(); -void closeErrorFile(); -void dumpErrorFile(); +char *getLogFilename(char *); +void OpenLogFiles(); +void CloseLogFiles(); +void DumpLogFile(int); + void NotifyUserAboutErrorFile(); #if DEBUG void debug_print_timestamp(int, char *); +#endif void print_timestamp_init(char *); void print_timestamp_time(char *); void print_timestamp_done(char *); -#endif /* DEBUG */ - #endif /* MISC_H */