summaryrefslogtreecommitdiff
path: root/src/input_common/gcadapter/gc_adapter.cpp
diff options
context:
space:
mode:
authorGravatar Ameer2020-07-06 22:09:07 -0400
committerGravatar Ameer2020-07-06 22:09:07 -0400
commit86abff48e1212498a3f6361012062458d8ae24ba (patch)
treec8973923bcd4ca500d66737642657d3f4bac9b2d /src/input_common/gcadapter/gc_adapter.cpp
parentSave origin state of GC controller analog features, compare against origin fo... (diff)
downloadyuzu-86abff48e1212498a3f6361012062458d8ae24ba.tar.gz
yuzu-86abff48e1212498a3f6361012062458d8ae24ba.tar.xz
yuzu-86abff48e1212498a3f6361012062458d8ae24ba.zip
Recalibrate reconnected controllers
Diffstat (limited to 'src/input_common/gcadapter/gc_adapter.cpp')
-rw-r--r--src/input_common/gcadapter/gc_adapter.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/input_common/gcadapter/gc_adapter.cpp b/src/input_common/gcadapter/gc_adapter.cpp
index 8465309d0..f173a018a 100644
--- a/src/input_common/gcadapter/gc_adapter.cpp
+++ b/src/input_common/gcadapter/gc_adapter.cpp
@@ -49,6 +49,11 @@ GCPadStatus Adapter::GetPadStatus(int port, const std::array<u8, 37>& adapter_pa
49 PadButton::PAD_TRIGGER_L, 49 PadButton::PAD_TRIGGER_L,
50 }; 50 };
51 51
52 if (adapter_controllers_status[port] == ControllerTypes::None && !get_origin[port]) {
53 // Controller may have been disconnected, recalibrate if reconnected.
54 get_origin[port] = true;
55 }
56
52 if (adapter_controllers_status[port] != ControllerTypes::None) { 57 if (adapter_controllers_status[port] != ControllerTypes::None) {
53 const u8 b1 = adapter_payload[1 + (9 * port) + 1]; 58 const u8 b1 = adapter_payload[1 + (9 * port) + 1];
54 const u8 b2 = adapter_payload[1 + (9 * port) + 2]; 59 const u8 b2 = adapter_payload[1 + (9 * port) + 2];