HID services: Difference between revisions
(6 intermediate revisions by the same user not shown) | |||
Line 358: | Line 358: | ||
| 3138 || [S2] | | 3138 || [S2] | ||
|- | |- | ||
| 3139 || [S2] | |||
|- | |||
| 3140 || [S2] | |||
|- | |||
| 3141 || [S2] | |||
|- | |||
| 3142 || [S2] | |||
|- | |||
| 3143 || [S2] | |||
|} | |} | ||
Line 650: | Line 659: | ||
== ClearNpadCaptureButtonAssignment == | == ClearNpadCaptureButtonAssignment == | ||
Takes a PID, an [[AM_services|AppletResourceUserId]], no output. | Takes a PID, an [[AM_services|AppletResourceUserId]], no output. | ||
== Cmd138 == | |||
This is exclusive to S2. | |||
Takes a PID, two input u64s, no output. | |||
== Cmd139 == | |||
This is exclusive to S2. | |||
Takes a PID, an u64, returns an output u64. | |||
== GetVibrationDeviceInfo == | == GetVibrationDeviceInfo == | ||
Line 701: | Line 720: | ||
This is currently not exposed by sdknso. | This is currently not exposed by sdknso. | ||
== Cmd220 == | |||
This is exclusive to S2. | |||
Takes a PID, an u32, an u64, returns an output u8. | |||
== ActivateConsoleSixAxisSensor == | == ActivateConsoleSixAxisSensor == | ||
Line 999: | Line 1,023: | ||
== SetDisallowedPalmaConnection == | == SetDisallowedPalmaConnection == | ||
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. | ||
== Cmd550 == | |||
This is exclusive to S2. | |||
Takes a PID, an u32, an u64, returns two output u8s. | |||
== SetNpadCommunicationMode == | == SetNpadCommunicationMode == | ||
Line 1,029: | Line 1,058: | ||
== ActivateDigitizer == | == ActivateDigitizer == | ||
Takes a PID and an [[AM_services|AppletResourceUserId]]. No output. | Takes a PID and an [[AM_services|AppletResourceUserId]]. No output. | ||
== Cmd3110 == | |||
This is exclusive to S2. | |||
Takes a PID, a handle, an u64, an u64, no output. | |||
== Cmd3111 == | |||
This is exclusive to S2. | |||
Takes a PID and an u64, no output. | |||
== Cmd3112 == | |||
This is exclusive to S2. | |||
Takes a PID, an u32, an u64, no output. | |||
== Cmd3113 == | |||
This is exclusive to S2. | |||
Takes a PID, an u32, an u64, no output. | |||
== Cmd3130 == | |||
This is exclusive to S2. | |||
Takes a PID, a handle, an u8, two u32s, two u64s, no output. | |||
== Cmd3131 == | |||
This is exclusive to S2. | |||
Takes a PID and an [[AM_services|AppletResourceUserId]], no output. | |||
== Cmd3132 == | |||
This is exclusive to S2. | |||
Takes a PID, an u32, an u32, an u64, no output. | |||
== Cmd3133 == | |||
This is exclusive to S2. | |||
Takes a PID, an u64, returns two output u32s. | |||
== Cmd3135 == | |||
This is exclusive to S2. | |||
Takes a PID, a bool, an [[AM_services|AppletResourceUserId]], no output. | |||
== Cmd3136 == | |||
This is exclusive to S2. | |||
Takes a PID, an u64, an u64, no output. | |||
== Cmd3137 == | |||
This is exclusive to S2. | |||
Takes a PID, an u64, an u64, no output. | |||
== Cmd3138 == | |||
This is exclusive to S2. | |||
Takes a PID, an u32, an [[AM_services|AppletResourceUserId]], no output. | |||
Official sw masks the u32 with bitmask 0x6. | |||
== Cmd3139 == | |||
This is exclusive to S2. | |||
Takes a PID, a TransferMemory handle, an u8, an u32 width, an u32 height, an u32, an [[AM_services|AppletResourceUserId]], an u64 tmem_size, no output. | |||
The input TransferMemory is created with permissions = R--. The user-process later reads from the buffer used with this. | |||
Official sw always (?) passes value 1 for the last u32. | |||
This and the related nearby cmds are likely (?) for Joy-Con 2 Mouse Mode. | |||
== Cmd3140 == | |||
This is exclusive to S2. | |||
Takes a PID, two u32s, two u64s, no output. | |||
== Cmd3141 == | |||
This is exclusive to S2. | |||
Takes a PID, a bool, an [[AM_services|AppletResourceUserId]], an u64, no output. | |||
== Cmd3142 == | |||
This is exclusive to S2. | |||
Takes a PID, 4 floats, an [[AM_services|AppletResourceUserId]], no output. | |||
== Cmd3143 == | |||
This is exclusive to S2. | |||
Takes a PID, two u64s, no output. | |||
== IAppletResource == | == IAppletResource == | ||
Line 10,539: | Line 10,661: | ||
* '''ExpectVersionInfo.csv''' | * '''ExpectVersionInfo.csv''' | ||
** List in the format "[device],[type],[version]" where "device" can be "JoyLeft", "JoyRight", "FullKey", "Palma" or "Handheld", "type" can be "BT", "MCU", "USB" or "SioH" and "version" is the hexadecimal representation of the firmware file's version. | ** List in the format "[device],[type],[version]" where "device" can be "JoyLeft", "JoyRight", "FullKey", "Palma" or "Handheld", "type" can be "BT", "MCU", "USB" or "SioH" and "version" is the hexadecimal representation of the firmware file's version. | ||
* [S2] '''ExpectVersionInfo.json''' | * [S2] [20.1.1+] '''ExpectVersionInfo.json''' | ||
* '''FirmwareInfo.csv''' | * '''FirmwareInfo.csv''' | ||
** List in the format "[device],[type],[version],[file]" where "device", "type" and "version" should match the values from "ExpectVersionInfo" and "file" is the name of the firmware file. | ** List in the format "[device],[type],[version],[file]" where "device", "type" and "version" should match the values from "ExpectVersionInfo" and "file" is the name of the firmware file. | ||
Line 10,589: | Line 10,711: | ||
* [S1] [14.0.0+] '''FTS_50000002.ftb''' | * [S1] [14.0.0+] '''FTS_50000002.ftb''' | ||
** Touch Screen controller firmware in FTB format for panel vendor "Nissha". | ** Touch Screen controller firmware in FTB format for panel vendor "Nissha". | ||
* [S2] '''JoyLeftImage1.json''' | * [S2] [20.1.1+] '''JoyLeftImage1.json''' | ||
* [S2] '''JoyLeftImage2.json''' | * [S2] [20.1.1+] '''JoyLeftImage2.json''' | ||
* [S2] '''JoyRightImage1.json''' | * [S2] [20.1.1+] '''JoyRightImage1.json''' | ||
* [S2] '''JoyRightImage2.json''' | * [S2] [20.1.1+] '''JoyRightImage2.json''' | ||
* [S2] '''NT36683_INX.bin''' | * [S2] '''NT36683_INX.bin''' | ||
** Touch Screen controller firmware for panel vendor "Innolux". | ** Touch Screen controller firmware for panel vendor "Innolux". | ||
* [S2] '''NT36683_SHP.bin''' | * [S2] '''NT36683_SHP.bin''' | ||
** Touch Screen controller firmware for panel vendor "Sharp". | ** Touch Screen controller firmware for panel vendor "Sharp". | ||
* [S2] '''OunceJoyLeft.bin''' | * [S2] [20.1.1+] '''OunceJoyLeft.bin''' | ||
* [S2] '''OunceJoyLeftBtPatch.bin''' | * [S2] [20.1.1+] '''OunceJoyLeftBtPatch.bin''' | ||
* [S2] '''OunceJoyRight.bin''' | * [S2] [20.1.1+] '''OunceJoyRight.bin''' | ||
* [S2] '''OunceJoyRightBtPatch.bin''' | * [S2] [20.1.1+] '''OunceJoyRightBtPatch.bin''' | ||
* [S2] '''OunceProCon.bin''' | * [S2] [20.1.1+] '''OunceProCon.bin''' | ||
* [S2] '''OunceProConBtPatch.bin''' | * [S2] [20.1.1+] '''OunceProConBtPatch.bin''' | ||
* [S2] '''OunceProConDspFirmware.img''' | * [S2] [20.1.1+] '''OunceProConDspFirmware.img''' | ||
* [S2] '''ProConImage1.json''' | * [S2] [20.1.1+] '''ProConImage1.json''' | ||
* [S2] '''ProConImage2.json''' | * [S2] [20.1.1+] '''ProConImage2.json''' | ||
* [S2] '''ProConImage3.json''' | * [S2] [20.1.1+] '''ProConImage3.json''' | ||
== Versions == | == Versions == |