mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-12-23 17:00:57 +01:00
hid: Stub IsVibrationDeviceMounted
- Used in Super Mario Odyssey
This commit is contained in:
parent
9b501af8e3
commit
70f16f1722
2 changed files with 23 additions and 1 deletions
|
@ -249,7 +249,7 @@ Hid::Hid(Core::System& system) : ServiceFramework("hid"), system(system) {
|
||||||
{208, nullptr, "GetActualVibrationGcErmCommand"},
|
{208, nullptr, "GetActualVibrationGcErmCommand"},
|
||||||
{209, &Hid::BeginPermitVibrationSession, "BeginPermitVibrationSession"},
|
{209, &Hid::BeginPermitVibrationSession, "BeginPermitVibrationSession"},
|
||||||
{210, &Hid::EndPermitVibrationSession, "EndPermitVibrationSession"},
|
{210, &Hid::EndPermitVibrationSession, "EndPermitVibrationSession"},
|
||||||
{211, nullptr, "IsVibrationDeviceMounted"},
|
{211, &Hid::IsVibrationDeviceMounted, "IsVibrationDeviceMounted"},
|
||||||
{300, &Hid::ActivateConsoleSixAxisSensor, "ActivateConsoleSixAxisSensor"},
|
{300, &Hid::ActivateConsoleSixAxisSensor, "ActivateConsoleSixAxisSensor"},
|
||||||
{301, &Hid::StartConsoleSixAxisSensor, "StartConsoleSixAxisSensor"},
|
{301, &Hid::StartConsoleSixAxisSensor, "StartConsoleSixAxisSensor"},
|
||||||
{302, &Hid::StopConsoleSixAxisSensor, "StopConsoleSixAxisSensor"},
|
{302, &Hid::StopConsoleSixAxisSensor, "StopConsoleSixAxisSensor"},
|
||||||
|
@ -1129,6 +1129,27 @@ void Hid::EndPermitVibrationSession(Kernel::HLERequestContext& ctx) {
|
||||||
rb.Push(RESULT_SUCCESS);
|
rb.Push(RESULT_SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Hid::IsVibrationDeviceMounted(Kernel::HLERequestContext& ctx) {
|
||||||
|
IPC::RequestParser rp{ctx};
|
||||||
|
struct Parameters {
|
||||||
|
Controller_NPad::DeviceHandle vibration_device_handle{};
|
||||||
|
INSERT_PADDING_WORDS(1);
|
||||||
|
u64 applet_resource_user_id{};
|
||||||
|
};
|
||||||
|
|
||||||
|
const auto parameters{rp.PopRaw<Parameters>()};
|
||||||
|
|
||||||
|
LOG_WARNING(
|
||||||
|
Service_HID,
|
||||||
|
"(STUBBED) called, npad_type={}, npad_id={}, device_index={}, applet_resource_user_id={}",
|
||||||
|
parameters.vibration_device_handle.npad_type, parameters.vibration_device_handle.npad_id,
|
||||||
|
parameters.vibration_device_handle.device_index, parameters.applet_resource_user_id);
|
||||||
|
|
||||||
|
IPC::ResponseBuilder rb{ctx, 3};
|
||||||
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
rb.Push(true);
|
||||||
|
}
|
||||||
|
|
||||||
void Hid::ActivateConsoleSixAxisSensor(Kernel::HLERequestContext& ctx) {
|
void Hid::ActivateConsoleSixAxisSensor(Kernel::HLERequestContext& ctx) {
|
||||||
IPC::RequestParser rp{ctx};
|
IPC::RequestParser rp{ctx};
|
||||||
const auto applet_resource_user_id{rp.Pop<u64>()};
|
const auto applet_resource_user_id{rp.Pop<u64>()};
|
||||||
|
|
|
@ -134,6 +134,7 @@ private:
|
||||||
void SendVibrationValues(Kernel::HLERequestContext& ctx);
|
void SendVibrationValues(Kernel::HLERequestContext& ctx);
|
||||||
void BeginPermitVibrationSession(Kernel::HLERequestContext& ctx);
|
void BeginPermitVibrationSession(Kernel::HLERequestContext& ctx);
|
||||||
void EndPermitVibrationSession(Kernel::HLERequestContext& ctx);
|
void EndPermitVibrationSession(Kernel::HLERequestContext& ctx);
|
||||||
|
void IsVibrationDeviceMounted(Kernel::HLERequestContext& ctx);
|
||||||
void ActivateConsoleSixAxisSensor(Kernel::HLERequestContext& ctx);
|
void ActivateConsoleSixAxisSensor(Kernel::HLERequestContext& ctx);
|
||||||
void StartConsoleSixAxisSensor(Kernel::HLERequestContext& ctx);
|
void StartConsoleSixAxisSensor(Kernel::HLERequestContext& ctx);
|
||||||
void StopConsoleSixAxisSensor(Kernel::HLERequestContext& ctx);
|
void StopConsoleSixAxisSensor(Kernel::HLERequestContext& ctx);
|
||||||
|
|
Loading…
Reference in a new issue