|
|
@ -101,7 +101,8 @@ Controller_NPad::Controller_NPad(Core::System& system_, |
|
|
for (std::size_t i = 0; i < controller_data.size(); ++i) { |
|
|
for (std::size_t i = 0; i < controller_data.size(); ++i) { |
|
|
auto& controller = controller_data[i]; |
|
|
auto& controller = controller_data[i]; |
|
|
controller.device = system.HIDCore().GetEmulatedControllerByIndex(i); |
|
|
controller.device = system.HIDCore().GetEmulatedControllerByIndex(i); |
|
|
controller.vibration[Core::HID::DeviceIndex::LeftIndex].latest_vibration_value = DEFAULT_VIBRATION_VALUE; |
|
|
|
|
|
|
|
|
controller.vibration[Core::HID::DeviceIndex::LeftIndex].latest_vibration_value = |
|
|
|
|
|
DEFAULT_VIBRATION_VALUE; |
|
|
controller.vibration[Core::HID::DeviceIndex::RightIndex].latest_vibration_value = |
|
|
controller.vibration[Core::HID::DeviceIndex::RightIndex].latest_vibration_value = |
|
|
DEFAULT_VIBRATION_VALUE; |
|
|
DEFAULT_VIBRATION_VALUE; |
|
|
Core::HID::ControllerUpdateCallback engine_callback{ |
|
|
Core::HID::ControllerUpdateCallback engine_callback{ |
|
|
@ -178,7 +179,7 @@ void Controller_NPad::InitNewlyAddedController(std::size_t controller_idx) { |
|
|
shared_memory.system_properties.use_plus.Assign(1); |
|
|
shared_memory.system_properties.use_plus.Assign(1); |
|
|
shared_memory.system_properties.use_minus.Assign(1); |
|
|
shared_memory.system_properties.use_minus.Assign(1); |
|
|
shared_memory.assignment_mode = NpadJoyAssignmentMode::Single; |
|
|
shared_memory.assignment_mode = NpadJoyAssignmentMode::Single; |
|
|
shared_memory.footer_type = AppletFooterUiType::SwitchProController; |
|
|
|
|
|
|
|
|
shared_memory.applet_footer.type = AppletFooterUiType::SwitchProController; |
|
|
break; |
|
|
break; |
|
|
case Core::HID::NpadType::Handheld: |
|
|
case Core::HID::NpadType::Handheld: |
|
|
shared_memory.style_set.handheld.Assign(1); |
|
|
shared_memory.style_set.handheld.Assign(1); |
|
|
@ -188,7 +189,7 @@ void Controller_NPad::InitNewlyAddedController(std::size_t controller_idx) { |
|
|
shared_memory.system_properties.use_plus.Assign(1); |
|
|
shared_memory.system_properties.use_plus.Assign(1); |
|
|
shared_memory.system_properties.use_minus.Assign(1); |
|
|
shared_memory.system_properties.use_minus.Assign(1); |
|
|
shared_memory.assignment_mode = NpadJoyAssignmentMode::Dual; |
|
|
shared_memory.assignment_mode = NpadJoyAssignmentMode::Dual; |
|
|
shared_memory.footer_type = AppletFooterUiType::HandheldJoyConLeftJoyConRight; |
|
|
|
|
|
|
|
|
shared_memory.applet_footer.type = AppletFooterUiType::HandheldJoyConLeftJoyConRight; |
|
|
break; |
|
|
break; |
|
|
case Core::HID::NpadType::JoyconDual: |
|
|
case Core::HID::NpadType::JoyconDual: |
|
|
shared_memory.style_set.joycon_dual.Assign(1); |
|
|
shared_memory.style_set.joycon_dual.Assign(1); |
|
|
@ -198,7 +199,7 @@ void Controller_NPad::InitNewlyAddedController(std::size_t controller_idx) { |
|
|
shared_memory.system_properties.use_plus.Assign(1); |
|
|
shared_memory.system_properties.use_plus.Assign(1); |
|
|
shared_memory.system_properties.use_minus.Assign(1); |
|
|
shared_memory.system_properties.use_minus.Assign(1); |
|
|
shared_memory.assignment_mode = NpadJoyAssignmentMode::Dual; |
|
|
shared_memory.assignment_mode = NpadJoyAssignmentMode::Dual; |
|
|
shared_memory.footer_type = AppletFooterUiType::JoyDual; |
|
|
|
|
|
|
|
|
shared_memory.applet_footer.type = AppletFooterUiType::JoyDual; |
|
|
break; |
|
|
break; |
|
|
case Core::HID::NpadType::JoyconLeft: |
|
|
case Core::HID::NpadType::JoyconLeft: |
|
|
shared_memory.style_set.joycon_left.Assign(1); |
|
|
shared_memory.style_set.joycon_left.Assign(1); |
|
|
@ -206,7 +207,7 @@ void Controller_NPad::InitNewlyAddedController(std::size_t controller_idx) { |
|
|
shared_memory.system_properties.is_horizontal.Assign(1); |
|
|
shared_memory.system_properties.is_horizontal.Assign(1); |
|
|
shared_memory.system_properties.use_minus.Assign(1); |
|
|
shared_memory.system_properties.use_minus.Assign(1); |
|
|
shared_memory.assignment_mode = NpadJoyAssignmentMode::Single; |
|
|
shared_memory.assignment_mode = NpadJoyAssignmentMode::Single; |
|
|
shared_memory.footer_type = AppletFooterUiType::JoyLeftHorizontal; |
|
|
|
|
|
|
|
|
shared_memory.applet_footer.type = AppletFooterUiType::JoyLeftHorizontal; |
|
|
break; |
|
|
break; |
|
|
case Core::HID::NpadType::JoyconRight: |
|
|
case Core::HID::NpadType::JoyconRight: |
|
|
shared_memory.style_set.joycon_right.Assign(1); |
|
|
shared_memory.style_set.joycon_right.Assign(1); |
|
|
@ -214,7 +215,7 @@ void Controller_NPad::InitNewlyAddedController(std::size_t controller_idx) { |
|
|
shared_memory.system_properties.is_horizontal.Assign(1); |
|
|
shared_memory.system_properties.is_horizontal.Assign(1); |
|
|
shared_memory.system_properties.use_plus.Assign(1); |
|
|
shared_memory.system_properties.use_plus.Assign(1); |
|
|
shared_memory.assignment_mode = NpadJoyAssignmentMode::Single; |
|
|
shared_memory.assignment_mode = NpadJoyAssignmentMode::Single; |
|
|
shared_memory.footer_type = AppletFooterUiType::JoyRightHorizontal; |
|
|
|
|
|
|
|
|
shared_memory.applet_footer.type = AppletFooterUiType::JoyRightHorizontal; |
|
|
break; |
|
|
break; |
|
|
case Core::HID::NpadType::GameCube: |
|
|
case Core::HID::NpadType::GameCube: |
|
|
shared_memory.style_set.gamecube.Assign(1); |
|
|
shared_memory.style_set.gamecube.Assign(1); |
|
|
@ -919,7 +920,7 @@ void Controller_NPad::DisconnectNpadAtIndex(std::size_t npad_index) { |
|
|
.right = {}, |
|
|
.right = {}, |
|
|
}; |
|
|
}; |
|
|
shared_memory_entry.assignment_mode = NpadJoyAssignmentMode::Dual; |
|
|
shared_memory_entry.assignment_mode = NpadJoyAssignmentMode::Dual; |
|
|
shared_memory_entry.footer_type = AppletFooterUiType::None; |
|
|
|
|
|
|
|
|
shared_memory_entry.applet_footer.type = AppletFooterUiType::None; |
|
|
|
|
|
|
|
|
controller.is_connected = false; |
|
|
controller.is_connected = false; |
|
|
controller.device->Disconnect(); |
|
|
controller.device->Disconnect(); |
|
|
|