Do not reject 1.5 format SOLs
[neverball] / share / config.h
index 7d7ac8e..8a83ffd 100644 (file)
 
 /*---------------------------------------------------------------------------*/
 
-enum {
-    CONFIG_FULLSCREEN,
-    CONFIG_WIDTH,
-    CONFIG_HEIGHT,
-    CONFIG_STEREO,
-    CONFIG_CAMERA,
-    CONFIG_TEXTURES,
-    CONFIG_GEOMETRY,
-    CONFIG_REFLECTION,
-    CONFIG_MULTISAMPLE,
-    CONFIG_MIPMAP,
-    CONFIG_ANISO,
-    CONFIG_BACKGROUND,
-    CONFIG_SHADOW,
-    CONFIG_AUDIO_BUFF,
-    CONFIG_MOUSE_SENSE,
-    CONFIG_MOUSE_INVERT,
-    CONFIG_VSYNC,
-    CONFIG_NICE,
-    CONFIG_FPS,
-    CONFIG_SOUND_VOLUME,
-    CONFIG_MUSIC_VOLUME,
-    CONFIG_JOYSTICK,
-    CONFIG_JOYSTICK_DEVICE,
-    CONFIG_JOYSTICK_AXIS_X,
-    CONFIG_JOYSTICK_AXIS_Y,
-    CONFIG_JOYSTICK_BUTTON_A,
-    CONFIG_JOYSTICK_BUTTON_B,
-    CONFIG_JOYSTICK_BUTTON_R,
-    CONFIG_JOYSTICK_BUTTON_L,
-    CONFIG_JOYSTICK_BUTTON_EXIT,
-    CONFIG_JOYSTICK_CAMERA_1,
-    CONFIG_JOYSTICK_CAMERA_2,
-    CONFIG_JOYSTICK_CAMERA_3,
-    CONFIG_JOYSTICK_DPAD_L,
-    CONFIG_JOYSTICK_DPAD_R,
-    CONFIG_JOYSTICK_DPAD_U,
-    CONFIG_JOYSTICK_DPAD_D,
-    CONFIG_KEY_CAMERA_1,
-    CONFIG_KEY_CAMERA_2,
-    CONFIG_KEY_CAMERA_3,
-    CONFIG_KEY_CAMERA_R,
-    CONFIG_KEY_CAMERA_L,
-    CONFIG_VIEW_FOV,
-    CONFIG_VIEW_DP,
-    CONFIG_VIEW_DC,
-    CONFIG_VIEW_DZ,
-    CONFIG_ROTATE_FAST,
-    CONFIG_ROTATE_SLOW,
-    CONFIG_KEY_FORWARD,
-    CONFIG_KEY_BACKWARD,
-    CONFIG_KEY_LEFT,
-    CONFIG_KEY_RIGHT,
-    CONFIG_KEY_PAUSE,
-    CONFIG_KEY_RESTART,
-    CONFIG_CHEAT,
-    CONFIG_STATS,
-    CONFIG_UNIFORM,
-
-    CONFIG_OPTION_D_COUNT
-};
-
-enum {
-    CONFIG_PLAYER,
-    CONFIG_BALL,
-    CONFIG_WIIMOTE_ADDR,
-
-    CONFIG_OPTION_S_COUNT
-};
-
-/*---------------------------------------------------------------------------*/
-
-#define DEFAULT_FULLSCREEN           0
-#define DEFAULT_WIDTH                800
-#define DEFAULT_HEIGHT               600
-#define DEFAULT_STEREO               0
-#define DEFAULT_CAMERA               0
-#define DEFAULT_TEXTURES             1
-#define DEFAULT_GEOMETRY             1
-#define DEFAULT_REFLECTION           1
-#define DEFAULT_MULTISAMPLE          0
-#define DEFAULT_MIPMAP               0
-#define DEFAULT_ANISO                1
-#define DEFAULT_BACKGROUND           1
-#define DEFAULT_SHADOW               1
-#define DEFAULT_AUDIO_BUFF           AUDIO_BUFF_HI
-#define DEFAULT_MOUSE_SENSE          300
-#define DEFAULT_MOUSE_INVERT         0
-#define DEFAULT_VSYNC                1
-#define DEFAULT_NICE                 0
-#define DEFAULT_FPS                  0
-#define DEFAULT_SOUND_VOLUME         10
-#define DEFAULT_MUSIC_VOLUME         6
-#define DEFAULT_JOYSTICK             0
-#define DEFAULT_JOYSTICK_DEVICE      0
-#define DEFAULT_JOYSTICK_AXIS_X      0
-#define DEFAULT_JOYSTICK_AXIS_Y      1
-#define DEFAULT_JOYSTICK_BUTTON_A    0
-#define DEFAULT_JOYSTICK_BUTTON_B    1
-#define DEFAULT_JOYSTICK_BUTTON_R    2
-#define DEFAULT_JOYSTICK_BUTTON_L    3
-#define DEFAULT_JOYSTICK_BUTTON_EXIT 4
-#define DEFAULT_JOYSTICK_CAMERA_1    5
-#define DEFAULT_JOYSTICK_CAMERA_2    6
-#define DEFAULT_JOYSTICK_CAMERA_3    7
-#define DEFAULT_JOYSTICK_DPAD_L      8
-#define DEFAULT_JOYSTICK_DPAD_R      9
-#define DEFAULT_JOYSTICK_DPAD_U      10
-#define DEFAULT_JOYSTICK_DPAD_D      11
-#define DEFAULT_WIIMOTE_ADDR         ""
-#define DEFAULT_KEY_CAMERA_1         SDLK_F1
-#define DEFAULT_KEY_CAMERA_2         SDLK_F2
-#define DEFAULT_KEY_CAMERA_3         SDLK_F3
-#define DEFAULT_KEY_CAMERA_R         SDLK_d
-#define DEFAULT_KEY_CAMERA_L         SDLK_s
-#define DEFAULT_VIEW_FOV             50
-#define DEFAULT_VIEW_DP              75
-#define DEFAULT_VIEW_DC              25
-#define DEFAULT_VIEW_DZ              200
-#define DEFAULT_ROTATE_SLOW          100
-#define DEFAULT_ROTATE_FAST          200
-#define DEFAULT_PLAYER               ""
-#define DEFAULT_BALL                 "ball/basic-ball/basic-ball"
-#define DEFAULT_CHEAT                0
-#define DEFAULT_KEY_FORWARD          SDLK_UP
-#define DEFAULT_KEY_BACKWARD         SDLK_DOWN
-#define DEFAULT_KEY_LEFT             SDLK_LEFT
-#define DEFAULT_KEY_RIGHT            SDLK_RIGHT
-#define DEFAULT_KEY_PAUSE            SDLK_SPACE
-#define DEFAULT_KEY_RESTART          SDLK_r
-#define DEFAULT_STATS                0
-#define DEFAULT_UNIFORM              0
+/* Integer options. */
+
+extern int CONFIG_FULLSCREEN;
+extern int CONFIG_WIDTH;
+extern int CONFIG_HEIGHT;
+extern int CONFIG_STEREO;
+extern int CONFIG_CAMERA;
+extern int CONFIG_TEXTURES;
+extern int CONFIG_GEOMETRY;
+extern int CONFIG_REFLECTION;
+extern int CONFIG_MULTISAMPLE;
+extern int CONFIG_MIPMAP;
+extern int CONFIG_ANISO;
+extern int CONFIG_BACKGROUND;
+extern int CONFIG_SHADOW;
+extern int CONFIG_AUDIO_BUFF;
+extern int CONFIG_MOUSE_SENSE;
+extern int CONFIG_MOUSE_INVERT;
+extern int CONFIG_VSYNC;
+extern int CONFIG_MOUSE_CAMERA_1;
+extern int CONFIG_MOUSE_CAMERA_2;
+extern int CONFIG_MOUSE_CAMERA_3;
+extern int CONFIG_MOUSE_CAMERA_TOGGLE;
+extern int CONFIG_MOUSE_CAMERA_L;
+extern int CONFIG_MOUSE_CAMERA_R;
+extern int CONFIG_NICE;
+extern int CONFIG_FPS;
+extern int CONFIG_SOUND_VOLUME;
+extern int CONFIG_MUSIC_VOLUME;
+extern int CONFIG_JOYSTICK;
+extern int CONFIG_JOYSTICK_DEVICE;
+extern int CONFIG_JOYSTICK_AXIS_X;
+extern int CONFIG_JOYSTICK_AXIS_Y;
+extern int CONFIG_JOYSTICK_AXIS_U;
+extern int CONFIG_JOYSTICK_AXIS_X_INVERT;
+extern int CONFIG_JOYSTICK_AXIS_Y_INVERT;
+extern int CONFIG_JOYSTICK_AXIS_U_INVERT;
+extern int CONFIG_JOYSTICK_BUTTON_A;
+extern int CONFIG_JOYSTICK_BUTTON_B;
+extern int CONFIG_JOYSTICK_BUTTON_R;
+extern int CONFIG_JOYSTICK_BUTTON_L;
+extern int CONFIG_JOYSTICK_BUTTON_EXIT;
+extern int CONFIG_JOYSTICK_CAMERA_1;
+extern int CONFIG_JOYSTICK_CAMERA_2;
+extern int CONFIG_JOYSTICK_CAMERA_3;
+extern int CONFIG_JOYSTICK_DPAD_L;
+extern int CONFIG_JOYSTICK_DPAD_R;
+extern int CONFIG_JOYSTICK_DPAD_U;
+extern int CONFIG_JOYSTICK_DPAD_D;
+extern int CONFIG_JOYSTICK_CAMERA_TOGGLE;
+extern int CONFIG_JOYSTICK_ROTATE_FAST;
+extern int CONFIG_KEY_CAMERA_1;
+extern int CONFIG_KEY_CAMERA_2;
+extern int CONFIG_KEY_CAMERA_3;
+extern int CONFIG_KEY_CAMERA_TOGGLE;
+extern int CONFIG_KEY_CAMERA_R;
+extern int CONFIG_KEY_CAMERA_L;
+extern int CONFIG_KEY_FORWARD;
+extern int CONFIG_KEY_BACKWARD;
+extern int CONFIG_KEY_LEFT;
+extern int CONFIG_KEY_RIGHT;
+extern int CONFIG_KEY_PAUSE;
+extern int CONFIG_KEY_RESTART;
+extern int CONFIG_KEY_SCORE_NEXT;
+extern int CONFIG_KEY_ROTATE_FAST;
+extern int CONFIG_VIEW_FOV;
+extern int CONFIG_VIEW_DP;
+extern int CONFIG_VIEW_DC;
+extern int CONFIG_VIEW_DZ;
+extern int CONFIG_ROTATE_FAST;
+extern int CONFIG_ROTATE_SLOW;
+extern int CONFIG_CHEAT;
+extern int CONFIG_STATS;
+extern int CONFIG_UNIFORM;
+extern int CONFIG_SCREENSHOT;
+extern int CONFIG_LOCK_GOALS;
+
+/* String options. */
+
+extern int CONFIG_PLAYER;
+extern int CONFIG_BALL_FILE;
+extern int CONFIG_WIIMOTE_ADDR;
+extern int CONFIG_REPLAY_NAME;
 
 /*---------------------------------------------------------------------------*/
 
 void config_init(void);
 void config_load(void);
 void config_save(void);
-int  config_mode(int, int, int);
-
-int  config_perf(void);
-void config_sync(void);
-void config_swap(void);
 
 /*---------------------------------------------------------------------------*/
 
@@ -181,14 +127,8 @@ void config_tgl_d(int);
 int  config_tst_d(int, int);
 int  config_get_d(int);
 
-void config_set_s(int, const char *);
-void config_get_s(int, char *, int);
-
-/*---------------------------------------------------------------------------*/
-
-void config_set_grab(int w);
-void config_clr_grab(void);
-int  config_get_grab(void);
+void        config_set_s(int, const char *);
+const char *config_get_s(int);
 
 /*---------------------------------------------------------------------------*/
 
@@ -198,10 +138,7 @@ void config_clr_cheat(void);
 
 /*---------------------------------------------------------------------------*/
 
-void config_push_persp(float, float, float);
-void config_push_ortho(void);
-void config_pop_matrix(void);
-void config_clear(void);
+int config_screenshot(void);
 
 /*---------------------------------------------------------------------------*/