#define WIN_XSIZE 672
#define WIN_YSIZE 560
#define WIN_SDL_DEPTH 16 /* !!! change this !!! */
-#ifndef MSDOS
+
+#if !defined(PLATFORM_MSDOS)
#define WIN_XPOS 0
#define WIN_YPOS 0
-#else /* MSDOS */
+#else
#define WIN_XPOS ((XRES - WIN_XSIZE) / 2)
#define WIN_YPOS ((YRES - WIN_YSIZE) / 2)
-#endif /* MSDOS */
+#endif
+
#define SCR_FIELDX 17
#define SCR_FIELDY 17
#define MAX_BUF_XSIZE (SCR_FIELDX + 2)
boolean serveronly;
boolean network;
boolean verbose;
+ boolean debug;
};
struct SetupJoystickInfo
boolean team_mode;
boolean handicap;
boolean time_limit;
+ boolean fullscreen;
struct SetupInputInfo input[MAX_PLAYERS];
};
struct GlobalInfo
{
- int dummy;
+ float frames_per_second;
+ boolean fps_slowdown;
+ int fps_slowdown_factor;
};
extern Display *display;
extern Bitmap pix_masked[], tile_masked[];
extern Pixmap clipmask[], tile_clipmask[];
-#ifdef USE_XPM_LIBRARY
-extern XpmAttributes xpm_att[];
-#endif
-
extern DrawBuffer drawto, drawto_field, backbuffer, fieldbuffer;
extern Colormap cmap;
-extern int sound_pipe[2];
-extern int sound_device;
extern char *sound_device_name;
+
extern int joystick_device;
extern char *joystick_device_name[];
extern boolean motion_status;
extern int key_joystick_mapping;
extern int global_joystick_status, joystick_status;
-extern int sound_status;
-extern boolean sound_loops_allowed;
+extern boolean fullscreen_available;
+extern boolean fullscreen_enabled;
extern boolean redraw[MAX_BUF_XSIZE][MAX_BUF_YSIZE];
extern int redraw_x1, redraw_y1;
extern struct PlayerInfo stored_player[], *local_player;
extern struct HiScore highscore[];
extern struct TapeInfo tape;
-extern struct SoundInfo Sound[];
+extern struct SampleInfo Sound[];
extern struct JoystickInfo joystick[];
extern struct OptionInfo options;
extern struct SetupInfo setup;
extern struct GameInfo game;
+extern struct AudioSystemInfo audio;
extern struct GlobalInfo global;
extern char *sound_name[];
extern int background_loop[];
extern int num_bg_loops;
extern char *element_info[];
-
+extern int num_element_info;
/* often used screen positions */
#define SX 8
#define NUM_SOUNDS 62
/* default input keys */
-#define DEFAULT_KEY_LEFT KEY_Left
-#define DEFAULT_KEY_RIGHT KEY_Right
-#define DEFAULT_KEY_UP KEY_Up
-#define DEFAULT_KEY_DOWN KEY_Down
-#define DEFAULT_KEY_SNAP KEY_Shift_L
-#define DEFAULT_KEY_BOMB KEY_Shift_R
-#define DEFAULT_KEY_OKAY KEY_Return
-#define DEFAULT_KEY_CANCEL KEY_Escape
+#define DEFAULT_KEY_LEFT KSYM_Left
+#define DEFAULT_KEY_RIGHT KSYM_Right
+#define DEFAULT_KEY_UP KSYM_Up
+#define DEFAULT_KEY_DOWN KSYM_Down
+#define DEFAULT_KEY_SNAP KSYM_Shift_L
+#define DEFAULT_KEY_BOMB KSYM_Shift_R
+#define DEFAULT_KEY_OKAY KSYM_Return
+#define DEFAULT_KEY_CANCEL KSYM_Escape
/* directions for moving */
#define MV_NO_MOVING 0
#define TAPES_DIRECTORY "tapes"
#define SCORES_DIRECTORY "scores"
-#define PROGRAM_VERSION_STRING "1.4.0 SDL"
+#define PROGRAM_VERSION_STRING "1.5.0"
#define PROGRAM_TITLE_STRING "Rocks'n'Diamonds"
#define PROGRAM_AUTHOR_STRING "Holger Schemel"
-#define WINDOW_TITLE_STRING PROGRAM_TITLE_STRING " " PROGRAM_VERSION_STRING
-#define COPYRIGHT_STRING "Copyright ^1995-99 by " PROGRAM_AUTHOR_STRING
+#define PROGRAM_RIGHTS_STRING "Copyright ^1995-2000 by"
+#define PROGRAM_DOS_PORT_STRING "DOS port done by Guido Schulz"
+#define PROGRAM_IDENT_STRING PROGRAM_VERSION_STRING " " TARGET_STRING
+#define WINDOW_TITLE_STRING PROGRAM_TITLE_STRING " " PROGRAM_IDENT_STRING
+#define WINDOW_SUBTITLE_STRING PROGRAM_RIGHTS_STRING " " PROGRAM_AUTHOR_STRING
/* default name for empty highscore entry */
#define EMPTY_PLAYER_NAME "no name"
#define MB_MENU_CHOICE FALSE
#define MB_MENU_MARK TRUE
#define MB_MENU_INITIALIZE (-1)
-#define MB_LEFT 1
-#define MB_MIDDLE 2
-#define MB_RIGHT 3
+#define MB_LEFTBUTTON 1
+#define MB_MIDDLEBUTTON 2
+#define MB_RIGHTBUTTON 3
/* values for redraw_mask */
#define REDRAW_ALL (1 << 0)
#define REDRAW_MAIN (REDRAW_FIELD | \
REDRAW_TILES | \
REDRAW_MICROLEVEL)
+#define REDRAW_FPS (1 << 10)
#define REDRAWTILES_THRESHOLD (SCR_FIELDX * SCR_FIELDY / 2)
/* areas in bitmap PIX_DOOR */