Commit babaa7d2bdc2b7a8a915ce3a58b022b8fe7c2614

Sam Lantinga 2022-08-24T16:10:47

Fixed PS3 accelerometer values on little endian systems

1
2
3
4
5
6
7
8
9
10
11
12
13
diff --git a/src/joystick/hidapi/SDL_hidapi_ps3.c b/src/joystick/hidapi/SDL_hidapi_ps3.c
index c178a9f..c52a87b 100644
--- a/src/joystick/hidapi/SDL_hidapi_ps3.c
+++ b/src/joystick/hidapi/SDL_hidapi_ps3.c
@@ -318,6 +318,8 @@ HIDAPI_DriverPS3_SetJoystickSensorsEnabled(SDL_HIDAPI_Device *device, SDL_Joysti
 static float
 HIDAPI_DriverPS3_ScaleAccel(Sint16 value)
 {
+    /* Accelerometer values are in big endian order */
+    value = SDL_SwapBE16(value);
     return (float)(value - 511) / 113.0f;
 }