version 1.4 | | version 1.5 |
---|
| | |
typedef struct Joy_info { | | typedef struct Joy_info { |
int joyid; | | int joyid; |
ubyte present_mask; | | ubyte present_mask; |
| | ubyte hat_present; |
ubyte slow_read; | | ubyte slow_read; |
int max_timer; | | int max_timer; |
int read_count; | | int read_count; |
| | |
| | |
/* Hat stuff */ | | /* Hat stuff */ |
| | |
if (joy.dwPOV != JOY_POVCENTERED) | | if (joystick.hat_present && joy.dwPOV != JOY_POVCENTERED) |
{ | | { |
joystick.buttons[19].state = (joy.dwPOV < JOY_POVRIGHT || joy.dwPOV > JOY_POVLEFT); | | joystick.buttons[19].state = (joy.dwPOV < JOY_POVRIGHT || joy.dwPOV > JOY_POVLEFT); |
joystick.buttons[15].state = (joy.dwPOV < JOY_POVBACKWARD && joy.dwPOV > JOY_POVFORWARD); | | joystick.buttons[15].state = (joy.dwPOV < JOY_POVBACKWARD && joy.dwPOV > JOY_POVFORWARD); |
| | |
| | |
joystick.present_mask = JOY_1_X_AXIS | JOY_1_Y_AXIS; | | joystick.present_mask = JOY_1_X_AXIS | JOY_1_Y_AXIS; |
if (pjc.wCaps & JOYCAPS_HASZ) joystick.present_mask |= JOY_1_Z_AXIS; | | if (pjc.wCaps & JOYCAPS_HASZ) joystick.present_mask |= JOY_1_Z_AXIS; |
// if (pjc.wCaps & JOYCAPS_HASPOV) joystick.present_mask |= JOY_1_POV; | | joystick.hat_present = (pjc.wCaps & JOYCAPS_HASPOV)>0; |
if (pjc.wCaps & JOYCAPS_HASR) joystick.present_mask |= JOY_1_R_AXIS; | | if (pjc.wCaps & JOYCAPS_HASR) joystick.present_mask |= JOY_1_R_AXIS; |
if (pjc.wCaps & JOYCAPS_HASU) joystick.present_mask |= JOY_1_U_AXIS; | | if (pjc.wCaps & JOYCAPS_HASU) joystick.present_mask |= JOY_1_U_AXIS; |
if (pjc.wCaps & JOYCAPS_HASV) joystick.present_mask |= JOY_1_V_AXIS; | | if (pjc.wCaps & JOYCAPS_HASV) joystick.present_mask |= JOY_1_V_AXIS; |