Fixed compile errors on various platforms
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
diff --git a/src/joystick/bsd/SDL_sysjoystick.c b/src/joystick/bsd/SDL_sysjoystick.c
index d72d22d..a816569 100644
--- a/src/joystick/bsd/SDL_sysjoystick.c
+++ b/src/joystick/bsd/SDL_sysjoystick.c
@@ -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) {
diff --git a/src/joystick/darwin/SDL_sysjoystick.c b/src/joystick/darwin/SDL_sysjoystick.c
index b4a824b..5b5e2bf 100644
--- a/src/joystick/darwin/SDL_sysjoystick.c
+++ b/src/joystick/darwin/SDL_sysjoystick.c
@@ -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;
diff --git a/src/joystick/haiku/SDL_haikujoystick.cc b/src/joystick/haiku/SDL_haikujoystick.cc
index 13bc6c6..c8d2362 100644
--- a/src/joystick/haiku/SDL_haikujoystick.cc
+++ b/src/joystick/haiku/SDL_haikujoystick.cc
@@ -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]);
}
diff --git a/src/joystick/iphoneos/SDL_sysjoystick.m b/src/joystick/iphoneos/SDL_sysjoystick.m
index 893f627..7d03ca4 100644
--- a/src/joystick/iphoneos/SDL_sysjoystick.m
+++ b/src/joystick/iphoneos/SDL_sysjoystick.m
@@ -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]);
}