Browse Source

Avoid initializing single-joycon layouts with handheld controller

nce_cpp
Zach Hilman 8 years ago
parent
commit
93c0478c5c
  1. 5
      src/core/hle/service/hid/hid.cpp
  2. 1
      src/core/hle/service/hid/hid.h

5
src/core/hle/service/hid/hid.cpp

@ -83,7 +83,10 @@ private:
controller_header.left_color_buttons = JOYCON_BUTTONS_NEON_BLUE;
for (size_t controller = 0; controller < mem.controllers.size(); controller++) {
for (int index = 0; index < HID_NUM_LAYOUTS; index++) {
for (int index = 0;
index <
(controller != Controller_Handheld ? HID_NUM_LAYOUTS : HID_NUM_LAYOUTS_HANDHELD);
index++) {
ControllerLayout& layout = mem.controllers[controller].layouts[index];
layout.header.num_entries = HID_NUM_ENTRIES;
layout.header.max_entry_index = HID_NUM_ENTRIES - 1;

1
src/core/hle/service/hid/hid.h

@ -13,6 +13,7 @@ namespace Service::HID {
constexpr u32 HID_NUM_ENTRIES = 17;
constexpr u32 HID_NUM_LAYOUTS = 7;
constexpr u32 HID_NUM_LAYOUTS_HANDHELD = 2;
constexpr s32 HID_JOYSTICK_MAX = 0x8000;
constexpr s32 HID_JOYSTICK_MIN = -0x8000;

Loading…
Cancel
Save