#include "windows.h"
#elif defined(PLATFORM_MSDOS)
#include "msdos.h"
+#elif defined(PLATFORM_ANDROID)
+#include "android.h"
#endif
#if defined(TARGET_SDL)
/* type definitions */
+#if defined(TARGET_SDL2)
+typedef int (*EventFilter)(void *, Event *);
+#else
typedef int (*EventFilter)(const Event *);
+#endif
/* structure definitions */
struct ProgramInfo
{
- char *command_basepath; /* directory that contains the program */
+ char *command_basepath; /* path to the program binary */
char *command_basename; /* base filename of the program binary */
+ char *maindata_path; /* main game data (installation) directory */
+
char *userdata_subdir; /* personal user game data directory */
char *userdata_subdir_unix; /* personal user game data directory (Unix) */
char *userdata_path; /* resulting full path to game data directory */
int version_minor;
int version_patch;
+ void (*exit_message_function)(char *, va_list);
void (*exit_function)(int);
};
int override_level_sounds; /* not boolean -- can also be "AUTO" */
int override_level_music; /* not boolean -- can also be "AUTO" */
+ int volume_simple;
+ int volume_loops;
+ int volume_music;
+
struct SetupEditorInfo editor;
struct SetupEditorCascadeInfo editor_cascade;
struct SetupShortcutInfo shortcut;
extern int button_status;
extern boolean motion_status;
+#if defined(TARGET_SDL2)
+extern boolean keyrepeat_status;
+#endif
extern int redraw_mask;
extern int redraw_tiles;
void InitProgramInfo(char *, char *, char *, char *, char *, char *, char *,
char *, char *, char *, char *, char *, int);
+void InitExitMessageFunction(void (*exit_message_function)(char *, va_list));
void InitExitFunction(void (*exit_function)(int));
void InitPlatformDependentStuff(void);
void ClosePlatformDependentStuff(void);