HID services: Difference between revisions
No edit summary |
|||
(9 intermediate revisions by the same user not shown) | |||
Line 717: | Line 717: | ||
Takes a [[#PalmaConnectionHandle]], a type-0x6 output buffer, returns an output u64. | Takes a [[#PalmaConnectionHandle]], a type-0x6 output buffer, returns an output u64. | ||
sdknso passes [[#PalmaOperationInfo]]+0x8 size 0x140 for the output buffer. After using the cmd successfully, [[#GetPalmaOperationResult]] is used. | sdknso passes [[#PalmaOperationInfo]]+0x8 size 0x140 for the output buffer. [5.1.0+] After using the cmd successfully, [[#GetPalmaOperationResult]] is used. | ||
== PlayPalmaActivity == | == PlayPalmaActivity == | ||
Takes an input [[#PalmaConnectionHandle]], an u64, no output. | Takes an input [[#PalmaConnectionHandle]], an u64 (exposed by sdknso as an u16), no output. | ||
== SetPalmaFrModeType == | == SetPalmaFrModeType == | ||
Takes an input [[#PalmaConnectionHandle]], an u64, no output. | Takes an input [[#PalmaConnectionHandle]], an u64 [[#PalmaFrModeType]], no output. | ||
== ReadPalmaStep == | == ReadPalmaStep == | ||
Line 736: | Line 736: | ||
== ReadPalmaApplicationSection == | == ReadPalmaApplicationSection == | ||
Takes an input [[#PalmaConnectionHandle]], an u64, an u64, no output. | Takes an input [[#PalmaConnectionHandle]], an u64, an u64, no output. | ||
sdknso exposes the first u64 as a s32. sdknso will Abort if the input value for the second u64 is >0x100. | |||
== WritePalmaApplicationSection == | == WritePalmaApplicationSection == | ||
Takes an input [[#PalmaConnectionHandle]], an u64, an u64, a type-0x19 input buffer containing a [[#PalmaApplicationSectionAccessBuffer]], no output. | Takes an input [[#PalmaConnectionHandle]], an u64, an u64 size, a type-0x19 input buffer containing a [[#PalmaApplicationSectionAccessBuffer]], no output. | ||
sdknso exposes the first u64 as a s32. Data is copied from the input [[#PalmaApplicationSectionAccessBuffer]] with the specified size. | |||
== ReadPalmaUniqueCode == | == ReadPalmaUniqueCode == | ||
Line 748: | Line 752: | ||
== WritePalmaActivityEntry == | == WritePalmaActivityEntry == | ||
Takes an input [[#PalmaConnectionHandle]], an u64, an u64, an u64, an u64, no output. | Takes an input [[#PalmaConnectionHandle]], an u64, an u64, an u64, an u64, no output. | ||
sdknso exposes the first u64 as an u16, while the rest are exposed as [[#PalmaActivityEntry]]. | |||
== WritePalmaRgbLedPatternEntry == | == WritePalmaRgbLedPatternEntry == | ||
Takes an input [[#PalmaConnectionHandle]], an u64, a type-0x5 input buffer, no output. | Takes an input [[#PalmaConnectionHandle]], an u64, a type-0x5 input buffer, no output. | ||
sdknso exposes the u64 as an u16. | |||
== WritePalmaWaveEntry == | == WritePalmaWaveEntry == | ||
Takes an input [[#PalmaConnectionHandle]], an u64, an u64, a handle, an u64, an u64, no output. | Takes an input [[#PalmaConnectionHandle]], an u64 [[#PalmaWaveSet]], an u64 (exposed by sdknso as an u16), a TransferMemory handle, an u64 tmem_size, an u64 size, no output. | ||
The TransferMemory is created from an user-specified buffer with permissions=R--. | |||
== SetPalmaDataBaseIdentificationVersion == | == SetPalmaDataBaseIdentificationVersion == | ||
Line 786: | Line 796: | ||
== SetPalmaBoostMode == | == SetPalmaBoostMode == | ||
Takes an input bool, no output. | Takes an input bool, no output. | ||
Stubbed, just returns 0. This was replaced by [[#EnablePalmaBoostMode]]. | |||
== CancelWritePalmaWaveEntry == | == CancelWritePalmaWaveEntry == | ||
Line 6,964: | Line 6,976: | ||
! Offset || Size || Description | ! Offset || Size || Description | ||
|- | |- | ||
| 0x0 || 0x4 || sdknso sets this to the output value from [[#GetPalmaOperationInfo]], sdknso will Abort if it's larger than 0x10. | | 0x0 || 0x4 || sdknso sets this to the output value from [[#GetPalmaOperationInfo]], sdknso will Abort if it's larger than 0x10 ([5.0.0-5.0.2] 0xE). | ||
|- | |- | ||
| 0x4 || 0x4 || Result | | 0x4 || 0x4 || Result | ||
Line 6,970: | Line 6,982: | ||
| 0x8 || 0x140 || Buffer for [[#GetPalmaOperationInfo]]. | | 0x8 || 0x140 || Buffer for [[#GetPalmaOperationInfo]]. | ||
|} | |} | ||
= PalmaFrModeType = | |||
This is "nn::hid::PalmaFrModeType". | |||
= PalmaApplicationSectionAccessBuffer = | = PalmaApplicationSectionAccessBuffer = | ||
This is "nn::hid::PalmaApplicationSectionAccessBuffer". This is a 0x100-byte struct. | This is "nn::hid::PalmaApplicationSectionAccessBuffer". This is a 0x100-byte struct. | ||
= PalmaActivityEntry = | |||
This is "nn::hid::PalmaActivityEntry". | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset || Size || Description | |||
|- | |||
| 0x0 || 0x2 || Passed for the second u64 for [[#WritePalmaActivityEntry]]. | |||
|- | |||
| 0x2 || 0x2 || Padding | |||
|- | |||
| 0x4 || 0x4 || Passed for the third u64 for [[#WritePalmaActivityEntry]]. | |||
|- | |||
| 0x8 || 0x2 || Passed for the fourth u64 for [[#WritePalmaActivityEntry]]. | |||
|} | |||
= PalmaWaveSet = | |||
This is "nn::hid::PalmaWaveSet". | |||
= PalmaFeature = | = PalmaFeature = |