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 1,049: 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 1,818: Line 1,920:
| 500 || SetAppletResourceUserId
| 500 || SetAppletResourceUserId
|-
|-
| 501 || RegisterAppletResourceUserId
| 501 || [[#RegisterAppletResourceUserId|RegisterAppletResourceUserId]]
|-
|-
| 502 || UnregisterAppletResourceUserId
| 502 || UnregisterAppletResourceUserId
Line 2,367: Line 2,469:


The output buffer contains an array of [[#UniquePadId]].
The output buffer contains an array of [[#UniquePadId]].
== RegisterAppletResourceUserId ==
Takes an input bool, an [[Applet_Manager_services|AppletResourceUserId]], no output.
[20.4.0+] Takes an input bool, an u8, an [[Applet_Manager_services|AppletResourceUserId]], no output.


== SetVibrationMasterVolume ==
== SetVibrationMasterVolume ==
Line 10,559: Line 10,666:
* '''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,609: Line 10,716:
* [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 ==