ScePower: Difference between revisions
CelesteBlue (talk | contribs) |
CelesteBlue (talk | contribs) |
||
(14 intermediate revisions by 2 users not shown) | |||
Line 42: | Line 42: | ||
Gpu(Internal) : 41, 41 | Gpu(Internal) : 41, 41 | ||
</source> | </source> | ||
== Power callbacks == | |||
See also [[SceSyscon#Callbacks]]. | |||
Power callback notifyArg allowed mask are listed in the table below. | |||
{| class="wikitable" | |||
|- | |||
! Process !! Mask | |||
|- | |||
| Kernel || 0xFCF71F80 | |||
|- | |||
| System || 0xFCF71F80 | |||
|- | |||
| Non-System || 0x361180 | |||
|} | |||
== ScePowerMain event flag == | |||
{| class="wikitable" | |||
|- | |||
! Value !! Function | |||
|- | |||
| 1 || SceCtrl callback subroutines | |||
|- | |||
| 4 || scePowerRequestDisplayOn | |||
|- | |||
| 8 || scePowerRequestDisplayOff | |||
|- | |||
| 0x10 || scePowerRequestSuspend, scePowerRequestStandby | |||
|- | |||
| 0x20 || scePowerRequestSuspend | |||
|- | |||
| 0x40 || scePowerRequestSoftReset | |||
|- | |||
| 0x80 || scePowerRequestColdReset | |||
|- | |||
| 0x200 || ScePowerAlarm0 subroutines | |||
|- | |||
| 0x400 || scePowerRequestHibernate | |||
|- | |||
| 0x800 || HDMI callback subroutines | |||
|} | |||
== Types == | == Types == | ||
<source lang="C"> | <source lang="C"> | ||
typedef enum ScePowerCallbackType { | |||
SCE_POWER_CB_AFTER_SYSTEM_RESUME = 0x00000080, /* TODO: confirm */ | |||
SCE_POWER_CB_BATTERY_ONLINE = 0x00000100, | |||
SCE_POWER_CB_THERMAL_SUSPEND = 0x00000200, /* TODO: confirm */ | |||
SCE_POWER_CB_LOW_BATTERY_SUSPEND = 0x00000400, /* TODO: confirm */ | |||
SCE_POWER_CB_LOW_BATTERY = 0x00000800, | |||
SCE_POWER_CB_POWER_ONLINE = 0x00001000, | |||
SCE_POWER_CB_SYSTEM_SUSPEND = 0x00010000, | |||
SCE_POWER_CB_SYSTEM_RESUMING = 0x00020000, | |||
SCE_POWER_CB_SYSTEM_RESUME = 0x00040000, | |||
SCE_POWER_CB_UNK_0x100000 = 0x00100000, /* Related to proc_event::display_switch */ | |||
SCE_POWER_CB_APP_RESUME = 0x00200000, | |||
SCE_POWER_CB_APP_SUSPEND = 0x00400000, | |||
SCE_POWER_CB_APP_RESUMING = 0x00800000, /* TODO: confirm */ | |||
SCE_POWER_CB_SCREENSHOT_TRIGGER = 0x04000000, | |||
SCE_POWER_CB_UNK_0x8000000 = 0x08000000, /* Triggered by a special button combo (PS + Power) on the event of ScePowerMain */ | |||
SCE_POWER_CB_PS_BUTTON_HOLD = 0x10000000, | |||
SCE_POWER_CB_PS_BUTTON_PRESS = 0x20000000, | |||
SCE_POWER_CB_POWER_BUTTON_HOLD = 0x40000000, | |||
SCE_POWER_CB_POWER_BUTTON_PRESS = 0x80000000, | |||
SCE_POWER_CB_VALID_MASK_KERNEL = 0xFCF71F80, | |||
SCE_POWER_CB_VALID_MASK_SYSTEM = 0xFCF71F80, | |||
SCE_POWER_CB_VALID_MASK_NON_SYSTEM = 0x00361180 | |||
} ScePowerCallbackType; | |||
#define SCE_CLOCK_FREQ_GPU_41MHZ (41) | #define SCE_CLOCK_FREQ_GPU_41MHZ (41) | ||
#define SCE_CLOCK_FREQ_GPU_55MHZ (55) | #define SCE_CLOCK_FREQ_GPU_55MHZ (55) | ||
Line 508: | Line 577: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.931-1.692.000 || 0x1B04A1D6 | | 0.931.010-1.692.000 || 0x1B04A1D6 | ||
|- | |- | ||
| 1.800.071-3.740.011 || not present | | 1.800.071-3.740.011 || not present | ||
Line 531: | Line 600: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 3. | | 0.931.010-0.990.000 || not present | ||
|- | |||
| 0.996.090-3.740.011 || 0x642E0AF2 | |||
|} | |} | ||
Line 745: | Line 816: | ||
|} | |} | ||
[[Hardware_Timers]] Clock. | |||
<source lang="C">int scePowerSetSysClockFrequencyForDriver(int clock);</source> | <source lang="C">int scePowerSetSysClockFrequencyForDriver(int clock);</source> | ||
Line 906: | Line 973: | ||
|} | |} | ||
This is | This is guessed name. | ||
derived from [[SceVshBridge#vshPowerSetPowerSwMode|vshPowerSetPowerSwMode]] | derived from [[SceVshBridge#vshPowerSetPowerSwMode|vshPowerSetPowerSwMode]] | ||
Line 1,142: | Line 1,209: | ||
<source lang="C"> | <source lang="C"> | ||
// idx: 0-7 | // idx: 0-7 | ||
int scePowerSetIdleCallbackForDriver(SceUInt32 idx, int maybe_flags, | int scePowerSetIdleCallbackForDriver(SceUInt32 idx, int maybe_flags, SceUInt64 duration, void *cb_func, int idle_cb_info_5); | ||
</source> | </source> | ||
{| class="wikitable" | |||
|- | |||
! Index !! By !! Description | |||
|- | |||
| 0 || ScePower || scePowerRequestSuspend | |||
|- | |||
| 1 || ScePower || Ctrl | |||
|- | |||
| 2 || ScePower || Ctrl | |||
|- | |||
| 3 || unknown || - | |||
|- | |||
| 4 || SceMsif || - | |||
|- | |||
| 5 || unknown || - | |||
|- | |||
| 6 || unknown || - | |||
|- | |||
| 7 || unknown || - | |||
|} | |||
=== ScePowerForDriver_660D5AB4 === | === ScePowerForDriver_660D5AB4 === | ||
Line 1,486: | Line 1,574: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.931.010 | | 0.931.010-3.740.011 || 0x8C0D2051 | ||
|} | |} | ||
Line 1,630: | Line 1,716: | ||
</source> | </source> | ||
[[Category:ARM]] | |||
[[Category:Kernel]] | |||
[[Category:Modules]] | [[Category:Modules]] | ||
[[Category: | [[Category:Library]] |
Latest revision as of 19:42, 25 March 2024
Module
Version | World | Privilege |
---|---|---|
1.69-3.60 | Non-secure | Kernel |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|---|---|---|---|
1.000.071-3.740.011 | ScePower | Non-secure | User | 0x1082DA7F |
0.990.000-3.740.011 | ScePowerForDriver | Non-secure | Kernel | 0x1590166F |
0.990.000-0.996.090 | SceLedForDriver | Non-secure | Kernel | not present. Present in SceLed. |
1.000.071-3.740.011 | SceLedForDriver | Non-secure | Kernel | 0x282C1323 |
Clocks
Default (in Shell)
Arm : 333 Gpu(Proc) : 41 GpuXbar : 111 Bus : 222 Compat : 0 Venezia : 166 Dmac5 : 166 Vip : 0 Sys : 190 CameraBus : 0 Gpu(Internal) : 41, 41
Power callbacks
See also SceSyscon#Callbacks.
Power callback notifyArg allowed mask are listed in the table below.
Process | Mask |
---|---|
Kernel | 0xFCF71F80 |
System | 0xFCF71F80 |
Non-System | 0x361180 |
ScePowerMain event flag
Value | Function |
---|---|
1 | SceCtrl callback subroutines |
4 | scePowerRequestDisplayOn |
8 | scePowerRequestDisplayOff |
0x10 | scePowerRequestSuspend, scePowerRequestStandby |
0x20 | scePowerRequestSuspend |
0x40 | scePowerRequestSoftReset |
0x80 | scePowerRequestColdReset |
0x200 | ScePowerAlarm0 subroutines |
0x400 | scePowerRequestHibernate |
0x800 | HDMI callback subroutines |
Types
typedef enum ScePowerCallbackType { SCE_POWER_CB_AFTER_SYSTEM_RESUME = 0x00000080, /* TODO: confirm */ SCE_POWER_CB_BATTERY_ONLINE = 0x00000100, SCE_POWER_CB_THERMAL_SUSPEND = 0x00000200, /* TODO: confirm */ SCE_POWER_CB_LOW_BATTERY_SUSPEND = 0x00000400, /* TODO: confirm */ SCE_POWER_CB_LOW_BATTERY = 0x00000800, SCE_POWER_CB_POWER_ONLINE = 0x00001000, SCE_POWER_CB_SYSTEM_SUSPEND = 0x00010000, SCE_POWER_CB_SYSTEM_RESUMING = 0x00020000, SCE_POWER_CB_SYSTEM_RESUME = 0x00040000, SCE_POWER_CB_UNK_0x100000 = 0x00100000, /* Related to proc_event::display_switch */ SCE_POWER_CB_APP_RESUME = 0x00200000, SCE_POWER_CB_APP_SUSPEND = 0x00400000, SCE_POWER_CB_APP_RESUMING = 0x00800000, /* TODO: confirm */ SCE_POWER_CB_SCREENSHOT_TRIGGER = 0x04000000, SCE_POWER_CB_UNK_0x8000000 = 0x08000000, /* Triggered by a special button combo (PS + Power) on the event of ScePowerMain */ SCE_POWER_CB_PS_BUTTON_HOLD = 0x10000000, SCE_POWER_CB_PS_BUTTON_PRESS = 0x20000000, SCE_POWER_CB_POWER_BUTTON_HOLD = 0x40000000, SCE_POWER_CB_POWER_BUTTON_PRESS = 0x80000000, SCE_POWER_CB_VALID_MASK_KERNEL = 0xFCF71F80, SCE_POWER_CB_VALID_MASK_SYSTEM = 0xFCF71F80, SCE_POWER_CB_VALID_MASK_NON_SYSTEM = 0x00361180 } ScePowerCallbackType; #define SCE_CLOCK_FREQ_GPU_41MHZ (41) #define SCE_CLOCK_FREQ_GPU_55MHZ (55) #define SCE_CLOCK_FREQ_GPU_83MHZ (83) #define SCE_CLOCK_FREQ_GPU_111MHZ (111) #define SCE_CLOCK_FREQ_GPU_166MHZ (166) #define SCE_CLOCK_FREQ_GPU_222MHZ (222) #define SCE_CLOCK_FREQ_GPU_XBAR_111MHZ (111) #define SCE_CLOCK_FREQ_GPU_XBAR_166MHZ (166) #define SCE_CLOCK_FREQ_DMAC5_41MHZ (41) #define SCE_CLOCK_FREQ_DMAC5_83MHZ (83) #define SCE_CLOCK_FREQ_DMAC5_133MHZ (133) #define SCE_CLOCK_FREQ_DMAC5_166MHZ (166) #define SCE_CLOCK_FREQ_BUS_55MHZ (55) #define SCE_CLOCK_FREQ_BUS_83MHZ (83) #define SCE_CLOCK_FREQ_BUS_111MHZ (111) #define SCE_CLOCK_FREQ_BUS_166MHZ (166) #define SCE_CLOCK_FREQ_BUS_222MHZ (222) #define SCE_CLOCK_FREQ_COMPAT_0MHZ (0) #define SCE_CLOCK_FREQ_COMPAT_222MHZ (222) #define SCE_CLOCK_FREQ_COMPAT_333MHZ (333) #define SCE_CLOCK_FREQ_VENEZIA_41MHZ (41) #define SCE_CLOCK_FREQ_VENEZIA_55MHZ (55) #define SCE_CLOCK_FREQ_VENEZIA_83MHZ (83) #define SCE_CLOCK_FREQ_VENEZIA_111MHZ (111) #define SCE_CLOCK_FREQ_VENEZIA_166MHZ (166) #define SCE_CLOCK_FREQ_VENEZIA_222MHZ (222) #define SCE_CLOCK_FREQ_VENEZIA_333MHZ (333) #define SCE_CLOCK_FREQ_VIP_0MHZ (0) #define SCE_CLOCK_FREQ_VIP_41MHZ (41) #define SCE_CLOCK_FREQ_VIP_55MHZ (55) #define SCE_CLOCK_FREQ_VIP_83MHZ (83) #define SCE_CLOCK_FREQ_VIP_111MHZ (111) #define SCE_CLOCK_FREQ_VIP_166MHZ (166) #define SCE_CLOCK_FREQ_VIP_222MHZ (222) #define SCE_CLOCK_FREQ_SYS_190MHZ (190) #define SCE_CLOCK_FREQ_SYS_222MHZ (222) #define SCE_CLOCK_FREQ_CAMERA_BUS_0MHZ (0) #define SCE_CLOCK_FREQ_CAMERA_BUS_41MHZ (41) #define SCE_CLOCK_FREQ_CAMERA_BUS_67MHZ (67) #define SCE_CLOCK_FREQ_CAMERA_BUS_83MHZ (83) #define SCE_CLOCK_FREQ_CAMERA_BUS_131MHZ (131) #define SCE_CLOCK_FREQ_CAMERA_BUS_166MHZ (166)
ScePower
scePowerGetBatteryCycleCount
Version | NID |
---|---|
0.931.010-1.06 | not present |
1.500.151-3.740.011 | 0x008A54B9 |
scePowerRequestColdReset
Version | NID |
---|---|
1.000.071-3.740.011 | 0x0442D852 |
scePowerRegisterCallback
Version | NID |
---|---|
1.000.071-3.740.011 | 0x04B7766E |
scePowerGetGpuXbarClockFrequency
Version | NID |
---|---|
1.000.071-3.740.011 | 0x0A750DEE |
scePowerIsBatteryExist
Version | NID |
---|---|
1.000.071-3.740.011 | 0x0AFD0D8B |
scePowerGetGpuClockFrequency
Version | NID |
---|---|
0.931.010-3.740.011 | 0x1B04A1D6 |
scePowerIsBatteryCharging
Version | NID |
---|---|
1.000.071-3.740.011 | 0x1E490401 |
scePowerGetBatteryLifePercent
Version | NID |
---|---|
1.000.071-3.740.011 | 0x2085D15D |
scePowerBatteryUpdateInfo
Version | NID |
---|---|
0.990.030-3.740.011 | 0x27F3292C |
scePowerGetBatteryTemp
Version | NID |
---|---|
1.000.071-3.740.011 | 0x28E12023 |
scePowerRequestStandby
Version | NID |
---|---|
1.000.071-3.740.011 | 0x2B7C7CF4 |
scePowerSetConfigurationMode
Version | NID |
---|---|
1.000.071-3.740.011 | 0x3CE187B6 |
scePowerGetBatteryVolt
Version | NID |
---|---|
1.000.071-3.740.011 | 0x483CE86B |
scePowerSetUsingWireless
Version | NID |
---|---|
1.000.071-3.740.011 | 0x4D695C1F |
scePowerGetCaseTemp
Version | NID |
---|---|
1.000.071-3.740.011 | 0x525592E4 |
scePowerSetGpuClockFrequency
Version | NID |
---|---|
1.000.071-3.740.011 | 0x717DB06C |
scePowerSetArmClockFrequency
Version | NID |
---|---|
1.000.071-3.740.011 | 0x74DB5AE5 |
scePowerIsSuspendRequired
Version | NID |
---|---|
1.000.071-3.740.011 | 0x78A1A796 |
scePowerIsRequest
Version | NID |
---|---|
1.000.071-3.740.011 | 0x7FA406DD |
scePowerGetBatteryElec
Version | NID |
---|---|
1.000.071-3.740.011 | 0x862AE1A6 |
scePowerIsPowerOnline
Version | NID |
---|---|
1.000.071-3.740.011 | 0x87440F5E |
scePowerGetBatteryLifeTime
Version | NID |
---|---|
1.000.071-3.740.011 | 0x8EFB3FA2 |
scePowerGetBatteryRemainCapacity
Version | NID |
---|---|
1.000.071-3.740.011 | 0x94F5A53F |
scePowerSetGpuXbarClockFrequency
Version | NID |
---|---|
1.000.071-3.740.011 | 0xA7739DBE |
scePowerGetBatterySOH
Version | NID |
---|---|
1.000.071-3.740.011 | 0xA88A2B65 |
scePowerGetArmClockFrequency
Version | NID |
---|---|
1.000.071-3.740.011 | 0xABC6F88F |
scePowerRequestSuspend
Version | NID |
---|---|
1.000.071-3.740.011 | 0xAC32C9CC |
scePowerSetIdleTimerCount
Version | NID |
---|---|
1.000.071-3.740.011 | 0xB11EF149 |
scePowerGetBatteryChargingStatus
Version | NID |
---|---|
1.000.071-3.740.011 | 0xB4432BC8 |
scePowerIsLowBattery
Version | NID |
---|---|
1.000.071-3.740.011 | 0xD3075926 |
scePowerGetUsingWireless
Version | NID |
---|---|
1.000.071-3.740.011 | 0xD541FF03 |
scePowerCancelRequest
Version | NID |
---|---|
1.000.071-3.740.011 | 0xDB62C9CF |
scePowerUnregisterCallback
Version | NID |
---|---|
1.000.071-3.740.011 | 0xDFA8BAF8 |
scePowerGetBatteryFullCapacity
Version | NID |
---|---|
1.000.071-3.740.011 | 0xFD18A0FF |
scePowerGetBusClockFrequency
Version | NID |
---|---|
0.931.010-1.692.000 | not present |
1.800.071-3.740.011 | 0x478FE6F5 |
scePowerSetBusClockFrequency
Version | NID |
---|---|
0.931.010-1.692.000 | not present |
1.800.071-3.740.011 | 0xB8D7B3FB |
scePowerRequestDisplayOff
Version | NID |
---|---|
0.931.010-2.12 | not present |
2.500.071-3.740.011 | 0x160EB506 |
This function was probably added for PS TV support. Indeed, the screen of a PS TV is a HDMI device not an embedded screen like on PS Vita handled consoles.
scePowerRequestDisplayOn
Version | NID |
---|---|
0.931.010-2.12 | not present |
2.500.071-3.740.011 | 0x3EA75C88 |
This function was probably added for PS TV support. Indeed, the screen of a PS TV is a HDMI device not an embedded screen like on PS Vita handled consoles.
scePowerIsLowBatteryInhibitUpdateDownload
Version | NID |
---|---|
0.931.010-3.18 | not present |
3.300.041-3.740.011 | 0xE3E45636 |
This function was added along with SceSyscon#sceSysconIsLowBatteryInhibitUpdateDownloadForDriver.
scePowerIsLowBatteryInhibitUpdateReboot
Version | NID |
---|---|
0.931.010-3.18 | not present |
3.300.041-3.740.011 | 0x9AA05A48 |
This function was added along with SceSyscon#sceSysconIsLowBatteryInhibitUpdateRebootForDriver.
scePowerGetBatteryRemainLevel
Version | NID |
---|---|
0.931.010-3.18 | not present |
3.300.041-3.740.011 | 0xEA3E3715 |
This function was added along with SceSyscon#sceSysconGetBatteryRemainLevelForDriver.
scePowerGetBatteryRemainMaxLevel
Version | NID |
---|---|
0.931.010-3.18 | not present |
3.300.041-3.740.011 | 0x1DB00F10 |
ScePowerForDriver
scePowerGetArmClockFrequencyForDriver
Version | NID |
---|---|
1.69-3.60 | 0xABC6F88F |
int scePowerGetArmClockFrequencyForDriver(void);
scePowerSetArmClockFrequencyForDriver
Version | NID |
---|---|
1.69-3.60 | 0x74DB5AE5 |
int scePowerSetArmClockFrequencyForDriver(int clock);
scePowerGetArmClockFrequencyProcForDriver
Version | NID |
---|---|
3.60 | 0x2E9000F7 |
int scePowerGetArmClockFrequencyProcForDriver(SceUID pid);
scePowerSetArmClockFrequencyProcForDriver
Version | NID |
---|---|
3.60 | 0x86CB5218 |
int scePowerSetArmClockFrequencyProcForDriver(SceUID pid, int clock);
scePowerGetGpuClockFrequencyForDriver
Version | NID |
---|---|
0.931.010-1.692.000 | 0x1B04A1D6 |
1.800.071-3.740.011 | not present |
int scePowerGetGpuClockFrequencyForDriver(void);
scePowerSetGpuClockFrequencyForDriver
Version | NID |
---|---|
0.931.010-1.692.000 | 0x717DB06C |
1.800.071-3.740.011 | not present |
int scePowerSetGpuClockFrequencyForDriver(int clock);
scePowerGetGpuClockFrequencyProcForDriver
Version | NID |
---|---|
0.931.010-0.990.000 | not present |
0.996.090-3.740.011 | 0x642E0AF2 |
int scePowerGetGpuClockFrequencyProcForDriver(SceUID pid);
scePowerSetGpuClockFrequencyProcForDriver
Version | NID |
---|---|
0.931.010-0.990.000 | not present |
0.996.090-3.740.011 | 0xB104EFE2 |
int scePowerSetGpuClockFrequencyProcForDriver(SceUID pid, int clock);
scePowerGetGpuClockFrequencyInternalForDriver
Version | NID |
---|---|
3.60 | 0x475BCC82 |
Temp name was scePowerGetGpuEs4ClockFrequencyForDriver, scePowerGetDeviceCountForDriver.
int scePowerGetGpuClockFrequencyInternalForDriver(SceInt32 *corefreq, SceInt32 *mpfreq);
scePowerSetGpuClockFrequencyInternalForDriver
Version | NID |
---|---|
3.60 | 0x264C24FC |
Temp name was scePowerSetGpuEs4ClockFrequencyForDriver
int scePowerSetGpuClockFrequencyInternalForDriver(SceInt32 corefreq, SceInt32 mpfreq);
scePowerGetGpuXbarClockFrequencyForDriver
Version | NID |
---|---|
1.69-3.60 | 0x0A750DEE |
int scePowerGetGpuXbarClockFrequencyForDriver(void);
scePowerSetGpuXbarClockFrequencyForDriver
Version | NID |
---|---|
1.69-3.60 | 0xA7739DBE |
int scePowerSetGpuXbarClockFrequencyForDriver(int clock);
scePowerGetGpuXbarClockFrequencyProcForDriver
Version | NID |
---|---|
3.60 | 0x62C5406C |
int scePowerGetGpuXbarClockFrequencyProcForDriver(SceUID pid);
scePowerSetGpuXbarClockFrequencyProcForDriver
Version | NID |
---|---|
3.60 | 0x8D18F728 |
int scePowerSetGpuXbarClockFrequencyProcForDriver(SceUID pid, int clock);
scePowerGetBusClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0x478FE6F5 |
int scePowerGetBusClockFrequencyForDriver(void);
scePowerSetBusClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0xB8D7B3FB |
int scePowerSetBusClockFrequencyForDriver(int clock);
scePowerGetBusClockFrequencyProcForDriver
Version | NID |
---|---|
3.60 | 0x2777A517 |
int scePowerGetBusClockFrequencyProcForDriver(SceUID pid);
scePowerSetBusClockFrequencyProcForDriver
Version | NID |
---|---|
3.60 | 0x20A33D58 |
int scePowerSetBusClockFrequencyProcForDriver(SceUID pid, int clock);
scePowerGetCompatClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0xCBCC11CC |
int scePowerGetCompatClockFrequencyForDriver(void);
scePowerSetCompatClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0xFFC84E69 |
int scePowerSetCompatClockFrequencyForDriver(int clock);
scePowerGetVeneziaClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0x64641E6A |
int scePowerGetVeneziaClockFrequencyForDriver(void);
scePowerSetVeneziaClockFrequencyForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0x621BD8FD |
int scePowerSetVeneziaClockFrequencyForDriver(int clock);
scePowerGetDmac5ClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0xF1E14EA9 |
int scePowerGetDmac5ClockFrequencyForDriver(void);
scePowerSetDmac5ClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0xA902CDDF |
int scePowerSetDmac5ClockFrequencyForDriver(int clock);
scePowerGetVipClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0x0E58FCDF |
Temp name was scePowerGetVeneziaForDriver.
int scePowerGetVipClockFrequencyForDriver(void);
scePowerSetVipClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0xE5573571 |
Temp name was scePowerSetVeneziaForDriver.
VIP is set to ?222MHz? by system when video is played back, even in PspEmu. ?The two clocks it sets are 55MHz and 83MHz.?
Related to Venezia.
int scePowerSetVipClockFrequencyForDriver(int clock);
scePowerGetSysClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0xC63DACD5 |
int scePowerGetSysClockFrequencyForDriver(void);
scePowerSetSysClockFrequencyForDriver
Version | NID |
---|---|
0.931 | not present |
0.990-3.60 | 0x0E333BEC |
Hardware_Timers Clock.
int scePowerSetSysClockFrequencyForDriver(int clock);
scePowerGetCameraBusClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0x668F01D4 |
int scePowerGetCameraBusClockFrequencyForDriver(void);
scePowerSetCameraBusClockFrequencyForDriver
Version | NID |
---|---|
3.60 | 0xC743E392 |
int scePowerSetCameraBusClockFrequencyForDriver(int clock);
scePowerSetCallbackStateForDriver
Version | NID |
---|---|
3.60 | 0xA6FF5997 |
scePowerSetDisplayBrightnessForDriver
Version | NID |
---|---|
3.60 | 0x43D5CE1D |
scePowerGetDisplayMaxBrightnessForDriver
Version | NID |
---|---|
3.60 | 0xD8759B55 |
scePowerSetDisplayMaxBrightnessForDriver
Version | NID |
---|---|
3.60 | 0x77027B6B |
// ex: scePowerSetDisplayMaxBrightnessForDriver(0x10000); // ex: scePowerSetDisplayMaxBrightnessForDriver(0xC4EC); int scePowerSetDisplayMaxBrightnessForDriver(int unk);
scePowerSetDisplayBrightnessForDriver
Version | NID |
---|---|
0.931-0.990 | not present |
3.60 | 0x43D5CE1D |
scePowerTickForDriver
Version | NID |
---|---|
0.931-0.990 | not present |
3.60 | 0xEFD3C963 |
Generate a power tick, preventing unit from powering off and turning off display.
int scePowerTickForDriver(SceUInt32 type);
ScePowerForDriver_394DE492
Version | NID |
---|---|
3.60 | 0x394DE492 |
Returns a global boolean variable indicating if display brightness change is allowed.
int ScePowerForDriver_394DE492(void);
scePowerSetStandbyButtonPushTimeForDriver
Version | NID |
---|---|
3.60 | 0x675A84ED |
derived from vshPowerSetStandbyButtonPushTime
int scePowerSetStandbyButtonPushTimeForDriver(int a1);
scePowerSetPsButtonPushTimeForDriver
Version | NID |
---|---|
3.60 | 0xCF8F0529 |
derived from vshPowerSetPsButtonPushTime
int scePowerSetPsButtonPushTimeForDriver(int a1);
scePowerGetWakeupFactorForDriver
Version | NID |
---|---|
3.60 | 0x9F26222A |
derived from vshPowerGetWakeupFactor
int scePowerGetWakeupFactorForDriver(void);
scePowerGetPowerSwModeForDriver
Version | NID |
---|---|
3.60 | 0x165CE085 |
Derived from PSP NID.
/** * Unknow, get ??? something * * @returns On PSP, 0 or 1 or 2 or 3, default to 2, on PS Vita, 4 is a possible value */ int scePowerGetPowerSwModeForDriver(void);
scePowerSetPowerSwModeForDriver
Version | NID |
---|---|
3.60 | 0x0CD21B1F |
Derived from PSP NID.
int scePowerSetPowerSwModeForDriver(int mode);
scePowerSetPowerSwMode2ForDriver
Version | NID |
---|---|
3.60 | 0xC1853BA7 |
This is guessed name.
derived from vshPowerSetPowerSwMode
int scePowerSetPowerSwMode2ForDriver(int power_sw_mode);
scePowerGetBatteryCycleCountForDriver
Version | NID |
---|---|
1.69-3.60 | 0x008A54B9 |
scePowerGetResumeCountForDriver
Version | NID |
---|---|
0.931.010-3.36 | 0x0074EF9B |
3.500.011-3.740.011 | 0x0074EF9B |
scePowerIsRequestForDriver
Version | NID |
---|---|
1.69-3.60 | 0x7FA406DD |
scePowerCancelRequestForDriver
Version | NID |
---|---|
1.69-3.60 | 0xDB62C9CF |
scePowerRequestShutdownForDriver
Version | NID |
---|---|
0.990-3.60 | 0x8921A7A0 |
scePowerRequestSoftResetForDriver
Version | NID |
---|---|
1.69-3.60 | 0x2875994B |
/** * Requests PS Vita to do a soft reset * * @return always 0 */ int scePowerRequestSoftResetForDriver(void);
scePowerRequestColdResetForDriver
Version | NID |
---|---|
1.69-3.60 | 0x0442D852 |
/** * Requests PS Vita to do a cold reset * * @return always 0 */ int scePowerRequestColdResetForDriver(void);
scePowerRequestHibernateForDriver
Version | NID |
---|---|
3.60 | 0x08951418 |
derived from vshPowerRequestHibernate
/** * Requests PS Vita to enter hibernate mode * * @return always 0 */ int scePowerRequestHibernateForDriver(void);
scePowerRequestSuspendForDriver
Version | NID |
---|---|
1.69-3.60 | 0xAC32C9CC |
/** * Requests PS Vita to enter suspend mode * * @return always 0 */ int scePowerRequestSuspendForDriver(void);
scePowerRequestStandbyForDriver
Version | NID |
---|---|
1.69-3.60 | 0x2B7C7CF4 |
/** * Requests PS Vita to enter standby mode * * @return always 0 */ int scePowerRequestStandbyForDriver(void);
scePowerRequestResumeForDriver
Version | NID |
---|---|
3.60 | 0x02DB1035 |
/** * Requests PS Vita to resume * * @return always 0 */ int scePowerRequestResumeForDriver(void);
scePowerRequestDisplayOffForDriver
Version | NID |
---|---|
3.60 | 0x160EB506 |
/** * Requests PS Vita to turn off display * * @return always 0 */ int scePowerRequestDisplayOffForDriver(void);
scePowerRequestDisplayOnForDriver
Version | NID |
---|---|
3.60 | 0x3EA75C88 |
/** * Requests PS Vita to turn on display * * @return always 0 */ int scePowerRequestDisplayOnForDriver(void);
scePowerIsSuspendRequiredForDriver
Version | NID |
---|---|
1.69-3.60 | 0x78A1A796 |
scePowerRegisterCallbackForDriver
Version | NID |
---|---|
1.69-3.60 | 0x04B7766E |
scePowerUnregisterCallbackForDriver
Version | NID |
---|---|
1.69-3.60 | 0xDFA8BAF8 |
scePowerGetIdleTimerForDriver
Version | NID |
---|---|
3.60 | 0xEDC13FE5 |
scePowerSetIdleTimerForDriver
Version | NID |
---|---|
3.60 | 0x6BC26FC7 |
scePowerSetIdleTimerCountProcForDriver
Version | NID |
---|---|
3.60 | 0xFB5C3C75 |
scePowerSetIdleCallbackForDriver
Version | NID |
---|---|
0.990-3.60 | 0x1BA2FCAE |
// idx: 0-7 int scePowerSetIdleCallbackForDriver(SceUInt32 idx, int maybe_flags, SceUInt64 duration, void *cb_func, int idle_cb_info_5);
Index | By | Description |
---|---|---|
0 | ScePower | scePowerRequestSuspend |
1 | ScePower | Ctrl |
2 | ScePower | Ctrl |
3 | unknown | - |
4 | SceMsif | - |
5 | unknown | - |
6 | unknown | - |
7 | unknown | - |
ScePowerForDriver_660D5AB4
Version | NID |
---|---|
0.931 | not present |
0.990-3.60 | 0x660D5AB4 |
Set some value of the selected Idle Callback to 2.
// idx: 0-7 int ScePowerForDriver_660D5AB4(SceUInt32 idx);
scePowerSetProcessIdleCallbackForDriver
Version | NID |
---|---|
3.60 | 0x0856FD0A |
int scePowerSetProcessIdleCallbackForDriver(int idle_cb_info_1, int idle_cb_info_2);
scePowerGetCaseTempForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0x525592E4 |
Exact same code as #scePowerGetBatteryTempForDriver.
scePowerIsBatteryExistForDriver
Version | NID |
---|---|
1.69-3.60 | 0x0AFD0D8B |
scePowerWaitRequestCompletionForDriver
Version | NID |
---|---|
3.60 | 0x3951AF53 |
Temp name was scePowerEncodeUBattery (PSP NID wrong bruteforce).
scePowerSetBatteryFakeStatusForDriver
Version | NID |
---|---|
0.996.090-3.740.011 | 0x0C6973B8 |
Derived from _vshPowerSetBatteryFakeStatus.
int scePowerSetBatteryFakeStatusForDriver(int status);
scePowerIsPowerOnlineForDriver
Version | NID |
---|---|
1.69-3.60 | 0x87440F5E |
scePowerIsBatteryChargingForDriver
Version | NID |
---|---|
1.69-3.60 | 0x1E490401 |
scePowerGetBatteryLifePercentForDriver
Version | NID |
---|---|
1.69-3.60 | 0x2085D15D |
scePowerBatteryUpdateInfoForDriver
Version | NID |
---|---|
0.990-3.60 | 0x27F3292C |
scePowerGetBatteryTempForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0x28E12023 |
Exact same code as #scePowerGetCaseTempForDriver.
scePowerGetBatteryVoltForDriver
Version | NID |
---|---|
1.69-3.60 | 0x483CE86B |
scePowerGetBatteryElecForDriver
Version | NID |
---|---|
1.69-3.60 | 0x862AE1A6 |
scePowerGetBatteryLifeTimeForDriver
Version | NID |
---|---|
1.69-3.60 | 0x8EFB3FA2 |
scePowerGetBatteryRemainCapacityForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0x94F5A53F |
To document: in which unit is the remaining capacity.
int scePowerGetBatteryRemainCapacityForDriver(void);
scePowerGetBatteryRemainLevelForDriver
Version | NID |
---|---|
0.931.010-3.18 | not present |
3.300.041-3.740.011 | 0xEA3E3715 |
If Syscon version < 0x1040105, returns the remaining battery level, else returns 0 (SCE_POWER_BATTERY_REMAIN_LEVEL_INVALID).
#define SCE_POWER_BATTERY_REMAIN_LEVEL_INVALID 0 #define SCE_POWER_BATTERY_REMAIN_LEVEL_0_25_PERCENTS 1 #define SCE_POWER_BATTERY_REMAIN_LEVEL_25_50_PERCENTS 2 #define SCE_POWER_BATTERY_REMAIN_LEVEL_50_75_PERCENTS 3 #define SCE_POWER_BATTERY_REMAIN_LEVEL_75_100_PERCENTS 4 int scePowerGetBatteryRemainLevelForDriver(void);
scePowerGetBatteryRemainMaxLevelForDriver
Version | NID |
---|---|
0.931.010-3.18 | not present |
3.300.041-3.740.011 | 0x1DB00F10 |
If Syscon version < 0x1040105, returns 4 (SCE_POWER_BATTERY_REMAIN_LEVEL_75_100_PERCENTS), else returns 0 (SCE_POWER_BATTERY_REMAIN_LEVEL_INVALID).
int scePowerGetBatteryRemainLevelForDriver(void);
scePowerGetBatterySOHForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0xA88A2B65 |
scePowerGetBatteryChargingStatusForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0xB4432BC8 |
Returns battery charging status.
// To verify #define SCE_POWER_ERROR_BATTERY_NOT_CONNECTED 0x802B0100 #define SCE_POWER_ERROR_BATTERY_NOT_WORKING 0x802B0101 #define SCE_BATTERY_STATUS_POWER_OFFLINE 0 #define SCE_BATTERY_STATUS_CHARGING_NORMAL 1 #define SCE_BATTERY_STATUS_CHARGE_FORBIDDEN 2 #define SCE_BATTERY_STATUS_CHARGING_USB 3 int scePowerGetBatteryChargingStatusForDriver(void);
scePowerIsLowBatteryForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0xD3075926 |
scePowerIsSomethingBatteryForDriver
Version | NID |
---|---|
0.996.090-3.740.011 | 0x0D56C601 |
Returns value from #SceSysconForDriver_ACEE1C70.
scePowerIsSomethingBattery2ForDriver
Version | NID |
---|---|
0.996.090-3.740.011 | 0x627A89C6 |
return SceSysconForDriver_4A184B7C
scePowerGetBatteryFullCapacityForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0xFD18A0FF |
scePowerBatteryDisableUsbChargingForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0x90285886 |
int scePowerBatteryDisableUsbChargingForDriver(void);
scePowerBatteryEnableUsbChargingForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0x733F973B |
int scePowerBatteryEnableUsbChargingForDriver(void);
scePowerBatteryForbidChargingForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0x166922EC |
int scePowerBatteryForbidChargingForDriver(void);
scePowerBatteryPermitChargingForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0xDD3D4DAC |
int scePowerBatteryPermitChargingForDriver(void);
scePowerBatteryStopUsbChargingForDriver
Version | NID |
---|---|
0.996.090-3.740.011 | 0xACC857A4 |
int scePowerBatteryStopUsbChargingForDriver(void);
scePowerBatterySetUsbStatusForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0xE4E3C316 |
int scePowerBatterySetUsbStatusForDriver(int unk);
scePowerSetWakeupConditionForDriver
Version | NID |
---|---|
0.990-3.60 | 0xF535D928 |
// cond: 4: WlanBt related, 0x20: WlanBt related, 0x8000: USB charge int scePowerSetWakeupConditionForDriver(int cond, SceBool enable);
scePowerWlanActivateForDriver
Version | NID |
---|---|
0.931-3.60 | 0x6D2CA84B |
int scePowerWlanActivateForDriver(void);
scePowerWlanDeactivateForDriver
Version | NID |
---|---|
0.931-3.60 | 0x23BB0A60 |
int scePowerWlanDeactivateForDriver(void);
ScePowerForDriver_2B51FE2F
Version | NID |
---|---|
0.931.010-3.740.011 | 0x2B51FE2F |
A good name might be scePowerIsWlanActivatedForDriver, but it does not match NID using ScePowerForDriver NID suffix.
int ScePowerForDriver_2B51FE2F(void);
ScePowerForDriver_C62B6164
Version | NID |
---|---|
0.990.000-3.740.011 | 0xC62B6164 |
Gets some information about battery.
ScePowerForDriver_8C0D2051
Version | NID |
---|---|
0.931.010-3.740.011 | 0x8C0D2051 |
Gets the battery status obtained using SceSyscon#SceSysconForDriver_A2FE9BF9.
Called by SceUdcd when SceUdcdAlarmTickTimer is triggered.
int ScePowerForDriver_8C0D2051(SceUInt32 *pResult);
scePowerGetUsingWirelessProcForDriver
Version | NID |
---|---|
0.996.090-3.740.011 | 0x06AF03DB |
int scePowerGetUsingWirelessProcForDriver(SceUID pid);
scePowerSetUsingWlanProcForDriver
Version | NID |
---|---|
0.931.010-3.36 | not present |
3.500.011-3.740.011 | 0x4A69163A |
scePowerGetUsingWlanProcForDriver
Version | NID |
---|---|
0.931.010-3.36 | not present |
3.500.011-3.740.011 | 0x2784A6BD |
int scePowerGetUsingWlanProcForDriver(SceUID pid);
ScePowerForDriver_0D80B917
Version | NID |
---|---|
0.931.010-3.36 | not present |
3.500.011-3.740.011 | 0x0D80B917 |
Maybe related to #scePowerGetUsingWirelessProcForDriver.
int ScePowerForDriver_0D80B917(SceUID pid);
ScePowerForDriver_4159E0D9
Version | NID |
---|---|
0.931.010-3.36 | not present |
3.500.011-3.740.011 | 0x4159E0D9 |
ScePowerForDriver_5210A6FE
Version | NID |
---|---|
0.931.010-3.36 | not present |
3.500.011-3.740.011 | 0x5210A6FE |
ScePowerForDriver_661D670D
Version | NID |
---|---|
0.931.010-3.36 | not present |
3.500.011-3.740.011 | 0x661D670D |
ScePowerForDriver_991BDEAF
Version | NID |
---|---|
1.03-3.60 | 0x991BDEAF |
// idx: 0-7 int ScePowerForDriver_991BDEAF(SceSize idx, SceUInt32 value);
ScePowerForDriver_38415146
Version | NID |
---|---|
1.03-3.60 | 0x38415146 |
Sets a global variable and sets global event flag 0x2000.
Related to LED.
int ScePowerForDriver_38415146(SceBool enable);
SceLedForDriver
sceLedSetModeForDriver
Version | NID |
---|---|
0.990.000-3.740.011 | 0xEA24BE03 |
Maybe concerns DevKit LEDs as there are 8 LEDs, or maybe led=2 is PS button LED.
typedef struct SceLedConfiguration { // size is 0x14 on FW 3.60 SceSize size; // Size of this structure SceUInt32 maybe_onTime; // ex: 2 (2 seconds) SceUInt32 maybe_offTime; // ex: 3 (3 seconds) SceInt32 timeLimit; // ex: 60 (60 seconds), -1 (infinite) SceUInt32 maybe_endOrStartBlinkState; // ex: 0 (OFF), 1 (ON) } SceLedConfiguration; #define SCE_LED_MODE_OFF 0 // Turn a LED OFF. #define SCE_LED_MODE_ON 1 // Turn a LED ON. #define SCE_LED_MODE_BLINK 2 // Set a blink event for a LED. #define SCE_LED_MODE_SELECTIVE_EXEC 3 // Register LED configuration commands and execute them. Still not completely known how that mode works. #define SCE_LED_MODE_UNK_4 4 // Only works with led = 2 // ex: // uint32_t config_1[5] = {0x14, 2, 3, 0x3C, 0}; // uint32_t config_2[5] = {0x14, 2, 3, -1, 0}; // sceLedSetModeForDriver(1, 2, (SceLedConfiguration *)&config); // sceLedSetModeForDriver(3, 2, (SceLedConfiguration *)&config); // led: valid values are 0-7, 0: used in SceCamera, 1: used when sdstor read/write from SD, 3: used when sdstor read/write from MMC // mode: valid values are 0-4 int sceLedSetModeForDriver(int led, int mode, SceLedConfiguration *pConfig);