HID services: Difference between revisions
| Line 154: | Line 154: | ||
| 137 || [20.0.0+] SetNpadGcAnalogStick8bitRawValue | | 137 || [20.0.0+] SetNpadGcAnalogStick8bitRawValue | ||
|- | |- | ||
| 138 || [S2] | | 138 || [S2] [[#SetSceneIdForPrivateApp|SetSceneIdForPrivateApp]] | ||
|- | |- | ||
| 139 || [S2] | | 139 || [S2] [[#GetSceneIdForPrivateApp|GetSceneIdForPrivateApp]] | ||
|- | |- | ||
| 200 || [[#GetVibrationDeviceInfo]] | | 200 || [[#GetVibrationDeviceInfo]] | ||
| Line 298: | Line 298: | ||
| 529 || [8.0.0+] [[#SetDisallowedPalmaConnection]] | | 529 || [8.0.0+] [[#SetDisallowedPalmaConnection]] | ||
|- | |- | ||
| 550 || [S2] | | 550 || [S2] [[#GetGlGrButtonConfigState|GetGlGrButtonConfigState]] | ||
|- | |- | ||
| 1000 || [[#SetNpadCommunicationMode]] | | 1000 || [[#SetNpadCommunicationMode]] | ||
| Line 354: | Line 354: | ||
| 3113 || [S2] [[#StopJcms|StopJcms]] | | 3113 || [S2] [[#StopJcms|StopJcms]] | ||
|- | |- | ||
| 3130 || [S2] | | 3130 || [S2] [[#InitializeNmouse|InitializeNmouse]] | ||
|- | |- | ||
| 3131 || [S2] | | 3131 || [S2] [[#FinalizeNmouse|FinalizeNmouse]] | ||
|- | |- | ||
| 3132 || [S2] | | 3132 || [S2] [[#SetNmousePointerRanges|SetNmousePointerRanges]] | ||
|- | |- | ||
| 3133 || [S2] | | 3133 || [S2] [[#GetNmousePointerRanges|GetNmousePointerRanges]] | ||
|- | |- | ||
| 3135 || [S2] | | 3135 || [S2] [[#EnableShowingCursor|EnableShowingCursor]] | ||
|- | |- | ||
| 3136 || [S2] | | 3136 || [S2] [[#SetNmouseButtonConfigJoyLeftJcms|SetNmouseButtonConfigJoyLeftJcms]] | ||
|- | |- | ||
| 3137 || [S2] | | 3137 || [S2] [[#SetNmouseButtonConfigJoyRightJcms|SetNmouseButtonConfigJoyRightJcms]] | ||
|- | |- | ||
| 3138 || [S2] | | 3138 || [S2] [[#SetMergedNmouseSourceTypes|SetMergedNmouseSourceTypes]] | ||
|- | |- | ||
| 3139 || [S2] | | 3139 || [S2] [[#InitializeNmouse2|InitializeNmouse2]] | ||
|- | |- | ||
| 3140 || [S2] | | 3140 || [S2] [[#SetNmousePointerPosition|SetNmousePointerPosition]] | ||
|- | |- | ||
| 3141 || [S2] | | 3141 || [S2] [[#EnableNmousePointer|EnableNmousePointer]] | ||
|- | |- | ||
| 3142 || [S2] | | 3142 || [S2] [[#RestrictNmousePointer|RestrictNmousePointer]] | ||
|- | |- | ||
| 3143 || [S2] | | 3143 || [S2] | ||
| Line 674: | Line 674: | ||
Takes a PID, an [[AM_services|AppletResourceUserId]], no output. | Takes a PID, an [[AM_services|AppletResourceUserId]], no output. | ||
== | == SetSceneIdForPrivateApp == | ||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID, | Takes a PID, an [[AM_services|AppletResourceUserId]], an u64, no output. | ||
== | The u64 is converted from a s32 by official sw. | ||
== GetSceneIdForPrivateApp == | |||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID, an | Takes a PID, an [[AM_services|AppletResourceUserId]], returns an output u64. | ||
The u64 is converted to a s32 by official sw. | |||
== GetVibrationDeviceInfo == | == GetVibrationDeviceInfo == | ||
| Line 1,038: | Line 1,042: | ||
Takes a PID, an [[AM_services|AppletResourceUserId]], a type-0x9 input buffer containing an array of [[Bluetooth_Driver_services#Address|Address]], no output. | Takes a PID, an [[AM_services|AppletResourceUserId]], a type-0x9 input buffer containing an array of [[Bluetooth_Driver_services#Address|Address]], no output. | ||
== | == GetGlGrButtonConfigState == | ||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID, an u32, an | Takes a PID, an u32, an [[AM_services|AppletResourceUserId]], returns two output bools. | ||
== SetNpadCommunicationMode == | == SetNpadCommunicationMode == | ||
| Line 1,093: | Line 1,097: | ||
Takes a PID, an u32, an [[AM_services|AppletResourceUserId]], no output. | Takes a PID, an u32, an [[AM_services|AppletResourceUserId]], no output. | ||
== | == InitializeNmouse == | ||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID, a handle, an u8, two u32s, | Takes a PID, a TransferMemory handle, an u8, two u32s, an [[AM_services|AppletResourceUserId]], an u64 tmem_size, no output. | ||
== | == FinalizeNmouse == | ||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID and an [[AM_services|AppletResourceUserId]], no output. | Takes a PID and an [[AM_services|AppletResourceUserId]], no output. | ||
== | == SetNmousePointerRanges == | ||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID, an | Takes a PID, an s32, an s32, an [[AM_services|AppletResourceUserId]], no output. | ||
== | This is also exposed as SetNmouseStateRanges, with the input NmouseStateRange being converted to the relevant s32s. | ||
== GetNmousePointerRanges == | |||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID, an | Takes a PID, an [[AM_services|AppletResourceUserId]], returns two output s32s. | ||
== | This is also exposed as GetNmouseStateRanges, with the output data being compared to determine the output NmouseStateRange. | ||
== EnableShowingCursor == | |||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID, a bool, an [[AM_services|AppletResourceUserId]], no output. | Takes a PID, a bool, an [[AM_services|AppletResourceUserId]], no output. | ||
== | == SetNmouseButtonConfigJoyLeftJcms == | ||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID, an | Takes a PID, an [[AM_services|AppletResourceUserId]], an u64, no output. | ||
== | == SetNmouseButtonConfigJoyRightJcms == | ||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID, an | Takes a PID, an [[AM_services|AppletResourceUserId]], an u64, no output. | ||
== | == SetMergedNmouseSourceTypes == | ||
This is exclusive to S2. | This is exclusive to S2. | ||
| Line 1,135: | Line 1,143: | ||
Official sw masks the u32 with bitmask 0x6. | Official sw masks the u32 with bitmask 0x6. | ||
== | == InitializeNmouse2 == | ||
Unofficial name. | |||
This is exclusive to S2. | This is exclusive to S2. | ||
| Line 1,142: | Line 1,152: | ||
The input TransferMemory is created with permissions = R--. The user-process later reads from the buffer used with this. | The input TransferMemory is created with permissions = R--. The user-process later reads from the buffer used with this. | ||
Official sw | Official sw passes value 1 for the last u32. | ||
This and the related nearby cmds are | This and the related nearby cmds are for Joy-Con 2 Mouse Mode. | ||
== | == SetNmousePointerPosition == | ||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID, two | Takes a PID, two s32s, an [[AM_services|AppletResourceUserId]], an u64, no output. | ||
== | == EnableNmousePointer == | ||
This is exclusive to S2. | This is exclusive to S2. | ||
Takes a PID, a bool, an [[AM_services|AppletResourceUserId]], an u64, no output. | Takes a PID, a bool, an [[AM_services|AppletResourceUserId]], an u64, no output. | ||
== | == RestrictNmousePointer == | ||
This is exclusive to S2. | This is exclusive to S2. | ||