--- hatari/src/includes/joy.h 2019/04/01 07:09:16 1.1.1.1 +++ hatari/src/includes/joy.h 2019/04/09 08:56:53 1.1.1.11 @@ -1,31 +1,46 @@ /* - Hatari + Hatari - joy.h + + This file is distributed under the GNU General Public License, version 2 + or at your option any later version. Read the file gpl.txt for details. */ -typedef struct { - int XPos,YPos; // 0...32768...65536 - int Buttons; // JOY_BUTTON1 -} JOYREADING; - -enum { - JOYSTICK_SPACE_NULL, // Not up/down - JOYSTICK_SPACE_DOWN, - JOYSTICK_SPACE_UP -}; +#ifndef HATARI_JOY_H +#define HATARI_JOY_H -#define USE_FIREBUTTON_2_AS_SPACE // Enable PC Joystick button 2 to mimick space bar (For XenonII,Flying Shark etc...) +enum +{ + JOYSTICK_SPACE_NULL, /* Not up/down */ + JOYSTICK_SPACE_DOWN, + JOYSTICK_SPACE_UP +}; -#define JOYRANGE_UP_VALUE 16384 // Joystick ranges in XY -#define JOYRANGE_DOWN_VALUE (32768+16384) -#define JOYRANGE_LEFT_VALUE 16384 -#define JOYRANGE_RIGHT_VALUE (32768+16384) +#define JOYRANGE_UP_VALUE -16384 /* Joystick ranges in XY */ +#define JOYRANGE_DOWN_VALUE 16383 +#define JOYRANGE_LEFT_VALUE -16384 +#define JOYRANGE_RIGHT_VALUE 16383 + +#define ATARIJOY_BITMASK_UP 0x01 +#define ATARIJOY_BITMASK_DOWN 0x02 +#define ATARIJOY_BITMASK_LEFT 0x04 +#define ATARIJOY_BITMASK_RIGHT 0x08 +#define ATARIJOY_BITMASK_FIRE 0x80 -extern BOOL bJoystickWorking[2]; extern int JoystickSpaceBar; -extern int cursorJoyEmu; extern void Joy_Init(void); -extern void Joy_InitWindows(void); -extern void Joy_PreventBothUsingCursorEmulation(void); -extern unsigned char Joy_GetStickData(unsigned int JoystickID); +extern void Joy_UnInit(void); +extern const char *Joy_GetName(int id); +extern int Joy_GetMaxId(void); +extern bool Joy_ValidateJoyId(int i); +extern Uint8 Joy_GetStickData(int nStJoyId); +extern bool Joy_SetCursorEmulation(int port); extern void Joy_ToggleCursorEmulation(void); +extern bool Joy_SwitchMode(int port); +extern bool Joy_KeyDown(int symkey, int modkey); +extern bool Joy_KeyUp(int symkey, int modkey); +extern void Joy_StePadButtons_ReadByte(void); +extern void Joy_StePadMulti_ReadWord(void); +extern void Joy_StePadMulti_WriteWord(void); + +#endif /* ifndef HATARI_JOY_H */