HID services: Difference between revisions

No edit summary
Line 715: Line 715:


== UpdateControllerColor ==
== UpdateControllerColor ==
Takes two input u32s for the colors, an input u64 '''UniquePadId''', and no output.
Takes two input u32s for the colors, an [[#UniquePadId]], and no output.


A state flag must be clear, otherwise an error is thrown. Afterwards, this flag is set.
A state flag must be clear, otherwise an error is thrown. Afterwards, this flag is set.
Line 722: Line 722:


== UpdateDesignInfo ==
== UpdateDesignInfo ==
Takes 4 input u32s for the colors, an input u8, an input u64 '''UniquePadId''', and no output.
Takes 4 input u32s for the colors, an input u8, an input [[#UniquePadId]], and no output.


A state flag must be clear (same as [[#UpdateControllerColor]]), otherwise an error is thrown. Afterwards, this flag is set.
A state flag must be clear (same as [[#UpdateControllerColor]]), otherwise an error is thrown. Afterwards, this flag is set.
Line 739: Line 739:


== AcquireOperationEventHandle ==
== AcquireOperationEventHandle ==
Takes an input u64 '''UniquePadId''', returns an output Event handle. The EventClearMode used by official sw is user-specified.
Takes an input [[#UniquePadId]], returns an output Event handle. The EventClearMode used by official sw is user-specified.


This is not used internally by sdk-nso besides exposing it to the user. With the sdk-nso for [9.0.0+] the wrapper funcs for this was removed (sdk-nso still has the actual cmd).
This is not used internally by sdk-nso besides exposing it to the user. With the sdk-nso for [9.0.0+] the wrapper funcs for this was removed (sdk-nso still has the actual cmd).
Line 746: Line 746:


== ReadSerialFlash ==
== ReadSerialFlash ==
Takes an input TransferMemory handle, an input u32 offset, an input u64 size, and an u64 '''UniquePadId''', no output.
Takes an input TransferMemory handle, an input u32 offset, an input u64 size, and an [[#UniquePadId]], no output.


Reads from the specified controller's spi-flash. The input size is the original size without page-alignment. The TransferMemory permissions is RW-.
Reads from the specified controller's spi-flash. The input size is the original size without page-alignment. The TransferMemory permissions is RW-.
Line 755: Line 755:


== WriteSerialFlash ==
== WriteSerialFlash ==
Takes an input TransferMemory handle, an input u32 offset, an input u64 tmem_size, an input u64 size, and an u64 '''UniquePadId''', no output.
Takes an input TransferMemory handle, an input u32 offset, an input u64 tmem_size, an input u64 size, and an [[#UniquePadId]], no output.


Writes to the specified controller's spi-flash. The TransferMemory permissions is R--.
Writes to the specified controller's spi-flash. The TransferMemory permissions is R--.
Line 764: Line 764:


== GetOperationResult ==
== GetOperationResult ==
Takes an input u64 '''UniquePadId''', no output.
Takes an input [[#UniquePadId]], no output.


Get the Result for the Operation and handles cleanup, for the specified controller.
Get the Result for the Operation and handles cleanup, for the specified controller.
Line 771: Line 771:


== GetUniquePadDeviceTypeSetInternal ==
== GetUniquePadDeviceTypeSetInternal ==
Takes an input u64 '''UniquePadId''', returns an [[#DeviceTypeInternal]].
Takes an input [[#UniquePadId]], returns an [[#DeviceTypeInternal]].


== GetAbstractedPadHandles ==
== GetAbstractedPadHandles ==
Line 1,216: Line 1,216:
Takes an input u32 [[#NpadIdType]], a type-0xA output buffer, and returns an output s64 for total output entries (which is copied to a s32 by official sw).
Takes an input u32 [[#NpadIdType]], a type-0xA output buffer, and returns an output s64 for total output entries (which is copied to a s32 by official sw).


The output buffer contains an array of u64 '''UniquePadId'''.
The output buffer contains an array of [[#UniquePadId]].


== SetVibrationMasterVolume ==
== SetVibrationMasterVolume ==
Line 1,224: Line 1,224:
Takes a type-0xA output buffer, and returns an output s64 for total output entries (which is copied to a s32 by official sw).
Takes a type-0xA output buffer, and returns an output s64 for total output entries (which is copied to a s32 by official sw).


The output buffer contains an array of u64 '''UniquePadId'''.
The output buffer contains an array of [[#UniquePadId]].


== GetUniquePadType ==
== GetUniquePadType ==
Takes an input u64 '''UniquePadId''' and returns an output u64 [[#UniquePadType]].
Takes an input [[#UniquePadId]] and returns an output u64 [[#UniquePadType]].


== SetNotificationLedPattern ==
== SetNotificationLedPattern ==
Takes an input [[#NotificationLedPattern]] and an u64 '''UniquePadId''', no output.
Takes an input [[#NotificationLedPattern]] and an [[#UniquePadId]], no output.


The specified controller must have a HOME button.
The specified controller must have a HOME button.
Line 1,239: Line 1,239:


== SetNotificationLedPatternWithTimeout ==
== SetNotificationLedPatternWithTimeout ==
Takes an input [[#NotificationLedPattern]], an u64 '''UniquePadId''', and an s64 TimeSpan, no output.
Takes an input [[#NotificationLedPattern]], an [[#UniquePadId]], and an s64 TimeSpan, no output.


== PrepareHidsForNotificationWake ==
== PrepareHidsForNotificationWake ==
Takes a type-0x9 input buffer containing an array of u64 '''UniquePadId''', no output.
Takes a type-0x9 input buffer containing an array of [[#UniquePadId]], no output.


== NotifyInputDetector ==
== NotifyInputDetector ==