|
|
|
@ -36,24 +36,24 @@ IHidSystemServer::IHidSystemServer(Core::System& system_, std::shared_ptr<Resour |
|
|
|
{233, nullptr, "GetXcdHandleForNpadWithIrSensor"}, |
|
|
|
{301, nullptr, "ActivateNpadSystem"}, |
|
|
|
{303, &IHidSystemServer::ApplyNpadSystemCommonPolicy, "ApplyNpadSystemCommonPolicy"}, |
|
|
|
{304, nullptr, "EnableAssigningSingleOnSlSrPress"}, |
|
|
|
{305, nullptr, "DisableAssigningSingleOnSlSrPress"}, |
|
|
|
{304, &IHidSystemServer::EnableAssigningSingleOnSlSrPress, "EnableAssigningSingleOnSlSrPress"}, |
|
|
|
{305, &IHidSystemServer::DisableAssigningSingleOnSlSrPress, "DisableAssigningSingleOnSlSrPress"}, |
|
|
|
{306, &IHidSystemServer::GetLastActiveNpad, "GetLastActiveNpad"}, |
|
|
|
{307, nullptr, "GetNpadSystemExtStyle"}, |
|
|
|
{308, nullptr, "ApplyNpadSystemCommonPolicyFull"}, |
|
|
|
{309, nullptr, "GetNpadFullKeyGripColor"}, |
|
|
|
{310, nullptr, "GetMaskedSupportedNpadStyleSet"}, |
|
|
|
{308, &IHidSystemServer::ApplyNpadSystemCommonPolicyFull, "ApplyNpadSystemCommonPolicyFull"}, |
|
|
|
{309, &IHidSystemServer::GetNpadFullKeyGripColor, "GetNpadFullKeyGripColor"}, |
|
|
|
{310, &IHidSystemServer::GetMaskedSupportedNpadStyleSet, "GetMaskedSupportedNpadStyleSet"}, |
|
|
|
{311, nullptr, "SetNpadPlayerLedBlinkingDevice"}, |
|
|
|
{312, nullptr, "SetSupportedNpadStyleSetAll"}, |
|
|
|
{312, &IHidSystemServer::SetSupportedNpadStyleSetAll, "SetSupportedNpadStyleSetAll"}, |
|
|
|
{313, nullptr, "GetNpadCaptureButtonAssignment"}, |
|
|
|
{314, nullptr, "GetAppletFooterUiType"}, |
|
|
|
{315, nullptr, "GetAppletDetailedUiType"}, |
|
|
|
{316, nullptr, "GetNpadInterfaceType"}, |
|
|
|
{317, nullptr, "GetNpadLeftRightInterfaceType"}, |
|
|
|
{318, nullptr, "HasBattery"}, |
|
|
|
{319, nullptr, "HasLeftRightBattery"}, |
|
|
|
{315, &IHidSystemServer::GetAppletDetailedUiType, "GetAppletDetailedUiType"}, |
|
|
|
{316, &IHidSystemServer::GetNpadInterfaceType, "GetNpadInterfaceType"}, |
|
|
|
{317, &IHidSystemServer::GetNpadLeftRightInterfaceType, "GetNpadLeftRightInterfaceType"}, |
|
|
|
{318, &IHidSystemServer::HasBattery, "HasBattery"}, |
|
|
|
{319, &IHidSystemServer::HasLeftRightBattery, "HasLeftRightBattery"}, |
|
|
|
{321, &IHidSystemServer::GetUniquePadsFromNpad, "GetUniquePadsFromNpad"}, |
|
|
|
{322, nullptr, "GetIrSensorState"}, |
|
|
|
{322, &IHidSystemServer::GetIrSensorState, "GetIrSensorState"}, |
|
|
|
{323, nullptr, "GetXcdHandleForNpadWithIrSensor"}, |
|
|
|
{324, nullptr, "GetUniquePadButtonSet"}, |
|
|
|
{325, nullptr, "GetUniquePadColor"}, |
|
|
|
@ -85,15 +85,15 @@ IHidSystemServer::IHidSystemServer(Core::System& system_, std::shared_ptr<Resour |
|
|
|
{541, nullptr, "GetPlayReportControllerUsages"}, |
|
|
|
{542, nullptr, "AcquirePlayReportRegisteredDeviceUpdateEvent"}, |
|
|
|
{543, nullptr, "GetRegisteredDevicesOld"}, |
|
|
|
{544, nullptr, "AcquireConnectionTriggerTimeoutEvent"}, |
|
|
|
{544, &IHidSystemServer::AcquireConnectionTriggerTimeoutEvent, "AcquireConnectionTriggerTimeoutEvent"}, |
|
|
|
{545, nullptr, "SendConnectionTrigger"}, |
|
|
|
{546, nullptr, "AcquireDeviceRegisteredEventForControllerSupport"}, |
|
|
|
{546, &IHidSystemServer::AcquireDeviceRegisteredEventForControllerSupport, "AcquireDeviceRegisteredEventForControllerSupport"}, |
|
|
|
{547, nullptr, "GetAllowedBluetoothLinksCount"}, |
|
|
|
{548, nullptr, "GetRegisteredDevices"}, |
|
|
|
{548, &IHidSystemServer::GetRegisteredDevices, "GetRegisteredDevices"}, |
|
|
|
{549, nullptr, "GetConnectableRegisteredDevices"}, |
|
|
|
{700, nullptr, "ActivateUniquePad"}, |
|
|
|
{702, nullptr, "AcquireUniquePadConnectionEventHandle"}, |
|
|
|
{703, nullptr, "GetUniquePadIds"}, |
|
|
|
{702, &IHidSystemServer::AcquireUniquePadConnectionEventHandle, "AcquireUniquePadConnectionEventHandle"}, |
|
|
|
{703, &IHidSystemServer::GetUniquePadIds, "GetUniquePadIds"}, |
|
|
|
{751, &IHidSystemServer::AcquireJoyDetachOnBluetoothOffEventHandle, "AcquireJoyDetachOnBluetoothOffEventHandle"}, |
|
|
|
{800, nullptr, "ListSixAxisSensorHandles"}, |
|
|
|
{801, nullptr, "IsSixAxisSensorUserCalibrationSupported"}, |
|
|
|
@ -123,10 +123,10 @@ IHidSystemServer::IHidSystemServer(Core::System& system_, std::shared_ptr<Resour |
|
|
|
{850, &IHidSystemServer::IsUsbFullKeyControllerEnabled, "IsUsbFullKeyControllerEnabled"}, |
|
|
|
{851, nullptr, "EnableUsbFullKeyController"}, |
|
|
|
{852, nullptr, "IsUsbConnected"}, |
|
|
|
{870, nullptr, "IsHandheldButtonPressedOnConsoleMode"}, |
|
|
|
{870, &IHidSystemServer::IsHandheldButtonPressedOnConsoleMode, "IsHandheldButtonPressedOnConsoleMode"}, |
|
|
|
{900, nullptr, "ActivateInputDetector"}, |
|
|
|
{901, nullptr, "NotifyInputDetector"}, |
|
|
|
{1000, nullptr, "InitializeFirmwareUpdate"}, |
|
|
|
{1000, &IHidSystemServer::InitializeFirmwareUpdate, "InitializeFirmwareUpdate"}, |
|
|
|
{1001, nullptr, "GetFirmwareVersion"}, |
|
|
|
{1002, nullptr, "GetAvailableFirmwareVersion"}, |
|
|
|
{1003, nullptr, "IsFirmwareUpdateAvailable"}, |
|
|
|
@ -149,6 +149,7 @@ IHidSystemServer::IHidSystemServer(Core::System& system_, std::shared_ptr<Resour |
|
|
|
{1132, nullptr, "CheckUsbFirmwareUpdateRequired"}, |
|
|
|
{1133, nullptr, "StartUsbFirmwareUpdate"}, |
|
|
|
{1134, nullptr, "GetUsbFirmwareUpdateState"}, |
|
|
|
{1135, &IHidSystemServer::InitializeUsbFirmwareUpdateWithoutMemory, "InitializeUsbFirmwareUpdateWithoutMemory"}, |
|
|
|
{1150, nullptr, "SetTouchScreenMagnification"}, |
|
|
|
{1151, nullptr, "GetTouchScreenFirmwareVersion"}, |
|
|
|
{1152, nullptr, "SetTouchScreenDefaultConfiguration"}, |
|
|
|
@ -220,11 +221,20 @@ IHidSystemServer::IHidSystemServer(Core::System& system_, std::shared_ptr<Resour |
|
|
|
|
|
|
|
RegisterHandlers(functions); |
|
|
|
|
|
|
|
joy_detach_event = service_context.CreateEvent("HidSys::JoyDetachEvent"); |
|
|
|
joy_detach_event = service_context.CreateEvent("IHidSystemServer::JoyDetachEvent"); |
|
|
|
acquire_device_registered_event = |
|
|
|
service_context.CreateEvent("IHidSystemServer::AcquireDeviceRegisteredEvent"); |
|
|
|
acquire_connection_trigger_timeout_event = |
|
|
|
service_context.CreateEvent("IHidSystemServer::AcquireConnectionTriggerTimeoutEvent"); |
|
|
|
unique_pad_connection_event = |
|
|
|
service_context.CreateEvent("IHidSystemServer::AcquireUniquePadConnectionEventHandle"); |
|
|
|
} |
|
|
|
|
|
|
|
IHidSystemServer::~IHidSystemServer() { |
|
|
|
service_context.CloseEvent(joy_detach_event); |
|
|
|
service_context.CloseEvent(acquire_device_registered_event); |
|
|
|
service_context.CloseEvent(acquire_connection_trigger_timeout_event); |
|
|
|
service_context.CloseEvent(unique_pad_connection_event); |
|
|
|
}; |
|
|
|
|
|
|
|
void IHidSystemServer::ApplyNpadSystemCommonPolicy(HLERequestContext& ctx) { |
|
|
|
@ -238,29 +248,241 @@ void IHidSystemServer::ApplyNpadSystemCommonPolicy(HLERequestContext& ctx) { |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::EnableAssigningSingleOnSlSrPress(HLERequestContext& ctx) { |
|
|
|
LOG_WARNING(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::DisableAssigningSingleOnSlSrPress(HLERequestContext& ctx) { |
|
|
|
LOG_WARNING(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::GetLastActiveNpad(HLERequestContext& ctx) { |
|
|
|
LOG_DEBUG(Service_HID, "(STUBBED) called"); |
|
|
|
LOG_DEBUG(Service_HID, "(STUBBED) called"); // Spams a lot when controller applet is running
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 3}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.PushEnum(system.HIDCore().GetLastActiveController()); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::ApplyNpadSystemCommonPolicyFull(HLERequestContext& ctx) { |
|
|
|
LOG_WARNING(Service_HID, "called"); |
|
|
|
|
|
|
|
GetResourceManager() |
|
|
|
->GetController<Controller_NPad>(HidController::NPad) |
|
|
|
.ApplyNpadSystemCommonPolicy(); |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::GetNpadFullKeyGripColor(HLERequestContext& ctx) { |
|
|
|
IPC::RequestParser rp{ctx}; |
|
|
|
const auto npad_id_type{rp.PopEnum<Core::HID::NpadIdType>()}; |
|
|
|
|
|
|
|
LOG_DEBUG(Service_HID, "(STUBBED) called, npad_id_type={}", |
|
|
|
npad_id_type); // Spams a lot when controller applet is running
|
|
|
|
|
|
|
|
Core::HID::NpadColor left_color{}; |
|
|
|
Core::HID::NpadColor right_color{}; |
|
|
|
// TODO: Get colors from Npad
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 4}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.PushRaw(left_color); |
|
|
|
rb.PushRaw(right_color); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::GetMaskedSupportedNpadStyleSet(HLERequestContext& ctx) { |
|
|
|
IPC::RequestParser rp{ctx}; |
|
|
|
|
|
|
|
LOG_INFO(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
Core::HID::NpadStyleSet supported_styleset = |
|
|
|
GetResourceManager() |
|
|
|
->GetController<Controller_NPad>(HidController::NPad) |
|
|
|
.GetSupportedStyleSet() |
|
|
|
.raw; |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 3}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.PushEnum(supported_styleset); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::SetSupportedNpadStyleSetAll(HLERequestContext& ctx) { |
|
|
|
IPC::RequestParser rp{ctx}; |
|
|
|
|
|
|
|
LOG_INFO(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
Core::HID::NpadStyleSet supported_styleset = |
|
|
|
GetResourceManager() |
|
|
|
->GetController<Controller_NPad>(HidController::NPad) |
|
|
|
.GetSupportedStyleSet() |
|
|
|
.raw; |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 3}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.PushEnum(supported_styleset); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::GetAppletDetailedUiType(HLERequestContext& ctx) { |
|
|
|
IPC::RequestParser rp{ctx}; |
|
|
|
const auto npad_id_type{rp.PopEnum<Core::HID::NpadIdType>()}; |
|
|
|
|
|
|
|
LOG_DEBUG(Service_HID, "called, npad_id_type={}", |
|
|
|
npad_id_type); // Spams a lot when controller applet is running
|
|
|
|
|
|
|
|
const Service::HID::Controller_NPad::AppletDetailedUiType detailed_ui_type = |
|
|
|
GetResourceManager() |
|
|
|
->GetController<Controller_NPad>(HidController::NPad) |
|
|
|
.GetAppletDetailedUiType(npad_id_type); |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 3}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.PushRaw(detailed_ui_type); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::GetNpadInterfaceType(HLERequestContext& ctx) { |
|
|
|
IPC::RequestParser rp{ctx}; |
|
|
|
const auto npad_id_type{rp.PopEnum<Core::HID::NpadIdType>()}; |
|
|
|
|
|
|
|
LOG_DEBUG(Service_HID, "(STUBBED) called, npad_id_type={}", |
|
|
|
npad_id_type); // Spams a lot when controller applet is running
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 3}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.PushEnum(Core::HID::NpadInterfaceType::Bluetooth); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::GetNpadLeftRightInterfaceType(HLERequestContext& ctx) { |
|
|
|
IPC::RequestParser rp{ctx}; |
|
|
|
const auto npad_id_type{rp.PopEnum<Core::HID::NpadIdType>()}; |
|
|
|
|
|
|
|
LOG_DEBUG(Service_HID, "(STUBBED) called, npad_id_type={}", |
|
|
|
npad_id_type); // Spams a lot when controller applet is running
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 4}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.PushEnum(Core::HID::NpadInterfaceType::Bluetooth); |
|
|
|
rb.PushEnum(Core::HID::NpadInterfaceType::Bluetooth); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::HasBattery(HLERequestContext& ctx) { |
|
|
|
IPC::RequestParser rp{ctx}; |
|
|
|
const auto npad_id_type{rp.PopEnum<Core::HID::NpadIdType>()}; |
|
|
|
|
|
|
|
LOG_DEBUG(Service_HID, "(STUBBED) called, npad_id_type={}", |
|
|
|
npad_id_type); // Spams a lot when controller applet is running
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 3}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.Push(false); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::HasLeftRightBattery(HLERequestContext& ctx) { |
|
|
|
IPC::RequestParser rp{ctx}; |
|
|
|
const auto npad_id_type{rp.PopEnum<Core::HID::NpadIdType>()}; |
|
|
|
|
|
|
|
LOG_DEBUG(Service_HID, "(STUBBED) called, npad_id_type={}", |
|
|
|
npad_id_type); // Spams a lot when controller applet is running
|
|
|
|
|
|
|
|
struct LeftRightBattery { |
|
|
|
bool left; |
|
|
|
bool right; |
|
|
|
}; |
|
|
|
|
|
|
|
LeftRightBattery left_right_battery{ |
|
|
|
.left = false, |
|
|
|
.right = false, |
|
|
|
}; |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 3}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.PushRaw(left_right_battery); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::GetUniquePadsFromNpad(HLERequestContext& ctx) { |
|
|
|
IPC::RequestParser rp{ctx}; |
|
|
|
const auto npad_id_type{rp.PopEnum<Core::HID::NpadIdType>()}; |
|
|
|
|
|
|
|
LOG_WARNING(Service_HID, "(STUBBED) called, npad_id_type={}", npad_id_type); |
|
|
|
LOG_DEBUG(Service_HID, "(STUBBED) called, npad_id_type={}", |
|
|
|
npad_id_type); // Spams a lot when controller applet is running
|
|
|
|
|
|
|
|
const std::vector<Core::HID::UniquePadId> unique_pads{}; |
|
|
|
|
|
|
|
if (!unique_pads.empty()) { |
|
|
|
ctx.WriteBuffer(unique_pads); |
|
|
|
} |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 3}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.Push(static_cast<u32>(unique_pads.size())); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::GetIrSensorState(HLERequestContext& ctx) { |
|
|
|
IPC::RequestParser rp{ctx}; |
|
|
|
|
|
|
|
LOG_WARNING(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::AcquireConnectionTriggerTimeoutEvent(HLERequestContext& ctx) { |
|
|
|
LOG_INFO(Service_AM, "(STUBBED) called"); |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2, 1}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.PushCopyObjects(acquire_device_registered_event->GetReadableEvent()); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::AcquireDeviceRegisteredEventForControllerSupport(HLERequestContext& ctx) { |
|
|
|
LOG_INFO(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2, 1}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.PushCopyObjects(acquire_device_registered_event->GetReadableEvent()); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::GetRegisteredDevices(HLERequestContext& ctx) { |
|
|
|
LOG_WARNING(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
struct RegisterData { |
|
|
|
std::array<u8, 0x68> data; |
|
|
|
}; |
|
|
|
static_assert(sizeof(RegisterData) == 0x68, "RegisterData is an invalid size"); |
|
|
|
std::vector<RegisterData> registered_devices{}; |
|
|
|
|
|
|
|
if (!registered_devices.empty()) { |
|
|
|
ctx.WriteBuffer(registered_devices); |
|
|
|
} |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 4}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.Push<u64>(registered_devices.size()); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::AcquireUniquePadConnectionEventHandle(HLERequestContext& ctx) { |
|
|
|
LOG_WARNING(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2, 1}; |
|
|
|
rb.PushCopyObjects(unique_pad_connection_event->GetReadableEvent()); |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::GetUniquePadIds(HLERequestContext& ctx) { |
|
|
|
LOG_WARNING(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 4}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.Push<u64>(0); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::AcquireJoyDetachOnBluetoothOffEventHandle(HLERequestContext& ctx) { |
|
|
|
LOG_INFO(Service_AM, "called"); |
|
|
|
|
|
|
|
@ -279,6 +501,31 @@ void IHidSystemServer::IsUsbFullKeyControllerEnabled(HLERequestContext& ctx) { |
|
|
|
rb.Push(is_enabled); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::IsHandheldButtonPressedOnConsoleMode(HLERequestContext& ctx) { |
|
|
|
const bool button_pressed = false; |
|
|
|
|
|
|
|
LOG_DEBUG(Service_HID, "(STUBBED) called, is_enabled={}", |
|
|
|
button_pressed); // Spams a lot when controller applet is open
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 3}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
rb.Push(button_pressed); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::InitializeFirmwareUpdate(HLERequestContext& ctx) { |
|
|
|
LOG_WARNING(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::InitializeUsbFirmwareUpdateWithoutMemory(HLERequestContext& ctx) { |
|
|
|
LOG_WARNING(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2}; |
|
|
|
rb.Push(ResultSuccess); |
|
|
|
} |
|
|
|
|
|
|
|
void IHidSystemServer::GetTouchScreenDefaultConfiguration(HLERequestContext& ctx) { |
|
|
|
LOG_WARNING(Service_HID, "(STUBBED) called"); |
|
|
|
|
|
|
|
|