-/***********************************************************
-* 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
#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
/* 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 PrintLine(char *, int);
+void PrintLineWithPrefix(char *, char *, int);
+
char *int2str(int, int);
char *i_to_a(unsigned int);
int log_2(unsigned int);
void Delay(unsigned int);
boolean FrameReached(unsigned int *, unsigned int);
boolean DelayReached(unsigned int *, unsigned int);
-void WaitUntilDelayReached(unsigned int *, 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);
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);
boolean strPrefixLower(char *, char *);
boolean strSuffixLower(char *, char *);
-void GetOptions(char **, void (*print_usage_function)(void));
+void GetOptions(char **,
+ void (*print_usage_function)(void),
+ void (*print_version_function)(void));
void SetError(char *, ...);
char *GetError(void);
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)
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 *);
DirectoryEntry *readDirectory(Directory *);
void freeDirectoryEntry(DirectoryEntry *);
+boolean directoryExists(char *);
boolean fileExists(char *);
boolean FileIsGraphic(char *);
boolean FileIsSound(char *);
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 */