Browse Source
Merge pull request #4350 from ogniK5377/hid-update-connected
hid: Only update keyboard & debug pad inputs if enabled
pull/15/merge
bunnei
5 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with
37 additions and
33 deletions
-
src/core/hle/service/hid/controllers/debug_pad.cpp
-
src/core/hle/service/hid/controllers/keyboard.cpp
|
|
|
@ -39,6 +39,8 @@ void Controller_DebugPad::OnUpdate(const Core::Timing::CoreTiming& core_timing, |
|
|
|
|
|
|
|
cur_entry.sampling_number = last_entry.sampling_number + 1; |
|
|
|
cur_entry.sampling_number2 = cur_entry.sampling_number; |
|
|
|
|
|
|
|
if (Settings::values.debug_pad_enabled) { |
|
|
|
cur_entry.attribute.connected.Assign(1); |
|
|
|
auto& pad = cur_entry.pad_state; |
|
|
|
|
|
|
|
@ -66,6 +68,7 @@ void Controller_DebugPad::OnUpdate(const Core::Timing::CoreTiming& core_timing, |
|
|
|
cur_entry.l_stick.y = static_cast<s32>(stick_l_y_f * HID_JOYSTICK_MAX); |
|
|
|
cur_entry.r_stick.x = static_cast<s32>(stick_r_x_f * HID_JOYSTICK_MAX); |
|
|
|
cur_entry.r_stick.y = static_cast<s32>(stick_r_y_f * HID_JOYSTICK_MAX); |
|
|
|
} |
|
|
|
|
|
|
|
std::memcpy(data, &shared_memory, sizeof(SharedMemory)); |
|
|
|
} |
|
|
|
|
|
|
|
@ -40,15 +40,16 @@ void Controller_Keyboard::OnUpdate(const Core::Timing::CoreTiming& core_timing, |
|
|
|
|
|
|
|
cur_entry.key.fill(0); |
|
|
|
cur_entry.modifier = 0; |
|
|
|
|
|
|
|
if (Settings::values.keyboard_enabled) { |
|
|
|
for (std::size_t i = 0; i < keyboard_keys.size(); ++i) { |
|
|
|
cur_entry.key[i / KEYS_PER_BYTE] |= (keyboard_keys[i]->GetStatus() << (i % KEYS_PER_BYTE)); |
|
|
|
cur_entry.key[i / KEYS_PER_BYTE] |= |
|
|
|
(keyboard_keys[i]->GetStatus() << (i % KEYS_PER_BYTE)); |
|
|
|
} |
|
|
|
|
|
|
|
for (std::size_t i = 0; i < keyboard_mods.size(); ++i) { |
|
|
|
cur_entry.modifier |= (keyboard_mods[i]->GetStatus() << i); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
std::memcpy(data + SHARED_MEMORY_OFFSET, &shared_memory, sizeof(SharedMemory)); |
|
|
|
} |
|
|
|
|
|
|
|
|