Fixed compile errors on various platforms

This commit is contained in:
Sam Lantinga 2016-12-22 18:43:00 -07:00
parent ca019dada5
commit ad26769cd7
4 changed files with 6 additions and 4 deletions

View File

@ -563,7 +563,7 @@ SDL_SYS_JoystickUpdate(SDL_Joystick * joy)
v *= 32768 /
((hitem.logical_maximum -
hitem.logical_minimum + 1) / 2);
if (v != joy->axes[naxe]) {
if (v != joy->axes[naxe].value) {
SDL_PrivateJoystickAxis(joy, naxe, v);
}
} else if (usage == HUG_HAT_SWITCH) {

View File

@ -134,6 +134,7 @@ GetHIDScaledCalibratedState(recDevice * pDevice, recElement * pElement, SInt32 m
const float deviceScale = max - min;
const float readScale = pElement->maxReport - pElement->minReport;
const SInt32 value = GetHIDElementState(pDevice, pElement);
printf("MIN/MAX = %d/%d, value = %d\n", pElement->minReport, pElement->maxReport, value);
if (readScale == 0) {
return value; /* no scaling at all */
}
@ -691,8 +692,9 @@ SDL_SYS_JoystickUpdate(SDL_Joystick * joystick)
element = device->firstAxis;
i = 0;
while (element) {
printf("Getting axis %d ", i);
value = GetHIDScaledCalibratedState(device, element, -32768, 32767);
if (value != joystick->axes[i]) {
if (value != joystick->axes[i].value) {
SDL_PrivateJoystickAxis(joystick, i, value);
}
element = element->pNext;

View File

@ -197,7 +197,7 @@ extern "C"
/* Generate axis motion events */
for (i = 0; i < joystick->naxes; ++i) {
change = ((int32) axes[i] - joystick->axes[i]);
change = ((int32) axes[i] - joystick->axes[i].value);
if ((change > JITTER) || (change < -JITTER)) {
SDL_PrivateJoystickAxis(joystick, i, axes[i]);
}

View File

@ -516,7 +516,7 @@ SDL_SYS_MFIJoystickUpdate(SDL_Joystick * joystick)
* initializes its values to 0. We only want to make sure the
* player index is up to date if the user actually moves an axis. */
if ((i != 2 && i != 5) || axes[i] != -32768) {
updateplayerindex |= (joystick->axes[i] != axes[i]);
updateplayerindex |= (joystick->axes[i].value != axes[i]);
}
SDL_PrivateJoystickAxis(joystick, i, axes[i]);
}