SceCtrl: Difference between revisions
Jump to navigation
Jump to search
CelesteBlue (talk | contribs) No edit summary |
CelesteBlue (talk | contribs) |
||
Line 47: | Line 47: | ||
int (*setLightBar)(int port, SceUInt8 r, SceUInt8 g, SceUInt8 b); | int (*setLightBar)(int port, SceUInt8 r, SceUInt8 g, SceUInt8 b); | ||
int (*resetLightBar)(int port); | int (*resetLightBar)(int port); | ||
int (*unk1)(int | int (*unk1)(int pid); // sceCtrlSetActiveProcessForDriver equivalent | ||
int (*singleControllerMode)(int port); | int (*singleControllerMode)(int port); | ||
} SceCtrlVirtualControllerDriver; /* size 0x34 */ | } SceCtrlVirtualControllerDriver; /* size 0x34 */ | ||
Line 58: | Line 58: | ||
Only one virtual controller driver can be registered (the new one replaces the previous one). | Only one virtual controller driver can be registered (the new one replaces the previous one). | ||
=== | === sceCtrlSetActiveProcessForDriver === | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
Line 66: | Line 66: | ||
|} | |} | ||
<source lang="C">int | <source lang="C">int sceCtrlSetActiveProcessForDriver(SceUID pid);</source> | ||
=== Unknown functions === | === Unknown functions === | ||
Line 78: | Line 78: | ||
SceCtrlForDriver_69E45836: 0x69E45836 | SceCtrlForDriver_69E45836: 0x69E45836 | ||
SceCtrlForDriver_B25BD8FD: 0xB25BD8FD | SceCtrlForDriver_B25BD8FD: 0xB25BD8FD | ||
SceCtrlForDriver_C8CE3E43: 0xC8CE3E43 | SceCtrlForDriver_C8CE3E43: 0xC8CE3E43 | ||
SceCtrlForDriver_DA07E970: 0xDA07E970 | SceCtrlForDriver_DA07E970: 0xDA07E970 |
Revision as of 21:54, 24 October 2019
Module
Known NIDs
Version | Name | World | Privilege | NID |
---|---|---|---|---|
1.69 | SceCtrl | Non-secure | Kernel | 0x5E8CA7A0 |
3.65 | SceCtrl | Non-secure | Kernel | 0x3BAF0220 |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|---|---|---|---|
1.69 | SceCtrlForDriver | Non-secure | Kernel | 0x7823A5D1 |
1.69 | SceCtrl | Non-secure | User | 0xD197E3C7 |
SceCtrlForDriver
sceCtrlRegisterVirtualControllerDriverForDriver
Version | NID |
---|---|
3.60 | 0x18823EEA |
typedef struct SceCtrlVirtualControllerDriver { int (*readButtons)(int port, SceCtrlData *pad_data, int count); int (*setActuator)(int port, const SceCtrlActuator* pState); int (*getBatteryInfo)(int port, SceUInt8 *batt); int (*disconnect)(int port); int (*setTurnOffInterval)(int port); int (*getActiveControllerPort)(void); int (*changePortAssign)(int port1, int port2); int (*unk0)(void); // SceCtrlForDriver_69E45836 equivalent int (*getControllerPortInfo)(SceCtrlPortInfo *info); int (*setLightBar)(int port, SceUInt8 r, SceUInt8 g, SceUInt8 b); int (*resetLightBar)(int port); int (*unk1)(int pid); // sceCtrlSetActiveProcessForDriver equivalent int (*singleControllerMode)(int port); } SceCtrlVirtualControllerDriver; /* size 0x34 */
int sceCtrlRegisterVirtualControllerDriverForDriver(SceCtrlVirtualControllerDriver *driver);
On the PSTV, the SceDS3 module calls this function to register the DS3/DS4 USB/Bluetooth driver. Only one virtual controller driver can be registered (the new one replaces the previous one).
sceCtrlSetActiveProcessForDriver
Version | NID |
---|---|
0.990-3.60 | 0xB26C2231 |
int sceCtrlSetActiveProcessForDriver(SceUID pid);
Unknown functions
SceCtrlForDriver_02081494: 0x02081494 SceCtrlForDriver_03777131: 0x03777131 SceCtrlForDriver_12C13A72: 0x12C13A72 SceCtrlForDriver_46ABDDE8: 0x46ABDDE8 SceCtrlForDriver_4CCB2153: 0x4CCB2153 SceCtrlForDriver_5B708A15: 0x5B708A15 SceCtrlForDriver_69E45836: 0x69E45836 SceCtrlForDriver_B25BD8FD: 0xB25BD8FD SceCtrlForDriver_C8CE3E43: 0xC8CE3E43 SceCtrlForDriver_DA07E970: 0xDA07E970 SceCtrlForDriver_FF9D4DD4: 0xFF9D4DD4
SceCtrl
sceCtrlPeekBufferNegative
Version | NID |
---|---|
1.69 | 0x104ED1A7 |
sceCtrlReadBufferNegative
Version | NID |
---|---|
1.69 | 0x15F96FB0 |
sceCtrlSetButtonIntercept
Version | NID |
---|---|
1.69 | 0x433D71F4 |
sceCtrlReadBufferPositive
Version | NID |
---|---|
1.69 | 0x67E7AB83 |
sceCtrlGetButtonIntercept
Version | NID |
---|---|
1.69 | 0x6FAFAD05 |
sceCtrlSetSamplingMode
Version | NID |
---|---|
1.69 | 0xA497B150 |
sceCtrlPeekBufferPositiveExt
Version | NID |
---|---|
1.69 | 0xA59454D3 |
sceCtrlPeekBufferPositive
Version | NID |
---|---|
1.69 | 0xA9C3CED6 |
sceCtrlSetSamplingModeExt
Version | NID |
---|---|
1.69 | 0xB1DC4378 |
sceCtrlGetSamplingModeExt
Version | NID |
---|---|
1.69 | 0xBD27F830 |
sceCtrlClearRapidFire
Version | NID |
---|---|
1.69 | 0xD8294C9C |
sceCtrlReadBufferPositiveExt
Version | NID |
---|---|
1.69 | 0xE2D99296 |
sceCtrlSetRapidFire
Version | NID |
---|---|
1.69 | 0xE9CB69C8 |
sceCtrlGetSamplingMode
Version | NID |
---|---|
1.69 | 0xEC752AAF |