From bad01be1df1af819894d11da9befc2f2a04d56d8 Mon Sep 17 00:00:00 2001 From: Vas Crabb Date: Thu, 19 Jan 2023 04:58:56 +1100 Subject: osd: Better scaling factors for XInput DJ Hero turntable dials. [DarkMoS] --- src/osd/modules/input/input_xinput.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/osd/modules/input/input_xinput.cpp b/src/osd/modules/input/input_xinput.cpp index 2b40ab0eea9..d996424c643 100644 --- a/src/osd/modules/input/input_xinput.cpp +++ b/src/osd/modules/input/input_xinput.cpp @@ -1391,7 +1391,7 @@ void xinput_turntable_device::poll() m_switches[SWITCH_GREEN + i] = BIT(trigger_right(), i) ? 0xff : 0x00; // translate axes - m_axes[AXIS_TURNTABLE] = thumb_left_y() * INPUT_RELATIVE_PER_PIXEL; + m_axes[AXIS_TURNTABLE] = s32(thumb_left_y()) * INPUT_RELATIVE_PER_PIXEL * 2; m_axes[AXIS_CROSSFADE] = normalize_absolute_axis(thumb_right_y(), XINPUT_AXIS_MINVALUE, XINPUT_AXIS_MAXVALUE); // convert effect dial value to relative displacement @@ -1402,7 +1402,7 @@ void xinput_turntable_device::poll() effect_delta -= 0x1'0000; else if (-0x8000 > effect_delta) effect_delta += 0x1'0000; - m_axes[AXIS_EFFECT] = effect_delta * INPUT_RELATIVE_PER_PIXEL; + m_axes[AXIS_EFFECT] = effect_delta * INPUT_RELATIVE_PER_PIXEL / 128; } m_prev_effect = u16(thumb_right_x()); } -- cgit v1.2.3