X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Flibgame%2Fjoystick.h;h=48202d2efdea8a33bd5ec95e43d717451f888fa8;hp=b1fca495273fe601e76ed63becc45959c53ea780;hb=e02c111162d5d8a13715de71d93494120380ec9b;hpb=41e8d55b767c898f20c29a1b0b8d2ef8840be2f5 diff --git a/src/libgame/joystick.h b/src/libgame/joystick.h index b1fca495..48202d2e 100644 --- a/src/libgame/joystick.h +++ b/src/libgame/joystick.h @@ -1,28 +1,28 @@ -/*********************************************************** -* Artsoft Retro-Game Library * -*----------------------------------------------------------* -* (c) 1995-2002 Artsoft Entertainment * -* Holger Schemel * -* Detmolder Strasse 189 * -* 33604 Bielefeld * -* Germany * -* e-mail: info@artsoft.org * -*----------------------------------------------------------* -* joystick.h * -***********************************************************/ +// ============================================================================ +// Artsoft Retro-Game Library +// ---------------------------------------------------------------------------- +// (c) 1995-2014 by Artsoft Entertainment +// Holger Schemel +// info@artsoft.org +// http://www.artsoft.org/ +// ---------------------------------------------------------------------------- +// joystick.h +// ============================================================================ #ifndef JOYSTICK_H #define JOYSTICK_H #include "system.h" -/* values for the joystick */ #define JOYSTICK_NOT_AVAILABLE 0 #define JOYSTICK_AVAILABLE (1 << 0) #define JOYSTICK_ACTIVE (1 << 1) - +#define JOYSTICK_CONFIGURED (1 << 2) +#define JOYSTICK_NOT_CONFIGURED (1 << 3) #define JOYSTICK_ACTIVATED (JOYSTICK_AVAILABLE | JOYSTICK_ACTIVE) +#define MAX_JOYSTICK_NAME_LEN 40 + #if defined(PLATFORM_FREEBSD) #define DEV_JOYSTICK_0 "/dev/joy0" #define DEV_JOYSTICK_1 "/dev/joy1" @@ -38,65 +38,49 @@ /* get these values from the program 'js' from the joystick package, */ /* set JOYSTICK_PERCENT to a threshold appropriate for your joystick */ -#ifdef TARGET_SDL -#define JOYSTICK_XLEFT -32767 +#define JOYSTICK_MAX_AXIS_POS 32767 + +#define JOYSTICK_XLEFT -JOYSTICK_MAX_AXIS_POS #define JOYSTICK_XMIDDLE 0 -#define JOYSTICK_XRIGHT 32767 -#define JOYSTICK_YUPPER -32767 +#define JOYSTICK_XRIGHT +JOYSTICK_MAX_AXIS_POS +#define JOYSTICK_YUPPER -JOYSTICK_MAX_AXIS_POS #define JOYSTICK_YMIDDLE 0 -#define JOYSTICK_YLOWER 32767 -#else -#define JOYSTICK_XLEFT 30 -#define JOYSTICK_XMIDDLE 530 -#define JOYSTICK_XRIGHT 1250 -#define JOYSTICK_YUPPER 40 -#define JOYSTICK_YMIDDLE 680 -#define JOYSTICK_YLOWER 1440 -#endif +#define JOYSTICK_YLOWER +JOYSTICK_MAX_AXIS_POS #define JOYSTICK_PERCENT 25 +#define JOY_NO_ACTION 0 #define JOY_LEFT MV_LEFT #define JOY_RIGHT MV_RIGHT #define JOY_UP MV_UP #define JOY_DOWN MV_DOWN -#define JOY_BUTTON_1 (1 << 4) -#define JOY_BUTTON_2 (1 << 5) -#define JOY_BUTTON (JOY_BUTTON_1 | JOY_BUTTON_2) +#define JOY_BUTTON_1 KEY_BUTTON_1 +#define JOY_BUTTON_2 KEY_BUTTON_2 +#define JOY_BUTTON_SNAP KEY_BUTTON_SNAP +#define JOY_BUTTON_DROP KEY_BUTTON_DROP +#define JOY_MOTION KEY_MOTION +#define JOY_BUTTON KEY_BUTTON +#define JOY_ACTION KEY_ACTION #define JOY_BUTTON_NOT_PRESSED 0 #define JOY_BUTTON_PRESSED 1 #define JOY_BUTTON_NEW_PRESSED 2 #define JOY_BUTTON_NEW_RELEASED 3 -#ifdef NO_JOYSTICK -#define JOYSTICK_STATUS JOYSTICK_NOT_AVAILABLE -#else -#define JOYSTICK_STATUS JOYSTICK_AVAILABLE -#endif - - char *getJoyNameFromJoySymbol(int); int getJoySymbolFromJoyName(char *); int getJoystickNrFromDeviceName(char *); char *getDeviceNameFromJoystickNr(int); - -#if defined(TARGET_SDL) -SDL_Joystick *Get_SDL_Joystick(int); -boolean Open_SDL_Joystick(int); -void Close_SDL_Joystick(int); -boolean Check_SDL_JoystickOpened(int); -void HandleJoystickEvent(Event *); -int Get_SDL_Joystick_Axis(int, int); -#endif +char *getFormattedJoystickName(const char *); void CheckJoystickData(void); int Joystick(int); +int JoystickExt(int, boolean); int JoystickButton(int); int AnyJoystick(void); int AnyJoystickButton(void); -void DeactivateJoystickForCalibration(); -void ActivateJoystickIfAvailable(); +void DeactivateJoystick(); +void ActivateJoystick(); #endif /* JOYSTICK_H */