summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2023-01-19 04:58:56 +1100
committer Vas Crabb <vas@vastheman.com>2023-01-19 04:58:56 +1100
commitbad01be1df1af819894d11da9befc2f2a04d56d8 (patch)
tree2c26a159821d0229fec9379803df13b7269535cc
parentf3a28770c2f0de614317495155d417627df7e38a (diff)
osd: Better scaling factors for XInput DJ Hero turntable dials. [DarkMoS]
-rw-r--r--src/osd/modules/input/input_xinput.cpp4
1 files 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());
}