X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=55201a9f2fe8d81f9c6ea2c9b3880fa283128518;hb=c4e1a476135ce36417cdd797481feeaaff4301af;hp=3ff406f00037a1e953aaf43d9d0f3429c0f628d4;hpb=2ae6ae8ed951e87fcba7c363705cd6ddea8de91c;p=rocksndiamonds.git diff --git a/src/libgame/system.h b/src/libgame/system.h index 3ff406f0..55201a9f 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -30,10 +30,15 @@ /* contant definitions */ -#define DEFAULT_DEPTH 0 +/* the additional 'b' is needed for Win32 to open files in binary mode */ +#define MODE_READ "rb" +#define MODE_WRITE "wb" +#define MODE_APPEND "ab" -#define FULLSCREEN_NOT_AVAILABLE FALSE -#define FULLSCREEN_AVAILABLE TRUE +#define DEFAULT_DEPTH 0 + +#define FULLSCREEN_NOT_AVAILABLE FALSE +#define FULLSCREEN_AVAILABLE TRUE /* values for button_status */ #define MB_NOT_PRESSED FALSE @@ -94,6 +99,7 @@ #define RW_BASE_PATH RW_GAME_DIR #define GRAPHICS_DIRECTORY "graphics" +#define MUSIC_DIRECTORY "music" #define SOUNDS_DIRECTORY "sounds" #define LEVELS_DIRECTORY "levels" #define TAPES_DIRECTORY "tapes" @@ -166,12 +172,19 @@ struct VideoSystemInfo struct AudioSystemInfo { boolean sound_available; + boolean music_available; boolean loops_available; + boolean mods_available; boolean sound_enabled; + int soundserver_pipe[2]; int soundserver_pid; char *device_name; int device_fd; + + int channels; + int music_channel; + int music_nr; }; struct GfxInfo @@ -290,8 +303,8 @@ inline boolean ChangeVideoModeIfNeeded(boolean); Bitmap *LoadImage(char *); -inline boolean OpenAudio(struct AudioSystemInfo *); -inline void CloseAudio(struct AudioSystemInfo *); +inline void OpenAudio(void); +inline void CloseAudio(void); inline void SetAudioMode(boolean); inline void InitEventFilter(EventFilter);