|
@@ -22,6 +22,7 @@ namespace Ryujinx.HLE.HOS.Services.Hid
|
|
|
private bool _unintendedHomeButtonInputProtectionEnabled;
|
|
private bool _unintendedHomeButtonInputProtectionEnabled;
|
|
|
private bool _vibrationPermitted;
|
|
private bool _vibrationPermitted;
|
|
|
private bool _usbFullKeyControllerEnabled;
|
|
private bool _usbFullKeyControllerEnabled;
|
|
|
|
|
+ private bool _isFirmwareUpdateAvailableForSixAxisSensor;
|
|
|
|
|
|
|
|
private HidNpadJoyAssignmentMode _npadJoyAssignmentMode;
|
|
private HidNpadJoyAssignmentMode _npadJoyAssignmentMode;
|
|
|
private HidNpadHandheldActivationMode _npadHandheldActivationMode;
|
|
private HidNpadHandheldActivationMode _npadHandheldActivationMode;
|
|
@@ -47,6 +48,8 @@ namespace Ryujinx.HLE.HOS.Services.Hid
|
|
|
_npadHandheldActivationMode = HidNpadHandheldActivationMode.Dual;
|
|
_npadHandheldActivationMode = HidNpadHandheldActivationMode.Dual;
|
|
|
_gyroscopeZeroDriftMode = HidGyroscopeZeroDriftMode.Standard;
|
|
_gyroscopeZeroDriftMode = HidGyroscopeZeroDriftMode.Standard;
|
|
|
|
|
|
|
|
|
|
+ _isFirmwareUpdateAvailableForSixAxisSensor = false;
|
|
|
|
|
+
|
|
|
_sensorFusionParams = new HidSensorFusionParameters();
|
|
_sensorFusionParams = new HidSensorFusionParameters();
|
|
|
_accelerometerParams = new HidAccelerometerParameters();
|
|
_accelerometerParams = new HidAccelerometerParameters();
|
|
|
_vibrationValue = new HidVibrationValue();
|
|
_vibrationValue = new HidVibrationValue();
|
|
@@ -574,6 +577,21 @@ namespace Ryujinx.HLE.HOS.Services.Hid
|
|
|
return ResultCode.Success;
|
|
return ResultCode.Success;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ [CommandHipc(83)] // 6.0.0+
|
|
|
|
|
+ // IsFirmwareUpdateAvailableForSixAxisSensor(nn::hid::AppletResourceUserId, nn::hid::SixAxisSensorHandle, pid) -> bool UpdateAvailable
|
|
|
|
|
+ public ResultCode IsFirmwareUpdateAvailableForSixAxisSensor(ServiceCtx context)
|
|
|
|
|
+ {
|
|
|
|
|
+ int sixAxisSensorHandle = context.RequestData.ReadInt32();
|
|
|
|
|
+ context.RequestData.BaseStream.Position += 4;
|
|
|
|
|
+ long appletResourceUserId = context.RequestData.ReadInt64();
|
|
|
|
|
+
|
|
|
|
|
+ context.ResponseData.Write(_isFirmwareUpdateAvailableForSixAxisSensor);
|
|
|
|
|
+
|
|
|
|
|
+ Logger.Stub?.PrintStub(LogClass.ServiceHid, new { appletResourceUserId, sixAxisSensorHandle, _isFirmwareUpdateAvailableForSixAxisSensor });
|
|
|
|
|
+
|
|
|
|
|
+ return ResultCode.Success;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
[CommandHipc(91)]
|
|
[CommandHipc(91)]
|
|
|
// ActivateGesture(nn::applet::AppletResourceUserId, int Unknown0)
|
|
// ActivateGesture(nn::applet::AppletResourceUserId, int Unknown0)
|
|
|
public ResultCode ActivateGesture(ServiceCtx context)
|
|
public ResultCode ActivateGesture(ServiceCtx context)
|