SceSyscon: Difference between revisions
CelesteBlue (talk | contribs) No edit summary |
CelesteBlue (talk | contribs) No edit summary |
||
Line 150: | Line 150: | ||
|} | |} | ||
Used | Used in [[ScePower]]. | ||
<source lang="C">int sceSysconGetBatteryCycleCountForDriver(void *pRedsult);</source> | <source lang="C">int sceSysconGetBatteryCycleCountForDriver(void *pRedsult);</source> | ||
Line 380: | Line 380: | ||
|} | |} | ||
Used | Used in [[ScePower]]. <s>when setting a device clock frequency.</s> Maybe sets the voltage. | ||
<source lang="C"> | <source lang="C"> | ||
Line 495: | Line 495: | ||
Enables/disables GameCard reader. | Enables/disables GameCard reader. | ||
Used | Used in [[SceSdstor]]. | ||
<source lang="c"> | <source lang="c"> | ||
Line 552: | Line 552: | ||
|} | |} | ||
This function is not used | This function is not used in the OS and anyway it would always return error because it calls a command that is not implemented in Syscon FW. | ||
<source lang="C">int sceSysconVerifyConfigstorageScriptForDriver(int a1, void *pScript, SceSize size);</source> | <source lang="C">int sceSysconVerifyConfigstorageScriptForDriver(int a1, void *pScript, SceSize size);</source> | ||
Line 656: | Line 656: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.931.010- | | 0.931.010-1.50 || not present | ||
|- | |- | ||
| 1.690.011-3.740.011 | | 1.690.011-3.740.011 || 0x030D447F | ||
|} | |} | ||
This is a guessed name. | This is a guessed name. | ||
Returns extended | Returns extended touchpanel info. | ||
<source lang="C"> | <source lang="C"> | ||
Line 785: | Line 785: | ||
Returns true iff Syscon information bit 3 (from right) is set. See also [[#SceSysconForDriver_EBE3262C]]. | Returns true iff Syscon information bit 3 (from right) is set. See also [[#SceSysconForDriver_EBE3262C]]. | ||
Used | Used in many [[ScePower]] functions for example before setting display brightness (to save battery). | ||
<source lang="C">SceBool sceSysconIsPowerOnlineForDriver(void);</source> | <source lang="C">SceBool sceSysconIsPowerOnlineForDriver(void);</source> | ||
Line 835: | Line 835: | ||
Calls Syscon command 0x90. | Calls Syscon command 0x90. | ||
Used | Used in [[SceRtc]]. | ||
See also [[Ernie#Syscon_Scratch_Pad|Syscon Scratchpad structure]]. | See also [[Ernie#Syscon_Scratch_Pad|Syscon Scratchpad structure]]. | ||
Line 857: | Line 857: | ||
Calls Syscon command 0x91. | Calls Syscon command 0x91. | ||
Used | Used in [[SceRtc]] and [[ScePower]]. | ||
See also [[Ernie#Syscon_Scratch_Pad|Syscon Scratchpad structure]]. | See also [[Ernie#Syscon_Scratch_Pad|Syscon Scratchpad structure]]. | ||
Line 875: | Line 875: | ||
|} | |} | ||
Used | Used in [[SceSblSsMgr#sceSblNvsReadDataForKernel|sceSblNvsReadDataForKernel]] and [[SceSblSsMgr#sceSblNvsWriteDataForKernel|sceSblNvsWriteDataForKernel]]. | ||
<source lang="C"> | <source lang="C"> | ||
Line 901: | Line 901: | ||
|} | |} | ||
Used | Used in [[SceSblSsMgr#sceSblNvsReadDataForKernel|sceSblNvsReadDataForKernel]] and [[SceSblSsMgr#sceSblSsGetNvsDataForDriver|sceSblSsGetNvsDataForDriver]]. | ||
<source lang="C">int sceSysconNvsReadDataForDriver(SceUInt32 offset, void *buffer, SceSize size);</source> | <source lang="C">int sceSysconNvsReadDataForDriver(SceUInt32 offset, void *buffer, SceSize size);</source> | ||
Line 912: | Line 912: | ||
|} | |} | ||
Used | Used in [[SceSblSsMgr#sceSblNvsWriteDataForKernel|sceSblNvsWriteDataForKernel]] and [[SceSblSsMgr#sceSblSsSetNvsDataForDriver|sceSblSsSetNvsDataForDriver]]. | ||
<source lang="C">int sceSysconNvsWriteDataForDriver(SceUInt32 offset, void *buffer, SceSize size);</source> | <source lang="C">int sceSysconNvsWriteDataForDriver(SceUInt32 offset, void *buffer, SceSize size);</source> | ||
Line 967: | Line 967: | ||
On motherboards IRT-001 and older, it does nothing and returns 0, probably because missing hardware that could be a LED, else it sends 2 bytes using Syscon command 0x89E. | On motherboards IRT-001 and older, it does nothing and returns 0, probably because missing hardware that could be a LED, else it sends 2 bytes using Syscon command 0x89E. | ||
Used | Used in [[ScePower#ScePowerForDriver_38415146]]. Related to LED. | ||
<source lang="C">int SceSysconForDriver_9CA6EB70(SceBool state);</source> | <source lang="C">int SceSysconForDriver_9CA6EB70(SceBool state);</source> | ||
Line 1,029: | Line 1,029: | ||
Temp name was sceSysconCtrlDolceUsbPowerForDriver. | Temp name was sceSysconCtrlDolceUsbPowerForDriver. | ||
This function enables/disables a USB bus related to either PS Vita IRS-1001 Wlan/Bt module USB or PS Vita 3G modem USB. This also affects PS TV USB host and maybe also PS TV ethernet. | |||
Used in [[SceUsbEtherSmsc]], [[SceUsbServ]]. | |||
This function was maybe added to support IRS-1001 motherboard. | |||
<source lang="C">int SceSysconForDriver_3274A925(SceBool enable);</source> | <source lang="C">int SceSysconForDriver_3274A925(SceBool enable);</source> | ||
Line 1,066: | Line 1,072: | ||
|} | |} | ||
It is probably a "sceSysconCtrl...ForDriver" function. | |||
Sends 2 bytes to Syscon using Syscon command 0xB0. | |||
=== sceSysconCtrlHostOutputViaDongleForDriver === | === sceSysconCtrlHostOutputViaDongleForDriver === | ||
Line 1,116: | Line 1,124: | ||
|} | |} | ||
Sends 2 bytes to Syscon using Syscon command 0xB5 | It is probably a "sceSysconCtrl...ForDriver" function. | ||
Sends 2 bytes to Syscon using Syscon command 0xB5. It is probably the "set" equivalent of [[#SceSysconForDriver_F6D4DDC4]]. | |||
This function was added to support IRS-1001 motherboard. | This function was added to support IRS-1001 motherboard. | ||
Line 1,127: | Line 1,137: | ||
|} | |} | ||
Sends 2 bytes to Syscon using Syscon command 0xB6 | It is probably a "sceSysconCtrl...ForDriver" function. | ||
Sends 2 bytes to Syscon using Syscon command 0xB6. It is probably the "set" equivalent of [[#SceSysconForDriver_91EF4EC3]]. | |||
This function was added to support DOL-1002 motherboard. | This function was added to support DOL-1002 motherboard. | ||
Line 1,534: | Line 1,546: | ||
Sets a flag used internally by [[SceSyscon]]. | Sets a flag used internally by [[SceSyscon]]. | ||
Used | Used in [[SceCtrl]], [[ScePower]]. | ||
<source lang="C">int SceSysconForDriver_901D6CD4(int enable);</source> | <source lang="C">int SceSysconForDriver_901D6CD4(int enable);</source> | ||
Line 1,628: | Line 1,640: | ||
Sets current Syscon power on time in ticks of 0.5 second. The set value can be get with [[#SceSysconForDriver_D7BEFF8B]]. | Sets current Syscon power on time in ticks of 0.5 second. The set value can be get with [[#SceSysconForDriver_D7BEFF8B]]. | ||
Used | Used in [[SceRtc]]. Set to 0 just before setting Current Tick, to reset syscon power on time. | ||
<source lang="C">int SceSysconForDriver_9B6A6F64(SceUInt32 time);</source> | <source lang="C">int SceSysconForDriver_9B6A6F64(SceUInt32 time);</source> | ||
Line 1,641: | Line 1,653: | ||
Calls Syscon command 0x82. On Syscon version < 0x90907, 4 bytes are sent to Syscon, whilst on Syscon version >= 0x90907, 5 bytes are sent to Syscon. | Calls Syscon command 0x82. On Syscon version < 0x90907, 4 bytes are sent to Syscon, whilst on Syscon version >= 0x90907, 5 bytes are sent to Syscon. | ||
Used | Used in [[SceRtc#sceRtcSetAlarmTickForDriver]]. | ||
The set value can be get with [[#SceSysconForDriver_3168F3AF]]. | The set value can be get with [[#SceSysconForDriver_3168F3AF]]. | ||
Line 1,812: | Line 1,824: | ||
Related to [[SceHpremote]]. Maybe enables/disables Jack power. | Related to [[SceHpremote]]. Maybe enables/disables Jack power. | ||
Used | Used in [[ScePower]]. | ||
<source lang="C">int SceSysconForDriver_5CDDA14D(SceUInt32 value);</source> | <source lang="C">int SceSysconForDriver_5CDDA14D(SceUInt32 value);</source> | ||
Line 1,849: | Line 1,861: | ||
|} | |} | ||
Only used | Only used in [[ScePower]]. | ||
If Syscon version <= 0x70503, it calls Syscon command 0x802, else Syscon command 0x900. | If Syscon version <= 0x70503, it calls Syscon command 0x802, else Syscon command 0x900. | ||
Line 1,864: | Line 1,876: | ||
If Syscon version <= 0x70503, it calls Syscon command 0x803, else Syscon command 0x901. | If Syscon version <= 0x70503, it calls Syscon command 0x803, else Syscon command 0x901. | ||
Used | Used in [[ScePower]]. | ||
<source lang="C">int sceSysconGetBatteryVoltForDriver(SceUInt32 *pResult);</source> | <source lang="C">int sceSysconGetBatteryVoltForDriver(SceUInt32 *pResult);</source> | ||
Line 1,877: | Line 1,889: | ||
|} | |} | ||
Used | Used in [[ScePower]]. | ||
<source lang="C">int sceSysconGetBatteryLifePercentForDriver(SceUInt32 *pResult);</source> | <source lang="C">int sceSysconGetBatteryLifePercentForDriver(SceUInt32 *pResult);</source> | ||
Line 1,890: | Line 1,902: | ||
If Syscon version <= 0x70503, it calls Syscon command 0x8A1, else Syscon command 0x982. | If Syscon version <= 0x70503, it calls Syscon command 0x8A1, else Syscon command 0x982. | ||
Used | Used in [[ScePower]]. | ||
<source lang="C">int SceSysconForDriver_00A65FC1(int *pResult);</source> | <source lang="C">int SceSysconForDriver_00A65FC1(int *pResult);</source> | ||
Line 1,903: | Line 1,915: | ||
If Syscon version <= 0x70503, it calls Syscon command 0x8A2, else Syscon command 0x983. | If Syscon version <= 0x70503, it calls Syscon command 0x8A2, else Syscon command 0x983. | ||
Used | Used in [[ScePower]]. | ||
<source lang="C">int sceSysconGetBatteryElecForDriver(SceUInt16 *pResult);</source> | <source lang="C">int sceSysconGetBatteryElecForDriver(SceUInt16 *pResult);</source> | ||
Line 1,916: | Line 1,928: | ||
If Syscon version <= 0x70503, it calls Syscon command 0x8A3, else Syscon command 0x984. | If Syscon version <= 0x70503, it calls Syscon command 0x8A3, else Syscon command 0x984. | ||
Used | Used in [[ScePower]]. | ||
<source lang="C">int sceSysconGetBatteryLifeTimeForDriver(SceUInt16 *pResult);</source> | <source lang="C">int sceSysconGetBatteryLifeTimeForDriver(SceUInt16 *pResult);</source> | ||
Line 1,929: | Line 1,941: | ||
If Syscon version <= 0x70503, it calls Syscon command 0x8A4, else Syscon command 0x985. | If Syscon version <= 0x70503, it calls Syscon command 0x8A4, else Syscon command 0x985. | ||
Used | Used in [[ScePower]]. | ||
<source lang="C">int sceSysconGetBatterySOHForDriver(void *pResult);</source> | <source lang="C">int sceSysconGetBatterySOHForDriver(void *pResult);</source> | ||
Line 1,975: | Line 1,987: | ||
Returns a 8-bit global variable casted to 32-bit for convenience. | Returns a 8-bit global variable casted to 32-bit for convenience. | ||
Used | Used in [[SceRtc]]. | ||
<source lang="C">int SceSysconForDriver_86BAAF7D(void);</source> | <source lang="C">int SceSysconForDriver_86BAAF7D(void);</source> | ||
Line 2,057: | Line 2,069: | ||
|} | |} | ||
Only used | Only used in [[SceUsbServ]]. | ||
<source lang="C">int SceSysconForDriver_B9EA2FA8(void);</source> | <source lang="C">int SceSysconForDriver_B9EA2FA8(void);</source> | ||
Line 2,068: | Line 2,080: | ||
|} | |} | ||
Only used | Only used in [[ScePower]]. | ||
<source lang="C">int SceSysconForDriver_D7F5A797(void);</source> | <source lang="C">int SceSysconForDriver_D7F5A797(void);</source> | ||
Line 2,158: | Line 2,170: | ||
Related to battery. Only used when battery is working. | Related to battery. Only used when battery is working. | ||
Used | Used in [[ScePower#ScePowerForDriver_0D56C601]]. | ||
<source lang="C">int SceSysconForDriver_ACEE1C70(void);</source> | <source lang="C">int SceSysconForDriver_ACEE1C70(void);</source> | ||
Line 2,241: | Line 2,253: | ||
This function was added along with [[ScePower#scePowerIsLowBatteryInhibitUpdateReboot]]. | This function was added along with [[ScePower#scePowerIsLowBatteryInhibitUpdateReboot]]. | ||
Used | Used in [[ScePower#scePowerIsLowBatteryInhibitUpdateReboot]]. | ||
<source lang="c">int sceSysconIsLowBatteryInhibitUpdateRebootForDriver(void);</source> | <source lang="c">int sceSysconIsLowBatteryInhibitUpdateRebootForDriver(void);</source> | ||
Line 2,256: | Line 2,268: | ||
This function was added along with [[ScePower#scePowerIsLowBatteryInhibitUpdateDownload]]. | This function was added along with [[ScePower#scePowerIsLowBatteryInhibitUpdateDownload]]. | ||
Used | Used in [[ScePower#scePowerIsLowBatteryInhibitUpdateDownload]]. | ||
<source lang="c">int sceSysconIsLowBatteryInhibitUpdateDownloadForDriver(void);</source> | <source lang="c">int sceSysconIsLowBatteryInhibitUpdateDownloadForDriver(void);</source> | ||
Line 2,273: | Line 2,285: | ||
This function was added along with [[ScePower#scePowerGetBatteryRemainLevelForDriver]]. | This function was added along with [[ScePower#scePowerGetBatteryRemainLevelForDriver]]. | ||
Used | Used in [[ScePower#scePowerGetBatteryRemainLevelForDriver]]. | ||
<source lang="C">int sceSysconGetBatteryRemainLevelForDriver(SceUInt8 *pResult1, SceUInt8 *pResult2);</source> | <source lang="C">int sceSysconGetBatteryRemainLevelForDriver(SceUInt8 *pResult1, SceUInt8 *pResult2);</source> | ||
Line 2,557: | Line 2,569: | ||
|- | |- | ||
| 0xB1 | | 0xB1 | ||
| | | 0 | ||
| 0xDF8C6D2D | | 0xDF8C6D2D | ||
| sceSysconCtrlWirelessPowerDownForDriver | | sceSysconCtrlWirelessPowerDownForDriver | ||
Line 2,567: | Line 2,579: | ||
|- | |- | ||
| 0xB3 | | 0xB3 | ||
| | | at least 1 | ||
| 0x33B5CDB3 | | 0x33B5CDB3 | ||
| ?? | | ?? | ||
|- | |- | ||
| 0xB4 | | 0xB4 | ||
| | | at least 1 | ||
| 0xF6D4DDC4 | | 0xF6D4DDC4 | ||
| ?? | | ?? | ||
Line 2,587: | Line 2,599: | ||
|- | |- | ||
| 0xB7 | | 0xB7 | ||
| | | at least 1 | ||
| 0x91EF4EC3 | | 0x91EF4EC3 | ||
| ?? | | ?? | ||
Line 3,027: | Line 3,039: | ||
|- | |- | ||
| 0x380 | | 0x380 | ||
| | | at least 1 | ||
| 0xF492E69E | | 0xF492E69E | ||
| sceSysconGetTouchpanelDeviceInfoForDriver | | sceSysconGetTouchpanelDeviceInfoForDriver | ||
|- | |- | ||
| 0x38A | | 0x38A | ||
| | | at least 1 | ||
| 0xA1F1B973 | | 0xA1F1B973 | ||
| ?? | | ?? | ||
|- | |- | ||
| 0x390 | | 0x390 | ||
| | | at least 1 | ||
| 0x030D447F | | 0x030D447F | ||
| sceSysconGetTouchpanelDeviceInfo2ForDriver | | sceSysconGetTouchpanelDeviceInfo2ForDriver | ||
Line 3,049: | Line 3,061: | ||
| ? | | ? | ||
| 0x9A28BEEF, 0x8874EF45 | | 0x9A28BEEF, 0x8874EF45 | ||
| | | Used in [[SceSblUpdateMgr]] | ||
|- | |- | ||
| 0x3A9 | | 0x3A9 | ||
Line 3,094: | Line 3,106: | ||
| ? | | ? | ||
| 0x5946B29B, 0x10327C64 | | 0x5946B29B, 0x10327C64 | ||
| | | Used in [[SceSblUpdateMgr]] | ||
|- | |- | ||
| 0x480 | | 0x480 | ||
Line 3,392: | Line 3,404: | ||
|- | |- | ||
| 0x8C5 | | 0x8C5 | ||
| ?0x2? | | ?0x2 or 0? | ||
| 0x3274A925 | | 0x3274A925 | ||
| ??. [[SceUsbServ]] and [[SceUsbEtherSmsc]] related. | | ??. [[SceUsbServ]] and [[SceUsbEtherSmsc]] related. |
Revision as of 23:28, 16 February 2023
System Controller.
Module
Version | World | Privilege |
---|---|---|
0.931.010-3.740.011 | Non-secure | Kernel |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|---|---|---|---|
0.931.010-3.740.011 | SceSysconForDriver | Non-secure | Kernel | 0x60A35F64 |
Types
#define SCE_KERNEL_ERROR_SYSCON_ERROR 0x80250000 #define SCE_SYSCON_ERROR_INVALID_SIZE 0x80250001 #define SCE_SYSCON_ERROR_INVALID_ARGUMENT 0x80250002 #define SCE_SYSCON_ERROR_INVALID_POINTER 0x80250003 #define SCE_SYSCON_ERROR_INVALID_STATUS 0x80250004 #define SCE_SYSCON_ERROR_NOT_INTR_ALLOWED 0x80250005 #define SCE_SYSCON_ERROR_TX_SIZE_TOO_LONG 0x80250006 #define SCE_SYSCON_ERROR_ILLEGAL_SIZE 0x80250100 #define SCE_SYSCON_ERROR_ILLEGAL_STATUS 0x80250101 #define SCE_SYSCON_ERROR_NOEXEC 0x80250102 #define SCE_SYSCON_ERROR_INVALID_FLAGS 0x80250105 // Syscon error codes are gotten with 0x80250200 | rx[3], where rx is the data returned by Syscon typedef struct SceSysconPacket { // size is 0x80 struct SceSysconPacket *next; SceUInt32 status; // Lower 16 bits contain flags SceUID semaId; SceUInt32 index; // Out: returns to which packet list the packet was inserted into SceUInt8 tx[32]; // tx[0..1] = cmd, tx[2] = size i.e. sizeof(actual_data)+1, rx[3..31] = actual_data SceUInt8 rx[32]; // rx[0..1] = cmd, rx[2] = size i.e. sizeof(actual_data)+2, rx[3] = error_code, rx[4..31] = actual_data void *tx_extra; void *rx_extra; SceSize rx_extra_size; SceUInt32 rx_offset; int (*callback)(SceSysconPacket *packet, void *argp); void *argp; SceUInt32 time; SceUInt32 unk[5]; } SceSysconPacket; typedef enum SceSysconControl { SCE_SYSCON_CTRL_UP = 0x1, SCE_SYSCON_CTRL_RIGHT = 0x2, SCE_SYSCON_CTRL_DOWN = 0x4, SCE_SYSCON_CTRL_LEFT = 0x8, SCE_SYSCON_CTRL_TRIANGLE = 0x10, SCE_SYSCON_CTRL_CIRCLE = 0x20, SCE_SYSCON_CTRL_CROSS = 0x40, SCE_SYSCON_CTRL_SQUARE = 0x80, SCE_SYSCON_CTRL_SELECT = 0x100, SCE_SYSCON_CTRL_LTRIGGER = 0x200, SCE_SYSCON_CTRL_RTRIGGER = 0x400, SCE_SYSCON_CTRL_START = 0x800, SCE_SYSCON_CTRL_PSBUTTON = 0x1000, SCE_SYSCON_CTRL_POWER = 0x4000, SCE_SYSCON_CTRL_VOLUP = 0x10000, SCE_SYSCON_CTRL_VOLDOWN = 0x20000, SCE_SYSCON_CTRL_HEADPHONE = 0x8000000 } SceSysconControl;
Flags (passed to sceSysconCmdExecForDriver
, etc), also lower bits of status
:
Flags | Meaning |
---|---|
0x1 | Some kind of priority that helps to select to which packet list the packet is inserted into. |
0x100 | Do not insert packet checksum (at tx_buf[2 + len] ), where len = tx_buf[2] . And don't memset the rest of the buffer to -1 (memset(tx_buf + len + 3, -1, 29 - len) ) if len < 29.
|
0x400 | When set, use rx_extra to receive the data. rx_extra_size must be greater than 32. |
0x800 | When set, use tx_extra instead of tx for sending data. The size is contained in tx_extra[2] and must be smaller or equal to 253. When cleared: use tx and the size is contained in tx[2], which has to be smaller or equal 29. |
SceSysconForDriver
sceSysconErnieShutdownForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x94AB13CC |
#define ERNIE_SHUTDOWN_SHUTDOWN 0 #define ERNIE_SHUTDOWN_REBOOT 1 int sceSysconErnieShutdownForDriver(int mode);
sceSysconPowerCtrlKermitResetForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x14B99945 |
Executes SMC 0x11A: return sceSysconSetPowerMode(2, 0);
int sceSysconPowerCtrlKermitResetForDriver(void);
sceSysconBatterySWResetForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x87DA378D |
If Syscon version <= 0x70503, it does nothing and returns error 0x8025023F.
int sceSysconBatterySWResetForDriver(void);
sceSysconGetBatteryFullCapacityForDriver
Version | NID |
---|---|
0.931.010 | not present |
0.990.000-3.740.011 | 0xF93CF833 |
Used in ScePower's module_start.
int sceSysconGetBatteryFullCapacityForDriver(void *pResult);
sceSysconGetBatteryCycleCountForDriver
Version | NID |
---|---|
0.931.010 | not present |
0.996.090-3.740.011 | 0xCD73079D |
Used in ScePower.
int sceSysconGetBatteryCycleCountForDriver(void *pRedsult);
sceSysconBatteryStartBLModeForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x2CEF078E |
int sceSysconBatteryStartBLModeForDriver(void);
sceSysconBatteryStopBLModeForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xE4AE7852 |
int sceSysconBatteryStopBLModeForDriver(void);
sceSysconBatterySetBLCommandForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xE4F29744 |
BL command (1 byte at most) must be contained in either unk_byte or pSrc.
int sceSysconBatterySetBLCommandForDriver(SceUInt16 ctx, SceUInt8 unk_byte, void *pSrc, SceUInt8 size);
sceSysconBatteryExecBLCommandForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x74B2AB55 |
int sceSysconBatteryExecBLCommandForDriver(SceUInt16 ctx);
sceSysconBatteryReadBLCommandForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x448DAFF1 |
// size must be between 0 and 0x10 int sceSysconBatteryReadBLCommandForDriver(SceUInt16 ctx, SceUInt8 unk1, SceUInt8 unk2, void *pDst, SceUInt8 size);
sceSysconGetManualChargeModeForDriver
Version | NID |
---|---|
0.931.010-2.060.011 | not present |
2.100.081-3.740.011 | 0x4FEC564C |
int sceSysconGetManualChargeModeForDriver(int *piMode);
sceSysconCtrlManualChargeModeForDriver
Version | NID |
---|---|
0.931.010-2.060.011 | not present |
2.100.081-3.740.011 | 0xC6A2C9EF |
int sceSysconCtrlManualChargeModeForDriver(int mode);
sceSysconGetLogInfoForDriver
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.990.000-3.740.011 | 0x701535FC |
typedef struct SceSysconLogInfo { // size is 8 on FW 3.600.011 uint8_t unk_0[8]; } SceSysconLogInfo; int sceSysconGetLogInfoForDriver(SceSysconLogInfo *pInfo);
sceSysconLogStartForDriver
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.990.000-3.740.011 | 0x4E55CF5E |
int sceSysconLogStartForDriver(void);
sceSysconLogStartWaitingForDriver
Version | NID |
---|---|
0.931.010-2.12 | not present |
2.500.071-3.740.011 | 0x9C0B1E61 |
int sceSysconLogStartWaitingForDriver(void);
sceSysconLogReadDataForDriver
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.996.090-3.740.011 | 0x487D97F3 |
int sceSysconLogReadDataForDriver(SceUInt32 offset, void *buffer, SceSize size);
sceSysconGetTemperatureLogForDriver
Version | NID |
---|---|
0.931.010-2.12 | not present |
2.500.071-3.740.011 | 0x3B354824 |
sceSysconClearTemperatureLogForDriver
Version | NID |
---|---|
0.931.010-2.12 | not present |
2.500.071-3.740.011 | 0x3843D657 |
sceSysconGetUsbDetStatusForDriver
Version | NID |
---|---|
0.931.010-2.060.011 | not present |
2.100.081-3.740.011 | 0xEF810687 |
sceSysconCtrlDolceLEDForDriver
Version | NID |
---|---|
0.931.010-2.060.011 | not present |
2.100.081-3.740.011 | 0x727F985A |
This is a guessed name.
#define STATE_ON 0 #define STATE_BLINK_SLOW 1 #define STATE_BLINK_FAST 2 int sceSysconCtrlDolceLEDForDriver(SceUInt32 state);
sceSysconGetBaryonTimestampForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x4D588A0A |
A temp name was sceSysconGetTimeStampForDriver, derived from PSP.
Returns the timestamp of latest installed Syscon FW patch, formatted as YYYYMMDDhhmm
. This comes from a string stored in Syscon FW under another format: $Date:: YYYY-MM-DD hh:mm:ss +0900#$
Example: $Date:: 2013-12-13 15:52:05 +0900#$
in Syscon FW becomes 201312131552
in Syscon command 2.
// pTimestamp will point to a buffer of size 0x10 bytes, containing a string of size 13 (12: length + 1: terminal character) int sceSysconGetBaryonTimestampForDriver(char *pTimestamp);
sceSysconGetWakeupFactorForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xCF5B2F2F |
Result is 2 bytes wakeup factor coming from Syscon command 0x10.
int sceSysconGetWakeupFactorForDriver(SceUInt32 *pWakeupFactor);
sceSysconCtrlHdmiCecPowerForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x62155962 |
If Syscon version is strictly lower than 0x40000, it does nothing and returns 0.
Sets the pin CDC Hot Plug Detect (HPD) state of the HDMI bridge (AD80244 / ADV7533).
int sceSysconCtrlHdmiCecPowerForDriver(SceBool enable_HDMI_CDC_HPD_pin);
SceSysconForDriver_3FDD29D6
Version | NID |
---|---|
0.931.010-3.740.011 | 0x3FDD29D6 |
int SceSysconForDriver_3FDD29D6(int a1, SceBool use_flag);
SceSysconForDriver_7F198FA2
Version | NID |
---|---|
0.931.010-3.740.011 | 0x7F198FA2 |
Used in ScePower. when setting a device clock frequency. Maybe sets the voltage.
/* device: 0: 1: SetSysClockFrequency, SetDmac5ClockFrequency, SetBusClockFrequency, SetCameraBusClockFrequency 2: SetArmClockFrequency 3: SetGpuClockFrequency, SetVipClockFrequency 4: SetGpuClockFrequencyInternal, SetGpuXbarClockFrequency, SetCompatClockFrequency unk: 0x8A - (something got from ScePervasiveForDriver) */ int SceSysconForDriver_7F198FA2(SceUInt32 device, SceUInt32 unk);
sceSysconSetPowerModeForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x8A95D35C |
Temp name was sceSysconResetDeviceForDriver.
int sceSysconSetPowerModeForDriver(int type, int mode);
It issues SMC #0
with r12 = 0x11A
.
The mode
argument is usually set to 0x2
or sometimes 0x8002
(which seems to correspond to some request by the UDC and BT drivers).
The type
argument determines what to do.
Real definition names are like: "SCE_SYSCON_POWERMODE_MODE_STANDBY".
Type | Description | Syscon command |
---|---|---|
0 | Power off | {0xC0, 0, 5, type, (~mode) & 0xFF, (~mode >> 8) & 0xFF, (mode >> 16) & 0xFF}
|
1 | Suspend (low-power state) | {0xC0, 0, 5, type, (~mode) & 0xFF, (~mode >> 8) & 0xFF, (mode >> 16) & 0xFF}
|
2 | Cold reset | {0x01, 8, 1, 0}
|
3 | ?Reset to update mode? | {0xC1, 0, 2, 0}
|
4 | ?Reset to update mode? | {0xC1, 0, 2, 1}
|
5 | Hibernate | {0xC2, 0, 2, 0x5A}
|
16 | ?? | {0xC0, 0, 5, type, (~mode) & 0xFF, (~mode >> 8) & 0xFF, (mode >> 16) & 0xFF}
|
17 | Soft reset (suspend and immediately resume) | {0xC0, 0, 5, type, (~mode) & 0xFF, (~mode >> 8) & 0xFF, (mode >> 16) & 0xFF}
|
sceSysconEnableHibernateIOForDriver
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.990.000-3.740.011 | 0x4946538A |
int sceSysconEnableHibernateIOForDriver(int a1);
sceSysconWaitReadyForDriver
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.996.090-3.740.011 | 0x55DF1C9B |
Temp name was sceSysconWaitInitializedForDriver.
int sceSysconWaitReadyForDriver(void);
sceSysconCmdSyncForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x6E517D22 |
int sceSysconCmdSyncForDriver(SceSysconPacket *packet, int noWait);
sceSysconCmdExecForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x9ADDCA4A |
int sceSysconCmdExecForDriver(SceSysconPacket *packet, unsigned int flags);
sceSysconCmdExecAsyncForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xC2224E82 |
int sceSysconCmdExecAsyncForDriver(SceSysconPacket *packet, u32 flags, int (*callback)(SceSysconPacket *, void *), void *argp);
sceSysconCtrlSdPowerForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xBE1ADE4F |
If Syscon version is strictly lower than 0x40000, it does nothing and returns 0. Calls Syscon command 0x888.
Enables/disables GameCard reader.
Used in SceSdstor.
// param: 1 = enable SD (GameCard reader) power, 0 = disable SD (GameCard reader) power int sceSysconCtrlSdPowerForDriver(SceUInt16 param);
sceSysconCtrlWirelessPowerForDriver
Version | NID |
---|---|
0.931.010-0.995.000 | 0x4FBDA504 |
0.996.090-3.740.011 | not present |
If Syscon version is strictly lower than 0x40000, it does nothing and returns 0. Calls Syscon command 0x88A.
Replaced by function #sceSysconCtrlWirelessPower2ForDriver.
int sceSysconCtrlWirelessPowerForDriver(SceUInt16 param);
sceSysconCtrlWirelessPower2ForDriver
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.996.090-3.740.011 | 0xA2E85DB9 |
Replacement function for #sceSysconCtrlWirelessPowerForDriver. Calls Syscon command 0x88A.
int sceSysconCtrlWirelessPower2ForDriver(SceUInt16 param);
sceSysconCtrlWirelessPowerDownForDriver
Version | NID |
---|---|
0.931.010-0.995.000 | 0xDF8C6D2D |
0.996.090-3.740.011 | not present |
If motherboard is not "hardware info third byte 0x10" (probably IRS-001), it does nothing and returns 0, probably because missing hardware. Calls Syscon command 0xB1. Wireless power down might be a button to enable/disable Wireless, like on PSP.
int sceSysconCtrlWirelessPowerDownForDriver(SceUInt16 param);
sceSysconVerifyConfigstorageScriptForDriver
Version | NID |
---|---|
0.931.010-0.990.000 | not present |
0.995.000-3.740.011 | 0xCC6F90A8 |
This function is not used in the OS and anyway it would always return error because it calls a command that is not implemented in Syscon FW.
int sceSysconVerifyConfigstorageScriptForDriver(int a1, void *pScript, SceSize size);
sceSysconLoadConfigstorageScriptForDriver
Version | NID |
---|---|
0.931.010-0.990.000 | not present |
0.995.000-3.740.011 | 0x89C5CFD6 |
The OS uses this function to change between modes: IDU mode, Show Mode, no mode. This works by spoofing or rewriting Hardware Info. This is reboot persistent.
int sceSysconLoadConfigstorageScriptForDriver(int a1, void *pScript, SceSize size);
sceSysconBeginConfigstorageTransactionForDriver
Version | NID |
---|---|
0.931.010 | not present |
0.990.000-3.740.011 | 0xA4968B8C |
int sceSysconBeginConfigstorageTransactionForDriver(void);
sceSysconCommitConfigstorageTransactionForDriver
Version | NID |
---|---|
0.931.010 | not present |
0.990.000-3.740.011 | 0x7B9B3617 |
int sceSysconCommitConfigstorageTransactionForDriver(void);
sceSysconEndConfigstorageTransactionForDriver
Version | NID |
---|---|
0.931.010 | not present |
0.990.000-3.740.011 | 0xFCC3E8EE |
int sceSysconEndConfigstorageTransactionForDriver(void);
sceSysconSetDebugHandlersForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xF245CD6F |
/** A set of debug handlers for syscon, that you can set in sceSysconSetDebugHandlersForDriver(). */ typedef struct SceSysconDebugHandlers { /** Structure size (probably, unused). */ s32 size; /** Callback ran right before running a packet, with a pointer to it passed as the first argument. */ void (*start)(SceSysconPacket *packet); /** Callback ran right after finishing running a packet, with a pointer to it passed as the first argument. */ void (*end)(SceSysconPacket *packet); } SceSysconDebugHandlers; int sceSysconSetDebugHandlersForDriver(SceSysconDebugHandlers *debug_handlers);
sceSysconGetBatteryCalibDataForDriver
Version | NID |
---|---|
0.931.010-3.36 | not present |
3.500.011-3.740.011 | 0x9ADC9936 |
int sceSysconGetBatteryCalibDataForDriver(int *piData1, int *piData2, int *piData3, int *piData4);
sceSysconGetTouchpanelDeviceInfoForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xF492E69E |
typedef struct SceKernelTouchpanelDeviceInfo { uint16_t FrontVendorID; uint16_t FrontFwVersion; uint16_t BackVendorID; uint16_t BackFwVersion; } SceKernelTouchpanelDeviceInfo; int sceSysconGetTouchpanelDeviceInfoForDriver(SceKernelTouchpanelDeviceInfo *pInfo);
sceSysconGetTouchpanelDeviceInfo2ForDriver
Version | NID |
---|---|
0.931.010-1.50 | not present |
1.690.011-3.740.011 | 0x030D447F |
This is a guessed name.
Returns extended touchpanel info.
typedef struct SceKernelTouchpanelDeviceInfo2 { uint16_t FrontVendorID; uint16_t FrontFwVersion; uint16_t FrontUnk1; uint8_t FrontUnk2; uint8_t FrontUnk3; uint16_t unused1; uint16_t BackVendorID; uint16_t BackFwVersion; uint16_t BackUnk1; uint8_t BackUnk2; uint8_t BackUnk3; uint16_t unused2; } SceKernelTouchpanelDeviceInfo2; int sceSysconGetTouchpanelDeviceInfo2ForDriver(SceKernelTouchpanelDeviceInfo2 *pInfo);
sceSysconGetHardwareInfoForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xCBD6D8BC |
Returns Hardware Info obtained from Syscon command 0x5.
int sceSysconGetHardwareInfoForDriver(void);
sceSysconGetHardwareInfo2ForDriver
Version | NID |
---|---|
0.931.010-2.060.011 | not present |
2.100.081-3.740.011 | 0x965C68C3 |
Returns Hardware Info, ID and Hardware Type obtained from Syscon command 0x6.
This function was certainly added for PS Vita Slim or PS TV support.
// "hwinfo = 0x%08x, id = 0x%llx, hwtype = 0x%08x" typedef struct SceKernelHardwareInfo2 { int hwinfo; uint64_t id; // unsure int hwtype; // unsure } SceKernelHardwareInfo2; int sceSysconGetHardwareInfo2ForDriver(SceKernelHardwareInfo2 *pInfo);
sceSysconGetBaryonVersionForDriver
Version | NID |
---|---|
0.931-3.740.011 | 0xFF86F4C5 |
Baryon is the PSP Syscon. A more proper name would have been sceSysconGetErnieVersionForDriver but old name was kept.
int sceSysconGetBaryonVersionForDriver(void);
SceSysconForDriver_EBE3262C
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.996.090-3.740.011 | 0xEBE3262C |
In SceSblPostSsMgr, used just after #sceSysconGetBaryonVersionForDriver.
Returns 8 bits of some Syscon Mode information. Bit 6 (from right) is Syscon DownLoader Mode flag. Bit 3 (from right) is Power Online flag.
SceUInt8 SceSysconForDriver_EBE3262C(void);
sceSysconIsDownLoaderModeForDriver
Version | NID |
---|---|
0.931.010 | not present |
0.990.000-3.740.011 | 0x9ADD60D2 |
int sceSysconIsDownLoaderModeForDriver(void);
sceSysconIsDealDownLoaderModeForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xB7BCC638 |
int sceSysconIsDealDownLoaderModeForDriver(void);
SceSysconForDriver_0D0B6D25
Version | NID |
---|---|
0.931.010.740.011 | 0x0D0B6D25 |
Maybe exits Syscon Deal DownLoader mode.
int SceSysconForDriver_0D0B6D25(void);
sceSysconIsPowerOnlineForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x9DA2A5AB |
Returns true iff Syscon information bit 3 (from right) is set. See also #SceSysconForDriver_EBE3262C.
Used in many ScePower functions for example before setting display brightness (to save battery).
SceBool sceSysconIsPowerOnlineForDriver(void);
sceSysconGetErnieDLVersionForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xD2F456DC |
Calls Syscon command 0x1100.
void sceSysconGetErnieDLVersionForDriver(int *pVersion);
sceSysconGetBatteryVersionForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x68E0031E |
Battery IC name: if HWinfo > 7 "Abby" else "Bert".
int sceSysconGetBatteryVersionForDriver(SceUInt16 *HWinfo, SceUInt16 *FWinfo, SceUInt16 *DFinfo);
sceSysconGetManufacturesStatusForDriver
Version | NID |
---|---|
0.931.010-1.692.000 | not present |
1.800.071-3.740.011 | 0x3E09A1F4 |
In theory, this function should only be called when Product Mode is already set.
int sceSysconGetManufacturesStatusForDriver(int *piStatus);
sceSysconReadScratchPadForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x299B1CE7 |
Temp name was sceSysconReadCommandForDriver, sceSysconVsReadDataForDriver.
Calls Syscon command 0x90.
Used in SceRtc.
See also Syscon Scratchpad structure.
// size: On FW 3.60, must be between 0 and 0x18. On FW 0.931, must be 2, 4 or 8. // offset: Must be between 0 and 0xFF. // offset + size must not exceed 0x100 int sceSysconReadScratchPadForDriver(SceUInt32 offset, void *buffer, SceSize size);
sceSysconWriteScratchPadForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xE26488B9 |
Temp name was sceSysconSendCommandForDriver, sceSysconVsWriteDataForDriver.
Calls Syscon command 0x91.
See also Syscon Scratchpad structure.
// size: On FW 3.60, must be between 0 and 0x18. On FW 0.931, must be 2, 4 or 8. // offset: Must be between 0 and 0xFF. // offset + size must not exceed 0x100 int sceSysconWriteScratchPadForDriver(SceUInt32 offset, void *buffer, SceSize size);
sceSysconNvsSetRunModeForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x81A6060D |
Used in sceSblNvsReadDataForKernel and sceSblNvsWriteDataForKernel.
// mode: 0 before NVS read/write int sceSysconNvsSetRunModeForDriver(int mode);
sceSysconNvsSetUnkModeForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x2EC6D55D |
// mode: unk int sceSysconNvsSetUnkModeForDriver(int mode);
sceSysconNvsReadDataForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xACAFA2B8 |
Used in sceSblNvsReadDataForKernel and sceSblSsGetNvsDataForDriver.
int sceSysconNvsReadDataForDriver(SceUInt32 offset, void *buffer, SceSize size);
sceSysconNvsWriteDataForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x10C9657A |
Used in sceSblNvsWriteDataForKernel and sceSblSsSetNvsDataForDriver.
int sceSysconNvsWriteDataForDriver(SceUInt32 offset, void *buffer, SceSize size);
sceSysconGetMultiCnInfoForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x1503D6A0 |
Returns data obtained by Syscon command 0x103.
int sceSysconGetMultiCnInfoForDriver(SceUInt32 *pInfo);
sceSysconSetMultiCnPortForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x8AAB6308 |
// port: 0: for JIG mode, 1 for UART0 logging mode, 0x10000: for normal mode int sceSysconSetMultiCnPortForDriver(int port);
sceSysconConfigLEDForDriver
Version | NID |
---|---|
0.996.090-3.740.011 | 0x6F586D1A |
This is a guessed name.
#define DEVICE_UNK 0x40 // maybe PS button or CP power LED or maybe color (blue) // unk: SceLedConfig.unk_4 int sceSysconConfigLEDForDriver(int device, SceUInt32 unk);
SceSysconForDriver_9CA6EB70
Version | NID |
---|---|
0.931.010 | not present |
1.000.071-3.740.011 | 0x9CA6EB70 |
On motherboards IRT-001 and older, it does nothing and returns 0, probably because missing hardware that could be a LED, else it sends 2 bytes using Syscon command 0x89E.
Used in ScePower#ScePowerForDriver_38415146. Related to LED.
int SceSysconForDriver_9CA6EB70(SceBool state);
sceSysconCtrlAccPowerForDriver
Version | NID |
---|---|
0.931-3.60 | 0x8D1D97E8 |
int sceSysconCtrlAccPowerForDriver(SceBool enable);
sceSysconCtrlUsbStatusForDriver
Version | NID |
---|---|
0.931-3.60 | 0x59DC5938 |
Sends 3 bytes to Syscon command 0x89A.
Related to SceUdcd and ScePower.
int sceSysconCtrlUsbStatusForDriver(SceUInt32 value);
sceSysconCtrlRMRPowerForDriver
Version | NID |
---|---|
0.931.010 | not present |
0.990.000-3.740.011 | 0x710A7CF0 |
Temp name was sceSysconCtrlMsPowerForDriver.
int sceSysconCtrlRMRPowerForDriver(int enable_power);
sceSysconCtrlDevKitUsbPowerForDriver
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.990.000-3.740.011 | 0xB1F88B11 |
This is a guessed name.
int sceSysconCtrlDevKitUsbPowerForDriver(SceBool enable);
SceSysconForDriver_3274A925
Version | NID |
---|---|
0.931.010-1.692.000 | not present |
1.800.071-3.740.011 | 0x3274A925 |
Temp name was sceSysconCtrlDolceUsbPowerForDriver.
This function enables/disables a USB bus related to either PS Vita IRS-1001 Wlan/Bt module USB or PS Vita 3G modem USB. This also affects PS TV USB host and maybe also PS TV ethernet.
Used in SceUsbEtherSmsc, SceUsbServ.
This function was maybe added to support IRS-1001 motherboard.
int SceSysconForDriver_3274A925(SceBool enable);
sceSysconJigOpenPortForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x44A173F5 |
int sceSysconJigOpenPortForDriver(void);
sceSysconJigClosePortForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x483FAE05 |
int sceSysconJigClosePortForDriver(void);
sceSysconJigSetConfigForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xD24BF916 |
int sceSysconJigSetConfigForDriver(SceUInt8 a1, SceUInt8 a2);
SceSysconForDriver_058941D7
Version | NID |
---|---|
0.990.000-3.740.011 | 0x058941D7 |
It is probably a "sceSysconCtrl...ForDriver" function.
Sends 2 bytes to Syscon using Syscon command 0xB0.
sceSysconCtrlHostOutputViaDongleForDriver
Version | NID |
---|---|
0.931.010 | not present |
0.990.000-3.740.011 | 0xDECCB2B4 |
Enables / disables Kermit UART0 output (logs) via Dongle (Jig).
Sends 2 bytes to Syscon using Syscon command 0xB2.
int sceSysconCtrlHostOutputViaDongleForDriver(SceBool enable);
SceSysconForDriver_33B5CDB3
Version | NID |
---|---|
0.996.090-3.740.011 | 0x33B5CDB3 |
Reads from Syscon using Syscon command 0xB3.
This function was probably added to support IRS-002 motherboard.
SceSysconForDriver_F6D4DDC4
Version | NID |
---|---|
0.931.010-1.692.000 | not present |
1.800.071-3.740.011 | 0xF6D4DDC4 |
Reads from Syscon using Syscon command 0xB4. It is probably the "get" equivalent of #SceSysconForDriver_00AE3AEB.
This function was added to support IRS-1001 motherboard.
SceSysconForDriver_00AE3AEB
Version | NID |
---|---|
0.931.010-1.692.000 | not present |
1.800.071-3.740.011 | 0x00AE3AEB |
It is probably a "sceSysconCtrl...ForDriver" function.
Sends 2 bytes to Syscon using Syscon command 0xB5. It is probably the "set" equivalent of #SceSysconForDriver_F6D4DDC4.
This function was added to support IRS-1001 motherboard.
SceSysconForDriver_0D300158
Version | NID |
---|---|
3.100.081-3.740.011 | 0x0D300158 |
It is probably a "sceSysconCtrl...ForDriver" function.
Sends 2 bytes to Syscon using Syscon command 0xB6. It is probably the "set" equivalent of #SceSysconForDriver_91EF4EC3.
This function was added to support DOL-1002 motherboard.
SceSysconForDriver_91EF4EC3
Version | NID |
---|---|
3.100.081-3.740.011 | 0x91EF4EC3 |
Reads from Syscon using Syscon command 0xB7. It is probably the "get" equivalent of #SceSysconForDriver_0D300158.
This function was added to support DOL-1002 motherboard.
receive_pm_sm_jig_msg_from_syscon
Version | NID |
---|---|
0.931.010-3.740.011 | 0x3C80B529 |
int receive_pm_sm_jig_msg_from_syscon(SceUInt32 offset, SceSize size, void *buf);
send_pm_sm_jig_msg_to_syscon
Version | NID |
---|---|
0.931.010-3.740.011 | 0x7BFBA09E |
send_pm_sm_stop_to_syscon
Version | NID |
---|---|
0.931.010-3.740.011 | 0x933D813F |
Used just after send_pm_sm_jig_msg_to_syscon or when it fails before.
int send_pm_sm_stop_to_syscon(int a1, int a2, int a3);
sceSysconIduModeSetForDriver
Version | NID |
---|---|
0.931.010-0.996.090 | not present |
1.030.071-3.740.011 | 0x956D07CB |
int sceSysconIduModeSetForDriver(void);
sceSysconIduModeClearForDriver
Version | NID |
---|---|
0.931.010-0.996.090 | not present |
1.030.071-3.740.011 | 0x34574496 |
int sceSysconIduModeClearForDriver(void);
sceSysconShowModeSetForDriver
Version | NID |
---|---|
0.931.010-1.50 | not present |
1.600.061-3.740.011 | 0x6D65B70F |
int sceSysconShowModeSetForDriver(void);
sceSysconShowModeClearForDriver
Version | NID |
---|---|
0.931.010-1.50 | not present |
1.600.061-3.740.011 | 0x8D7724C0 |
int sceSysconShowModeClearForDriver(void);
sceSysconSetAlarmCallbackForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x32418370 |
index 0 on FWs 0.931-0.940. index 0x24 on FW 3.60.
sceSysconSetWlanCallbackForDriver
Version | NID |
---|---|
0.931.010-0.996.090 | 0x4DEB8712 |
1.03-3.740.011 | not present |
This is a guessed name.
index 5 on FWs 0.931-0.940
sceSysconSetLowBatteryCallbackForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x3F0DB7C0 |
index 6 on FWs 0.931-0.940. index 0x10 on FW 3.60.
SceSysconForDriver_474A9EA7
Version | NID |
---|---|
0.931.010-3.740.011 | 0x474A9EA7 |
A good name might be sceSysconSet...CallbackForDriver.
index 0xC on FWs 0.931.010-0.940. index 6 on FW 3.600.011.
SceSysconForDriver_80D6E061
Version | NID |
---|---|
1.000.071-3.740.011 | 0x80D6E061 |
A good name might be sceSysconSetBatteryOnlineCallbackForDriver.
index 0x11 on FW 3.600.011.
Maybe related to Battery online status.
sceSysconSetLowBatteryInhibitUpdateRebootCallbackForDriver
Version | NID |
---|---|
0.931.010-3.18 | not present |
3.300.041-3.740.011 | 0x94678881 |
This is a guessed name.
index 0x1C on FW 3.600.011.
sceSysconSetLowBatteryInhibitUpdateDownloadCallbackForDriver
Version | NID |
---|---|
0.931.010-3.18 | not present |
3.300.041-3.740.011 | 0x7AA00C01 |
This is a guessed name.
index 0x1D on FW 3.600.011.
sceSysconSetThermalAlertCallbackForDriver
Version | NID |
---|---|
0.931.010-0.940 | not present |
1.000.071-3.740.011 | 0x773B8126 |
index 0x17 on FW 3.60
sceSysconSetMultiCnOtgCallbackForDriver
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.996.090-3.740.011 | 0xA26586B2 |
This is a guessed name.
Registers 2 callbacks (maybe constructor and destructor) for multi-connector OTG on PS Vita Fat.
index 0x25 on FW 3.60
int sceSysconSetMultiCnOtgCallbackForDriver(void *cb_0, void *cb_1);
sceSysconSetMiniUsbOtgCallbackForDriver
Version | NID |
---|---|
0.931.010-2.060.011 | not present |
2.100.081-3.740.011 | 0x67A4CB9F |
This is a guessed name.
Registers 2 callbacks (maybe constructor and destructor) for mini-USB OTG on PS Vita Slim.
index 0x26 on FW 3.60
int sceSysconSetMiniUsbOtgCallbackForDriver(void *cb_0, void *cb_1);
sceSysconSetAccCallbackForDriver
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.995.000-3.740.011 | 0x4A42712F |
This is a guessed name.
Registers 2 callbacks (maybe constructor and destructor) for accessory port.
index 0xF on FW 3.60
int sceSysconSetAccCallbackForDriver(void *cb_0, void *cb_1);
sceSysconUpdaterSetSegmentForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x9B00BC7F |
// segment_no: a 8bit value int sceSysconUpdaterSetSegmentForDriver(SceUInt32 segment_no);
sceSysconUpdaterLoadSegmentForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x356B9696 |
// pSegment: the encrypted segment to load // unk: maybe segment_no // size: usually 0x400 int sceSysconUpdaterLoadSegmentForDriver(void *segment, int unk, SceSize size);
sceSysconUpdaterLoadSegment2ForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x734544E4 |
// pSegment: the encrypted segment to load // unk: maybe segment_no // size: usually 0x400 int sceSysconUpdaterLoadSegment2ForDriver(void *segment, int unk, SceSize size);
sceSysconUpdaterCalcChecksumForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xD27C3D80 |
Computes checksum to use with #sceSysconUpdaterExecProgrammingForDriver. It does not call any Syscon command.
int sceSysconUpdaterCalcChecksumForDriver(void *data, SceSize size, int *checksum);
sceSysconUpdaterExecProgrammingForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x69AD76E4 |
Executes programming, i.e writes segments to Syscon Flash memory.
// checksum: value got from sceSysconUpdaterCalcChecksumForDriver int sceSysconUpdaterExecProgrammingForDriver(int checksum);
sceSysconUpdaterSetRunModeForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xB487C2FB |
On 3.60 Ernie firmware, only updater run mode 0x72BA seems to be actually useful. Modes 0x9A54 and 0x152E are recognized but just make the function return without doing anything. Mode 0xC5E7 is not recognized by Ernie firmware, although it is present on ARM side.
// mode: 0x72BA (0.931.010-3.740.011), 0x9A54 (0.931.010-3.740.011), 0x152E (3.600.011-3.740.011), 0x3665 (3.600.011-3.740.011), 0xC5E7 (3.600.011-3.740.011), int sceSysconUpdaterSetRunModeForDriver(int mode);
sceSysconUpdaterExecFinalizeForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xC7747A63 |
// digest: sha1 of decrypted concatenated segments, comes from Syscon Update package packet type 0x20 // size: usually 0x14 (sha1 size) int sceSysconUpdaterExecFinalizeForDriver(void *digest, SceSize size);
SceSysconForDriver_CBA836FF
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.996.090-3.740.011 | 0xCBA836FF |
Sends a 0x18-byte buffer to Syscon command 0x1185. This Syscon command 0x1185 seems to be unimplemented in recent Syscon firmwares: it does not do anything.
// size: must be 0x18 int SceSysconForDriver_CBA836FF(void *pBuf, SceSize size);
snvs_read
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.996.090-3.740.011 | 0xEBDF88B9 |
This is a guessed name.
Used in SceSblPostSsMgr to read data from SNVS with pm_sm command 8. Also used in SceSblUpdateMgr with update_service_sm commands 0xB0002 and 0xC0002.
// in_size: 0x10 // out_size: 0x30 int snvs_read(void *in_buf, SceSize in_size, void *out_buf, SceSize out_size);
snvs_write
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.996.090-3.740.011 | 0x63683B9B |
This is a guessed name.
Used in SceSblPostSsMgr to write data to SNVS with pm_sm command 8. Also used in SceSblUpdateMgr with update_service_sm commands 0xB0002 and 0xC0002.
// in_size: 0x30 // out_size: 0x10 int snvs_write(void *in_buf, SceSize in_size, void *out_buf, SceSize out_size);
syscon_update_command_0xD00002
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.996.090-3.740.011 | 0x4D03754A |
This is a guessed name.
Calls Syscon command 0xD0.
Used in SceSblUpdateMgr with update_service_sm command 0xD0002.
// in_buf: buffer that embeds input data, usually 0xD0002 command request + 8 // in_size: usually 0x28 // out_buf: buffer to receive result, usually 0xD0002 command request + 0x30 // out_size: usually 0x28 int syscon_update_command_0xD00002(void *in_buf, SceSize in_size, void *out_buf, SceSize out_size);
SceSysconForDriver_901D6CD4
Version | NID |
---|---|
0.931.010-3.740.011 | 0x901D6CD4 |
Sets a flag used internally by SceSyscon.
int SceSysconForDriver_901D6CD4(int enable);
sceSysconGetControlsInfoForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x145F59A4 |
This is a guessed name.
See Boot Controls Info.
Calls Syscon command 0x100.
int sceSysconGetControlsInfoForDriver(SceUInt32 *pCtrl);
SceSysconForDriver_76272CB9
Version | NID |
---|---|
0.931.010-1.692.000 | not present |
1.800.071-3.740.011 | 0x76272CB9 |
Gets a 4 byte value.
Calls Syscon command 0x120.
int SceSysconForDriver_76272CB9(SceUInt32 *unk);
SceSysconForDriver_D7BEFF8B
Version | NID |
---|---|
0.931.010-3.740.011 | 0xD7BEFF8B |
Gets Syscon power-on time in ticks of 0.5 second. Each second the counter automatically increases by 2.
Calls Syscon command 0x11.
Used in SceRtc to calculate the current time and date.
int SceSysconForDriver_D7BEFF8B(SceUInt32 *puiTime);
SceSysconForDriver_3168F3AF
Version | NID |
---|---|
0.931.010-3.740.011 | 0x3168F3AF |
Calls Syscon command 0x12.
It is an alarm timer. It must be initialized using Syscon command 0x82 via #SceSysconForDriver_51164951.
// FW 0.931.010 int SceSysconForDriver_3168F3AF(SceUInt32 *pResult); // FW 3.600.011-3.740.011 int SceSysconForDriver_3168F3AF(SceUInt32 *pResult, SceUInt32 *pResult2);
SceSysconForDriver_BA09F171
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.990.000-3.740.011 | 0xBA09F171 |
Calls Syscon command 0x13.
It might be related to alarm/timer.
int SceSysconForDriver_BA09F171(SceUInt32 *pResult, SceUInt32 *pResult2);
SceSysconForDriver_9B6A6F64
Version | NID |
---|---|
0.931-3.60 | 0x9B6A6F64 |
Calls Syscon command 0x81.
Sets current Syscon power on time in ticks of 0.5 second. The set value can be get with #SceSysconForDriver_D7BEFF8B.
Used in SceRtc. Set to 0 just before setting Current Tick, to reset syscon power on time.
int SceSysconForDriver_9B6A6F64(SceUInt32 time);
SceSysconForDriver_51164951
Version | NID |
---|---|
0.931.010-3.740.011 | 0x51164951 |
Calls Syscon command 0x82. On Syscon version < 0x90907, 4 bytes are sent to Syscon, whilst on Syscon version >= 0x90907, 5 bytes are sent to Syscon.
Used in SceRtc#sceRtcSetAlarmTickForDriver.
The set value can be get with #SceSysconForDriver_3168F3AF.
// a1: seen value: 0xffffffff during Syscon Init // a2: some 8-bit flag, seen value: 0 during Syscon Init // FW 0.931.010 int SceSysconForDriver_51164951(int a1); // FW 3.600.011-3.740.011 int SceSysconForDriver_51164951(int a1, int a2);
SceSysconForDriver_373ECF8A
Version | NID |
---|---|
0.931.010 | not present |
0.990.000-3.740.011 | 0x373ECF8A |
Calls Syscon command 0x83. Sends 3 bytes to Syscon. Used only if Hardware Info indicates that the motherboard is not IRT-001 or IRT-002 or type 0x10 (maybe named IRS-001) and if console is not in manufacturing mode.
int SceSysconForDriver_373ECF8A(SceUInt32 unk);
SceSysconForDriver_2659535C
Version | NID |
---|---|
0.931.010 | not present |
0.990.000-3.740.011 | 0x2659535C |
Calls Syscon command 0x84. Sends 1 byte to Syscon: 0.
int SceSysconForDriver_2659535C(void);
SceSysconForDriver_4295D497
Version | NID |
---|---|
0.931.010 | not present |
0.990.000-3.740.011 | 0x4295D497 |
Calls Syscon command 0x85. Sends 1 byte to Syscon: 0.
int SceSysconForDriver_4295D497(void);
SceSysconForDriver_253CC522
Version | NID |
---|---|
0.931.010 | not present |
2.100.081-3.740.011 | 0x253CC522 |
Calls Syscon command 0x807. Gets 2 bytes from Syscon.
On DevKit, it returns 0x8025023F. Maybe limited by model: PS TV? PS Vita Slim?.
int SceSysconForDriver_253CC522(SceUInt16 *pResult);
SceSysconForDriver_175CE5A1
Version | NID |
---|---|
0.931.010-3.740.011 | 0x175CE5A1 |
Calls Syscon command 0x883. Gets 8 bytes from Syscon.
// pDst: pointer to a buffer of at least 8 bytes int SceSysconForDriver_175CE5A1(void *pDst);
sceSysconCtrlDeviceResetForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x40FF3898 |
Sends 2 bytes to Syscon command 0x88F.
0xC/0 : Touch Front or Back device
0xC/1 : Touch Front or Back device
int sceSysconCtrlDeviceResetForDriver(SceUInt8 a1, SceUInt8 a2);
SceSysconForDriver_285594F8
Version | NID |
---|---|
0.931.010-3.740.011 | 0x285594F8 |
Sends 2 bytes to Syscon command 0x890.
int SceSysconForDriver_285594F8(SceUInt16 value);
sceSysconCtrlLEDForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x04EC7579 |
#define STATE_ON 1 #define STATE_OFF 0 #define DEVICE_UNK 0x40 // maybe PS button or CP power LED or maybe color (blue) int sceSysconCtrlLEDForDriver(SceUInt16 device, SceBool state);
SceSysconForDriver_596B17B7
Version | NID |
---|---|
0.931.010-3.740.011 | 0x596B17B7 |
Sends 2 bytes to Syscon command 0x892. Related to Battery. Maybe enables/disables battery charging.
Used in ScePower's module_start.
int SceSysconForDriver_596B17B7(SceBool enable);
SceSysconForDriver_2A4B0437
Version | NID |
---|---|
0.931.010-3.740.011 | 0x2A4B0437 |
Sends 3 bytes to Syscon command 0x893. Related to Battery. Maybe enables/disables battery charging.
Used in ScePower's module_start.
// a1: ex: 0, 1 // a2: ex: 0, 1 // FW 0.931.010 int SceSysconForDriver_2A4B0437(SceUInt32 a1); // FW 3.600.011-3.740.011 int SceSysconForDriver_2A4B0437(SceUInt32 a1, SceUInt32 a2);
SceSysconForDriver_5CDDA14D
Version | NID |
---|---|
0.931.010-3.740.011 | 0x5CDDA14D |
If Syscon version < 0x80001, it does nothing and returns 0, else it sends 2 bytes to Syscon command 0x899.
Related to SceHpremote. Maybe enables/disables Jack power.
Used in ScePower.
int SceSysconForDriver_5CDDA14D(SceUInt32 value);
SceSysconForDriver_A2FE9BF9
Version | NID |
---|---|
0.931.010-3.740.011 | 0xA2FE9BF9 |
Gets information related to battery charge status, or USB power connection. See also Ernie#CMD_0x0800.
Used in ScePower's module_start.
int SceSysconForDriver_A2FE9BF9(void *pResult);
sceSysconGetBatteryTempForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x9070F139 |
If Syscon version <= 0x70503, it calls Syscon command 0x8A0, else Syscon command 0x981.
Used in ScePower's module_start.
int sceSysconGetBatteryTempForDriver(int *pResult);
sceSysconGetBatteryRemainCapacityForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xC562AF3A |
Only used in ScePower.
If Syscon version <= 0x70503, it calls Syscon command 0x802, else Syscon command 0x900.
int sceSysconGetBatteryRemainCapacityForDriver(SceUInt32 *pResult);
sceSysconGetBatteryVoltForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x03F11220 |
If Syscon version <= 0x70503, it calls Syscon command 0x803, else Syscon command 0x901.
Used in ScePower.
int sceSysconGetBatteryVoltForDriver(SceUInt32 *pResult);
sceSysconGetBatteryLifePercentForDriver
Version | NID |
---|---|
0.931.010-1.06 | not present |
1.500.151-3.740.011 | 0xAD0A8275 |
Used in ScePower.
int sceSysconGetBatteryLifePercentForDriver(SceUInt32 *pResult);
SceSysconForDriver_00A65FC1
Version | NID |
---|---|
0.931.010-3.740.011 | 0x00A65FC1 |
If Syscon version <= 0x70503, it calls Syscon command 0x8A1, else Syscon command 0x982.
Used in ScePower.
int SceSysconForDriver_00A65FC1(int *pResult);
sceSysconGetBatteryElecForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x0826BA07 |
If Syscon version <= 0x70503, it calls Syscon command 0x8A2, else Syscon command 0x983.
Used in ScePower.
int sceSysconGetBatteryElecForDriver(SceUInt16 *pResult);
sceSysconGetBatteryLifeTimeForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xB841C141 |
If Syscon version <= 0x70503, it calls Syscon command 0x8A3, else Syscon command 0x984.
Used in ScePower.
int sceSysconGetBatteryLifeTimeForDriver(SceUInt16 *pResult);
sceSysconGetBatterySOHForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x91D3B7A3 |
If Syscon version <= 0x70503, it calls Syscon command 0x8A4, else Syscon command 0x985.
Used in ScePower.
int sceSysconGetBatterySOHForDriver(void *pResult);
SceSysconForDriver_FDB3AE9D
Version | NID |
---|---|
0.931.010-3.740.011 | 0xFDB3AE9D |
Gets 0x10 bytes from Syscon command 0x183.
int SceSysconForDriver_FDB3AE9D(int *pResult);
SceSysconForDriver_C3504ADE
Version | NID |
---|---|
0.931.010-3.740.011 | 0xC3504ADE |
Gets a global variable.
int SceSysconForDriver_C3504ADE(void);
SceSysconForDriver_B832B72C
Version | NID |
---|---|
0.931.010-3.740.011 | 0xB832B72C |
Gets a global variable.
int SceSysconForDriver_B832B72C(void);
SceSysconForDriver_86BAAF7D
Version | NID |
---|---|
0.931.010-3.740.011 | 0x86BAAF7D |
Returns a 8-bit global variable casted to 32-bit for convenience.
Used in SceRtc.
int SceSysconForDriver_86BAAF7D(void);
SceSysconForDriver_A57B5433
Version | NID |
---|---|
0.931.010-3.740.011 | 0xA57B5433 |
int SceSysconForDriver_A57B5433(void);
SceSysconForDriver_ACC7F71E
Version | NID |
---|---|
0.931.010-3.740.011 | 0xACC7F71E |
int SceSysconForDriver_ACC7F71E(void);
SceSysconForDriver_769F9AC4
Version | NID |
---|---|
0.931.010-3.740.011 | 0x769F9AC4 |
Returns a global variable initialized during SceSyscon initialization. Returns always SCE_TRUE (1) on PS TV.
int SceSysconForDriver_769F9AC4(void);
SceSysconForDriver_4BC63A40
Version | NID |
---|---|
0.931.010-3.740.011 | 0x4BC63A40 |
int SceSysconForDriver_4BC63A40(void);
SceSysconForDriver_99A254A9
Version | NID |
---|---|
0.931.010-3.740.011 | 0x99A254A9 |
int SceSysconForDriver_99A254A9(void);
SceSysconForDriver_9A4F4B7C
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.996.090-3.740.011 | 0x9A4F4B7C |
int SceSysconForDriver_9A4F4B7C(void);
SceSysconForDriver_92D2C6A4
Version | NID |
---|---|
0.931.010-2.060.011 | not present |
2.100.081-3.740.011 | 0x92D2C6A4 |
int SceSysconForDriver_92D2C6A4(void);
SceSysconForDriver_B9EA2FA8
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.995.000-3.740.011 | 0xB9EA2FA8 |
Only used in SceUsbServ.
int SceSysconForDriver_B9EA2FA8(void);
SceSysconForDriver_D7F5A797
Version | NID |
---|---|
0.931.010-3.740.011 | 0xD7F5A797 |
Only used in ScePower.
int SceSysconForDriver_D7F5A797(void);
SceSysconForDriver_29CF4335
Version | NID |
---|---|
0.931.010-3.740.011 | 0x29CF4335 |
int SceSysconForDriver_29CF4335(void);
SceSysconForDriver_32B2DB3D
Version | NID |
---|---|
0.931.010-3.740.011 | 0x32B2DB3D |
int SceSysconForDriver_32B2DB3D(void);
SceSysconForDriver_142D5E82
Version | NID |
---|---|
0.931.010-3.740.011 | 0x142D5E82 |
int SceSysconForDriver_142D5E82(void);
SceSysconForDriver_490C5548
Version | NID |
---|---|
0.931-3.60 | 0x490C5548 |
int SceSysconForDriver_490C5548(void);
SceSysconForDriver_012B57B3
Version | NID |
---|---|
0.931 | not present |
0.940-3.60 | 0x012B57B3 |
int SceSysconForDriver_012B57B3(void);
SceSysconForDriver_27758A64
Version | NID |
---|---|
0.931.010-0.940 | not present |
1.000.071-3.740.011 | 0x27758A64 |
A good name might be sceSysconIsBatteryOnlineForDriver, deriving from #sceSysconIsPowerOnlineForDriver.
Used in ScePower#scePowerGetBatteryRemainLevelForDriver, ScePower#scePowerIsLowBatteryForDriver, ScePower's module_start.
SceBool SceSysconForDriver_27758A64(void);
SceSysconForDriver_4A184B7C
Version | NID |
---|---|
0.931-0.940 | not present |
3.60 | 0x4A184B7C |
Related to battery, called by ScePower#ScePowerForDriver_627A89C6.
int SceSysconForDriver_4A184B7C(void);
SceSysconForDriver_ACEE1C70
Version | NID |
---|---|
0.931.010-0.940 | not present |
0.996.090-3.740.011 | 0xACEE1C70 |
Related to battery. Only used when battery is working.
Used in ScePower#ScePowerForDriver_0D56C601.
int SceSysconForDriver_ACEE1C70(void);
SceSysconForDriver_03C50DC3
Version | NID |
---|---|
0.931.010-0.940 | not present |
1.000.071-3.740.011 | 0x03C50DC3 |
int SceSysconForDriver_03C50DC3(void);
SceSysconForDriver_BFDA5590
Version | NID |
---|---|
0.931.010-2.060.011 | not present |
2.100.081-3.740.011 | 0xBFDA5590 |
int SceSysconForDriver_BFDA5590(void);
SceSysconForDriver_63B14156
Version | NID |
---|---|
0.931.010-0.940 | not present |
1.000.071-3.740.011 | 0x63B14156 |
int SceSysconForDriver_63B14156(void);
SceSysconForDriver_50CAE242
Version | NID |
---|---|
0.931.010-0.940 | not present |
1.000.071-3.740.011 | 0x50CAE242 |
int SceSysconForDriver_50CAE242(void);
SceSysconForDriver_9F4042F8
Version | NID |
---|---|
0.931.010-1.692.00 | not present |
1.800.071-3.740.011 | 0x9F4042F8 |
int SceSysconForDriver_9F4042F8(void);
SceSysconForDriver_C50568E9
Version | NID |
---|---|
0.931.010-3.01 | not present |
3.100.081-3.740.011 | 0xC50568E9 |
This function was added to support DOL-1002 motherboard.
int SceSysconForDriver_C50568E9(void);
sceSysconIsLowBatteryInhibitUpdateRebootForDriver
Version | NID |
---|---|
0.931.010-3.18 | not present |
3.300.041-3.740.011 | 0x1A0C140F |
This function was added along with ScePower#scePowerIsLowBatteryInhibitUpdateReboot.
Used in ScePower#scePowerIsLowBatteryInhibitUpdateReboot.
int sceSysconIsLowBatteryInhibitUpdateRebootForDriver(void);
sceSysconIsLowBatteryInhibitUpdateDownloadForDriver
Version | NID |
---|---|
0.931.010-3.18 | not present |
3.300.041-3.740.011 | 0x1E3130EE |
This function was added along with ScePower#scePowerIsLowBatteryInhibitUpdateDownload.
Used in ScePower#scePowerIsLowBatteryInhibitUpdateDownload.
int sceSysconIsLowBatteryInhibitUpdateDownloadForDriver(void);
sceSysconGetBatteryRemainLevelForDriver
Version | NID |
---|---|
0.931.010-3.18 | not present |
3.300.041-3.740.011 | 0x26F9D729 |
Only used if Syscon version >= 0x1040105.
This function was added along with ScePower#scePowerGetBatteryRemainLevelForDriver.
Used in ScePower#scePowerGetBatteryRemainLevelForDriver.
int sceSysconGetBatteryRemainLevelForDriver(SceUInt8 *pResult1, SceUInt8 *pResult2);
SceSysconForDriver_C0F215B7
Version | NID |
---|---|
0.931.010-0.990.000 | not present |
0.996.090-3.740.011 | 0xC0F215B7 |
Gets a global variable (one byte) updated by #sceSysconCmdSyncForDriver.
int SceSysconForDriver_C0F215B7(void);
SceSysconForDriver_D6F6D472
Version | NID |
---|---|
0.931.010-2.060.011 | not present |
2.100.081-3.740.011 | 0xD6F6D472 |
Gets electric information (maybe intensity) of the device connected to USB OTG on PS Vita Slim. It should be studied if PS TV supports this function and if this function was initially targetting PS TV.
Returns a global variable updated by #sceSysconCmdSyncForDriver, obtained using Syscon command 0x130.
int SceSysconForDriver_D6F6D472(int *pInfo);
SceSysconForDriver_F99BC858
Version | NID |
---|---|
0.931.010-3.01 | not present |
3.100.081-3.740.011 | 0xF99BC858 |
Calls syscon command 0x131.
This function was maybe added to support DOL-1002 motherboard.
SceSysconForDriver_E7893732
Version | NID |
---|---|
0.931.010-2.060.011 | not present |
2.100.081-3.740.011 | 0xE7893732 |
Calls Syscon command 0x1B0. Related to UART or JIG on PS Vita Slim or PS TV.
// value holds 3 useful bytes and 1 byte not sent to syscon int SceSysconForDriver_E7893732(int value);
sceSysconGetElmoVersionForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0xA039B563 |
This is a guessed name.
Calls Syscon command 0x880.
int sceSysconGetElmoVersionForDriver(SceUInt32 *pResult);
sceSysconGetCookieVersionForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0x9BF78047 |
This is a guessed name.
Calls Syscon command 0x881.
int sceSysconGetCookieVersionForDriver(SceUInt32 *pResult);
sceSysconReadElmoRegForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0x5BF765BB |
This is a guessed name.
Calls Syscon command 0x895.
sceSysconWriteElmoRegForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0xCCC71C28 |
This is a guessed name.
Calls Syscon command 0x896.
sceSysconReadCookieRegForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0x95975DD1 |
This is a guessed name.
Calls Syscon command 0x897. Probably reads data from Cookie.
sceSysconWriteCookieRegForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0xF39300D3 |
This is a guessed name.
Calls Syscon command 0x898. Probably writes data to Cookie.
Returns error 0x80250001 if offset is greater than 0xFF.
// offset: 0-0xFF int sceSysconWriteCookieRegForDriver(SceUInt32 offset, SceUInt16 data);
Commands
It seems like the command format is as follows: (direction << 8) | cmd_id
, where direction = 1
means write to syscon, and direction = 0
means read from syscon.
Command | Return size (without considering the 2 bytes rx.size and rx.error_code) | Functions NIDs | Description |
---|---|---|---|
0x0 | 0x0 | 0x0D0B6D25 | |
0x1 | 0x4 | module_start | sceSysconGetBaryonVersionForDriver. Used during SysconInit. |
0x2 | 0xC | module_start | sceSysconGetBaryonTimestampForDriver. Returns 12-byte string followed by at least 2-byte memory leak. Used during SysconInit. |
0x3 | 0x4 | module_start | sceSysconGetSleepFactor. Used during SysconInit. |
0x4 | 0x4 | ||
0x5 | 0x4 | 0xCBD6D8BC, module_start | sceSysconGetHardwareInfoForDriver |
0x6 | 0x10 | 0x965C68C3, module_start | sceSysconGetHardwareInfo2ForDriver. Get "Hardware flags". See KBL Param#Hardware flags. |
0x10 | 0x2 | 0xCF5B2F2F | sceSysconGetWakeupFactorForDriver |
0x11 | 0x4 | 0xD7BEFF8B | ?? |
0x12 | 0x5 or 0x6 | 0x3168F3AF | ?? |
0x13 | 0x2 | 0xBA09F171 | ?? |
0x14 | 0x1 | 0x93075DD1 | ?? |
0x15 | 0x4 | 0x3E09A1F4 | sceSysconGetManufacturesStatusForDriver |
0x80 | 0x0 | module_start | ?? Used during SysconInit. |
0x81 | ? | 0x9B6A6F64 | |
0x82 | ? | 0x51164951 | |
0x83 | ? | 0x373ECF8A | Sends 3 bytes to Syscon. |
0x84 | ? | 0x2659535C | Sends 1 byte to Syscon. |
0x85 | ? | 0x4295D497 | |
0x86 | 8 | 0x701535FC | sceSysconGetLogInfoForDriver |
0x87 | 0 | 0x4E55CF5E | sceSysconLogStartForDriver. Sends 1 byte to Syscon: 0. |
0x88 | 0x18 | 0x487D97F3 | sceSysconLogReadDataForDriver. Sends 2 bytes to Syscon: offset. |
0x89 | 0 | 0x9C0B1E61 | sceSysconLogStartWaitingForDriver. Sends 1 byte to Syscon: 0. |
0x90 | ?0x3B? | 0x299B1CE7 | sceSysconReadScratchPadForDriver |
0x91 | ?0x3B? | 0xE26488B9 | sceSysconWriteScratchPadForDriver |
0xA0 | ?0x10 or 0x28? | second_loader | See Ernie Secure. |
0xB0 | 0 | 0x058941D7 | Probably a control command. Sends 2 bytes to Syscon. |
0xB1 | 0 | 0xDF8C6D2D | sceSysconCtrlWirelessPowerDownForDriver |
0xB2 | 0 | 0xDECCB2B4 | sceSysconCtrlHostOutputViaDongleForDriver. Sends 2 bytes to Syscon. |
0xB3 | at least 1 | 0x33B5CDB3 | ?? |
0xB4 | at least 1 | 0xF6D4DDC4 | ?? |
0xB5 | 0 | 0x00AE3AEB | Probably a control command. Sends 2 bytes to Syscon. |
0xB6 | 0 | 0x0D300158 | Probably a control command. Sends 2 bytes to Syscon. |
0xB7 | at least 1 | 0x91EF4EC3 | ?? |
0xC0 | ?0x3E? | ||
0xC1 | 0 | 0x94AB13CC | sceSysconErnieShutdownForDriver. Sends 2 bytes to Syscon. |
0xD0 | ?0x2A or 0x28? | ||
0xD1 | ?0x2? | ||
0xD2 | ?0x30? | second_loader, SNVS functions | See Ernie Secure. SNVS RW. |
0xD3 | ?0x12? | ||
0x100 | 0x4 | 0x145F59A4 | sceSysconGetControlsInfoForDriver. Used in SceCtrlVblankHandler in SceCtrl. |
0x101 | 0x8 | sceSysconGetControlsInfo2ForDriver. Used in SceCtrlVblankHandler in SceCtrl. Uses Ernie version and Ernie DL version. | |
0x102 | 0xC | ||
0x103 | 0x4 | 0x1503D6A0 | sceSysconGetMultiCnInfoForDriver |
0x104 | 0xC | sceSysconGetControlsInfo3ForDriver. Used in SceCtrlVblankHandler in SceCtrl. | |
0x105 | ? | Uses string "PS" then "TUV". | |
0x106 | ? | ||
0x107 | ? | ||
0x108 | ? | ||
0x109 | ? | ||
0x110 | ? | ||
0x120 | ? | 0x76272CB9 | ?? |
0x121 | ? | ||
0x130 | 0x4 | module_start, 0xD6F6D472 | Get USB OTG device electric info (maybe intensity). Used during SysconInit. |
0x131 | ?0x1? (read) | 0xF99BC858 | ?? Added on a FW > 2.50 and <= 3.100.081. |
0x140 | ? | ||
0x141 | ? | ||
0x142 | ? | ||
0x143 | ? | ||
0x144 | ? | ||
0x145 | ? | ||
0x146 | ? | ||
0x147 | ? | ||
0x148 | ? | ||
0x150 | ? | ||
0x151 | ? | ||
0x152 | ? | ||
0x153 | ? | ||
0x154 | ? | ||
0x155 | ? | ||
0x156 | ? | ||
0x157 | ? | ||
0x160 | ? | ||
0x161 | ? | ||
0x162 | ? | ||
0x163 | ? | ||
0x168 | ? | ||
0x170 | ? | ||
0x171 | ? | ||
0x172 | ? | ||
0x180 | ? | Set analog sampling. Sends 2 bytes to Syscon: 0 to disable, 1 to enable on Syscon version is < 0x90202, 3 to enable on Syscon version is >= 0x90202. Used in SceCtrlVblankHandler in SceCtrl. | |
0x181 | 0 | 0xCFCEE733 | Sends 2 bytes to Syscon. |
0x182 | ? | ||
0x183 | 0x10 | 0xFDB3AE9D | Gets some info. |
0x184 | ? | ||
0x185 | ? | ||
0x186 | ? | ||
0x187 | ? | ||
0x188 | ? | ||
0x189 | ? | ||
0x18A | ? | ||
0x18B | ? | ||
0x18C | ? | ||
0x18D | ? | ||
0x18E | ? | ||
0x18F | ? | ||
0x190 | 0 | 0x8AAB6308 | sceSysconSetMultiCnPortForDriver. Sends 3 bytes to Syscon. |
0x191 | ? | ||
0x192 | ? | ||
0x1A0 | ? | ||
0x1A1 | ? | ||
0x1B0 | 0 | 0xE7893732 | Sends 3 bytes to Syscon. |
0x1B2 | ? | ||
0x1C0 | ? | ||
0x1C1 | ? | ||
0x1C2 | ? | ||
0x1C3 | ? | ||
0x1C4 | ? | ||
0x1D0 | ? | ||
0x1D1 | ? | ||
0x1D2 | ? | ||
0x1D3 | ? | ||
0x1D4 | ? | ||
0x1D5 | ? | ||
0x1E0 | ? | ||
0x1E1 | ? | ||
0x1E2 | ? | ||
0x1E3 | ? | ||
0x300 | ? | ||
0x301 | ? | ||
0x303 | ? | ||
0x380 | at least 1 | 0xF492E69E | sceSysconGetTouchpanelDeviceInfoForDriver |
0x38A | at least 1 | 0xA1F1B973 | ?? |
0x390 | at least 1 | 0x030D447F | sceSysconGetTouchpanelDeviceInfo2ForDriver |
0x392 | ? | 0x48ED8981, 060E55C1 | |
0x393 | ? | 0x9A28BEEF, 0x8874EF45 | Used in SceSblUpdateMgr |
0x3A9 | 0 | 0x010F95D9 | Sends 1 byte to Syscon. |
0x3AB | ? | 0x357CC9D9 | |
0x3AC | ? | 0x3664E2C0 | ?? |
0x3AF | ? | 0xB8F4F4E3 | |
0x3B9 | ? | 0x42E599AC | |
0x3BB | ? | 0xCCA56A16 | |
0x3BC | ? | 0x2E6D97CD | ?? |
0x3BF | ? | 0x240A604E | |
0x3C2 | ? | 0x5946B29B, 0x10327C64 | Used in SceSblUpdateMgr |
0x480 | ? | 0xD01E64FC | ?? |
0x481 | ? | 0x9A7858B6 | ?? |
0x800 | ?0x4? | 0xA2FE9BF9 | SceSysconForDriver_A2FE9BF9. ScePower related. |
0x801 | 0x0 | ?? | |
0x802 | ?0x4? | 0xC562AF3A | sceSysconGetBatteryRemainCapacityForDriver. Replaced by Syscon command 0x900 on Syscon version > 0x70503. |
0x803 | 0x4 | 0x03F11220 | sceSysconGetBatteryVoltForDriver. Replaced by Syscon command 0x901 on Syscon version > 0x70503. |
0x804 | ? | ?? | |
0x805 | ?0x0? | 0xEF810687 | sceSysconGetUsbDetStatusForDriver |
0x806 | ?0x1? | 0xE7F5D3DC | Reboots PS Vita? |
0x807 | 0x2 | 0x253CC522 | ?? |
0x820 | 0x0 | 0x727F985A | sceSysconCtrlDolceLEDForDriver. PSTV LED on |
0x821 | 0x0 | 0x727F985A | sceSysconCtrlDolceLEDForDriver. PSTV LED blink slow |
0x822 | 0x0 | 0x727F985A | sceSysconCtrlDolceLEDForDriver. PSTV LED blink fast |
0x840 | ?0x1? | 0x4FEC564C | sceSysconGetManualChargeModeForDriver |
0x841 | ?0x1? | 0x3C3B949C | ?? |
0x842 | ?0x1? | 0x1C29C00E | ?? |
0x843 | ?0x1? | 0x730E4725 | ?? |
0x880 | 0x4 | 0xA039B563 | sceSysconGetElmoVersionForDriver |
0x881 | ? | 0x9BF78047 | sceSysconGetCookieVersionForDriver |
0x882 | 0x6 | 0x68E0031E | sceSysconGetBatteryVersionForDriver. Replaced by Syscon command 0x980 on Syscon version > 0x70503. |
0x883 | 0x8 | 0x175CE5A1 | ?? |
0x884 | ? | 0x3FDD29D6 | ?? |
0x885 | ? | 0x79E6DD8B | ?? |
0x886 | ?0x2? | 0x62155962 | sceSysconCtrlHdmiCecPowerForDriver |
0x887 | ? | 0x063425AE | maybe sceSysconCtrlMotionSensorPowerForDriver |
0x888 | ?0x2? | 0xBE1ADE4F | sceSysconCtrlSdPowerForDriver |
0x889 | ?0x2? | 0x8D1D97E8 | sceSysconCtrlAccPowerForDriver |
0x88A | ? | 0x4FBDA504, 0xA2E85DB9 | sceSysconCtrlWirelessPowerForDriver, sceSysconCtrlWirelessPower2ForDriver |
0x88B | ? | 0x5A614349 | ?? |
0x88C | ? | 0xB872E904 | ?? |
0x88D | ? | 0xDD16ABD9 | ?? |
0x88E | ?0x2? | 0x7F198FA2 | Maybe related to clock frequency. See Ernie#CMD_0x088E. |
0x88F | ?0x2? | 0x40FF3898 | sceSysconCtrlDeviceResetForDriver. ?UsbEtherSmsc and WlanBt related? |
0x890 | ? | 0x285594F8 | ?? |
0x891 | ?0x2? | 0x04EC7579 | sceSysconCtrlLEDForDriver |
0x892 | ?0? | 0x596B17B7 | SceSysconForDriver_596B17B7. ScePower related. |
0x893 | ?0? | 0x2A4B0437 | SceSysconForDriver_2A4B0437. ScePower related. |
0x895 | ? | 0x5BF765BB | sceSysconReadElmoRegForDriver |
0x896 | ? | 0xCCC71C28 | sceSysconWriteElmoRegForDriver |
0x897 | ? | 0x95975DD1 | sceSysconReadCookieRegForDriver |
0x898 | ? | 0xF39300D3 | sceSysconWriteCookieRegForDriver |
0x899 | ?0? | 0x5CDDA14D | ?Guessed name: sceSysconCtrlHpremoteForDriver? SceHpremote related. |
0x89A | ?0? | 0x59DC5938 | sceSysconCtrlUsbStatusForDriver |
0x89B | ?0x2? | 0x710A7CF0 | sceSysconCtrlRMRPowerForDriver |
0x89C | ?0x2? | 0xB1F88B11 | sceSysconCtrlDevKitUsbPowerForDriver. SceUsbServ related. |
0x89D | ? | 0x6F586D1A | sceSysconConfigLEDForDriver |
0x89E | ? | 0x9CA6EB70 | ScePower related |
0x89F | ? | 0xCB41B531 | ?? |
0x8A0 | ?0x4? | 0x9070F139 | sceSysconGetBatteryTempForDriver. Replaced by Syscon command 0x981 on Syscon version > 0x70503. |
0x8A1 | ?0x3B or 0x4? | 0x00A65FC1 | Replaced by Syscon command 0x982 on Syscon version > 0x70503. ScePower related. |
0x8A2 | 0x2 | 0x0826BA07 | sceSysconGetBatteryElecForDriver. Replaced by Syscon command 0x983 on Syscon version > 0x70503. |
0x8A3 | ?0x4? | 0xB841C141 | sceSysconGetBatteryLifeTimeForDriver. Replaced by Syscon command 0x984 on Syscon version > 0x70503. |
0x8A4 | ?0x4? | 0x91D3B7A3 | sceSysconGetBatterySOHForDriver. Replaced by Syscon command 0x985 on Syscon version > 0x70503. |
0x8B0 | ? | 0x2CEF078E / 0x4946538A | sceSysconBatteryStartBLModeForDriver. Replaced by Syscon command 0x9B0 on Syscon version > 0x70503. Since FW 0.940, it is also sceSysconEnableHibernateIOForDriver independently of Syscon version. |
0x8B1 | ? | 0xE4AE7852 | sceSysconBatteryStopBLModeForDriver. Replaced by Syscon command 0x9B1 on Syscon version > 0x70503. |
0x8B2 | ? | 0xE4F29744 | sceSysconBatterySetBLCommandForDriver. Replaced by Syscon command 0x9B2 on Syscon version > 0x70503. |
0x8B3 | ? | 0x74B2AB55 | sceSysconBatteryExecBLCommandForDriver. Replaced by Syscon command 0x9B3 on Syscon version > 0x70503. |
0x8B4 | ? | 0x448DAFF1 | sceSysconBatteryReadBLCommandForDriver. Replaced by Syscon command 0x9B4 on Syscon version > 0x70503. |
0x8C0 | ? | 0xC6A2C9EF | sceSysconCtrlManualChargeModeForDriver |
0x8C5 | ?0x2 or 0? | 0x3274A925 | ??. SceUsbServ and SceUsbEtherSmsc related. |
0x8C6 | ? | 0xDFB024C4 | SceSblUpdateMgr related |
0x8C7 | ? | 0x87FF8041 | ?? |
0x8C8 | ? | 0x7BFA95DA | ?? |
0x8C9 | ? | 0x451C1662 | ?? |
0x8CA | ? | 0x79074DE4 | ?? |
0x8CB | ? | 0x7D25F6D2 | ?? |
0x8CC | ? | 0xD2ADABCA | ?? |
0x8CE | 0x10 | 0x3B354824 | sceSysconGetTemperatureLog |
0x8CF | 0 | 0x3843D657 | sceSysconClearTemperatureLog. Sends 2 bytes to syscon. |
0x8D0 | ? | 0xF87679EE | ?? |
0x900 | ?0x4? | 0xC562AF3A | sceSysconGetBatteryRemainCapacityForDriver. Replaces Syscon command 0x802 on Syscon version > 0x70503. |
0x901 | 0x4 | 0x03F11220 | sceSysconGetBatteryVoltForDriver. Replaces Syscon command 0x803 on Syscon version > 0x70503. |
0x902 | ?0x4? | 0xAD0A8275 | sceSysconGetBatteryLifePercentForDriver |
0x903 | 0x2 | 0x26F9D729 | sceSysconGetBatteryRemainLevelForDriver. Added on a FW higher than 2.50 and Syscon version >= 0x1040105. |
0x904 | ? | 0x9ADC9936 | sceSysconGetBatteryCalibDataForDriver |
0x910 | ? | ||
0x911 | ? | ||
0x912 | ? | ||
0x913 | ? | ||
0x914 | ? | ||
0x915 | ? | ||
0x916 | ? | ||
0x917 | ? | ||
0x932 | ? | ||
0x944 | ? | ||
0x945 | ? | ||
0x952 | ? | Uses string "PC" then "TUV". | |
0x953 | ? | ||
0x954 | ? | ||
0x961 | ? | ||
0x962 | ? | ||
0x963 | ? | ||
0x964 | ? | ||
0x965 | ? | ||
0x966 | ? | ||
0x967 | ? | ||
0x968 | ? | ||
0x969 | ? | ||
0x980 | 0x6 | 0x68E0031E | sceSysconGetBatteryVersionForDriver. Replaces Syscon command 0x882 on Syscon version > 0x70503. |
0x981 | ?0x4? | 0x9070F139 | sceSysconGetBatteryTempForDriver. Replaces Syscon command 0x8A0 on Syscon version > 0x70503. |
0x982 | ?0x4? | 0x00A65FC1 | Replaces Syscon command 0x8A1 on Syscon version > 0x70503. ScePower related. |
0x983 | 0x2 | 0x0826BA07 | sceSysconGetBatteryElecForDriver. Replaces Syscon command 0x8A2 on Syscon version > 0x70503. |
0x984 | ?0x4? | 0xB841C141 | sceSysconGetBatteryLifeTimeForDriver. Replaces Syscon command 0x8A3 on Syscon version > 0x70503. |
0x985 | ?0x4? | 0x91D3B7A3 | sceSysconGetBatterySOHForDriver. Replaces Syscon command 0x8A4 on Syscon version > 0x70503. |
0x989 | ? | 0x87DA378D | sceSysconBatterySWResetForDriver |
0x98A | ?0x4? | 0xF93CF833 | sceSysconGetBatteryFullCapacityForDriver |
0x98B | ? | 0xE1885F68 | ?? |
0x98C | ?0x4? | 0xCD73079D | sceSysconGetBatteryCycleCountForDriver |
0x9B0 | ? | 0x2CEF078E | sceSysconBatteryStartBLModeForDriver. Replaces Syscon command 0x8B0 on Syscon version > 0x70503. |
0x9B1 | ? | 0xE4AE7852 | sceSysconBatteryStopBLModeForDriver. Replaces Syscon command 0x8B1 on Syscon version > 0x70503. |
0x9B2 | ? | 0xE4F29744 | sceSysconBatterySetBLCommandForDriver. Replaces Syscon command 0x8B2 on Syscon version > 0x70503. |
0x9B3 | ? | 0x74B2AB55 | sceSysconBatteryExecBLCommandForDriver. Replaces Syscon command 0x8B3 on Syscon version > 0x70503. |
0x9B4 | ? | 0x448DAFF1 | sceSysconBatteryReadBLCommandForDriver. Replaces Syscon command 0x8B4 on Syscon version > 0x70503. |
0xA00 | 0x0 | ?? | |
0xA82 | ? | 0x7BAFE083 | ?? |
0x1080 | ?0x0 or 0x2? | 0x81A6060D | sceSysconNvsSetRunModeForDriver |
0x1081 | ?0x0 or 0x2? | 0x2EC6D55D | sceSysconNvsSetUnkModeForDriver |
0x1082 | ? | 0xACAFA2B8 | sceSysconNvsReadDataForDriver |
0x1083 | ?0x2? | 0x10C9657A | sceSysconNvsWriteDataForDriver |
0x1100 | 0x4 | 0xD2F456DC | sceSysconGetErnieDLVersionForDriver |
0x1101 | 0x4 | ||
0x1180 | ? | 0x9B00BC7F | sceSysconUpdaterSetSegmentForDriver |
0x1181 | ? | 0x356B9696, 0x734544E4 | sceSysconUpdaterLoadSegmentForDriver, sceSysconUpdaterLoadSegment2ForDriver |
0x1182 | ? | 0x69AD76E4 | sceSysconUpdaterExecProgrammingForDriver |
0x1183 | ? | 0xB487C2FB | sceSysconUpdaterSetRunModeForDriver |
0x1184 | ? | 0xC7747A63 | sceSysconUpdaterExecFinalizeForDriver |
0x1185 | ? | 0xCBA836FF | SceSysconForDriver_CBA836FF |
0x1300 | 0x8 | ?? | |
0x1310 | 0x1 | 0x351946B0 | ?? |
0x1382 | ? | 0xA4968B8C | sceSysconBeginConfigstorageTransactionForDriver |
0x1383 | ? | 0xFCC3E8EE | sceSysconEndConfigstorageTransactionForDriver |
0x1384 | ? | 0x7B9B3617 | sceSysconCommitConfigstorageTransactionForDriver |
0x1385 | ? | 0x89C5CFD6 | sceSysconLoadConfigstorageScriptForDriver |
0x1386 (called from ARM Kernel but not implemented in Syscon FW) | ? | 0xCC6F90A8 | sceSysconVerifyConfigstorageScriptForDriver |
0x1392 | ? | 0xFD65FFCB | ?? |
0x1393 | ? | 0x02350352 | ?? |
0x1394 | ? | 0x7DE84CE3 | ?? |
0x2080 | ? | 0x44A173F5 | sceSysconJigOpenPortForDriver |
0x2081 | ? | 0x483FAE05 | sceSysconJigClosePortForDriver |
0x2082 | ? | 0xD24BF916 | sceSysconJigSetConfigForDriver |
0x2083 | ? | ||
0x2084 | ? | ||
0x2085 | ? |
Callbacks
All the following exports have this function prototype: int sceSysconSet*Callback(void (*func)(int enable, void *argp), void *argp);
.
Maybe we will find more same as on PSP: SilverSpring's PSP Syscon callbacks enum.
NID | Function | Description |
---|---|---|
0x129EA022 | ?? | ?? |
0x14730196 | ?? | ?? |
0x2D471528 | ?? | ??. Set by ScePower. Very similar to SYSCON_CB_LOW_BATTERY. |
0x32418370 | #sceSysconSetAlarmCallbackForDriver | SYSCON_CB_ALARM. Set by ScePower. |
0x3F0DB7C0 | #sceSysconSetLowBatteryCallbackForDriver | SYSCON_CB_LOW_BATTERY. Set by ScePower. |
0x474A9EA7 | #SceSysconForDriver_474A9EA7 | ?? |
0x4A42712F | #sceSysconSetAccCallbackForDriver | ?? |
0x67A4CB9F | #sceSysconSetMiniUsbOtgCallbackForDriver | ?? |
0x773B8126 | #sceSysconSetThermalAlertCallbackForDriver | SYSCON_CB_THERMAL_ALERT. Set by ScePower. |
0x7AA00C01 | #sceSysconSetLowBatteryInhibitUpdateDownloadCallbackForDriver | Set by ScePower. SYSCON_CB_LOW_BATTERY_INIHIBIT_UPDATE_DOWNLOAD. |
0x80D6E061 | ?? | Set by ScePower. Maybe SYSCON_CB_BATTERY_ONLINE. |
0x94678881 | #sceSysconSetLowBatteryInhibitUpdateRebootCallbackForDriver | Set by ScePower. SYSCON_CB_LOW_BATTERY_INIHIBIT_UPDATE_REBOOT. |
0x9F8340FF | ?? | ?? |
0xA26586B2 | #sceSysconSetMultiCnOtgCallbackForDriver | ?? |