From 313dc20036b7a957af278ccc0ddbcd0a2a8d2680 Mon Sep 17 00:00:00 2001 From: Tim Schumacher Date: Sun, 31 Mar 2019 13:09:43 +0200 Subject: [PATCH] dinput: Map wheel, gas, and brake axes as well. The axes wheel, gas, and brake are just differently named replacements for X, Y, and Z when using wheel-like joysticks. Make those accessible by remapping them to X, Y, and Z internally. Signed-off-by: Tim Schumacher Signed-off-by: Alexandre Julliard (cherry picked from commit 1a6458bad8191a8188d76ba21b38ef457bfe1295) Signed-off-by: Michael Stefaniuc --- dlls/dinput/joystick_linux.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/dlls/dinput/joystick_linux.c b/dlls/dinput/joystick_linux.c index 963e62f017c..c4efc933c28 100644 --- a/dlls/dinput/joystick_linux.c +++ b/dlls/dinput/joystick_linux.c @@ -239,6 +239,14 @@ static INT find_joystick_devices(void) joydev.dev_axes_map[j] = j; found_axes++; } + else if (axes_map[j] <= 10) + { + /* Axes 8 through 10 are Wheel, Gas and Brake, + * remap to 0, 1 and 2 + */ + joydev.dev_axes_map[j] = axes_map[j] - 8; + found_axes++; + } else if (axes_map[j] == 16 || axes_map[j] == 17) {