mirror of
https://github.com/IllusionMan1212/vitasdk-odin.git
synced 2026-10-24 02:12:38 +00:00
initial
This commit is contained in:
@@ -0,0 +1,239 @@
|
||||
package power
|
||||
|
||||
import "core:c"
|
||||
import sce "../common"
|
||||
|
||||
foreign import power "system:ScePower_stub"
|
||||
|
||||
@(link_prefix = "scePower")
|
||||
foreign power {
|
||||
/**
|
||||
* Registers a ScePower Callback
|
||||
*
|
||||
* @param cbid - The UID of the specified callback
|
||||
*
|
||||
* @return 0 on success, < 0 on error
|
||||
*/
|
||||
RegisterCallback :: proc(cbid: sce.UID) -> c.int ---
|
||||
|
||||
/**
|
||||
* Unregister a callback
|
||||
*
|
||||
* @param cbid - The UID of the specified callback
|
||||
*
|
||||
* @return 0 on success, < 0 on error
|
||||
*/
|
||||
UnregisterCallback :: proc(cbid: sce.UID) -> c.int ---
|
||||
|
||||
/**
|
||||
* Returns battery charging status
|
||||
*
|
||||
* @return SCE_TRUE if under charge, SCE_FALSE otherwise
|
||||
*/
|
||||
IsBatteryCharging :: proc() -> sce.Bool ---
|
||||
|
||||
/**
|
||||
* Returns battery life percentage
|
||||
*
|
||||
* @return Battery life percentage
|
||||
*/
|
||||
GetBatteryLifePercent :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Set power configuration mode between:
|
||||
*
|
||||
* Mode A - This is the normal mode at process start-up. The clock frequency of the GPU core is the "normal" clock frequency. The WLAN/COM can be used.
|
||||
* Mode B - This mode accelerates the GPU clock frequency. The clock frequency of the GPU core is the "high" clock frequency. The WLAN/COM cannot be used.
|
||||
* Mode C - This mode accelerates the GPU clock frequency, and also uses the WLAN/COM. The clock frequency of the GPU core is the "high" clock frequency, and use of the WLAN/COM is possible. The screen (touchscreen) brightness, however, is limited. Also, camera cannot be used.
|
||||
*
|
||||
* @param conf One of ::ScePowerConfigurationMode
|
||||
*
|
||||
* @return 0 on success
|
||||
*/
|
||||
SetConfigurationMode :: proc(conf: c.int) -> c.int ---
|
||||
|
||||
/**
|
||||
* Check if a suspend is required
|
||||
*
|
||||
* @return SCE_TRUE if suspend is required, SCE_FALSE otherwise
|
||||
*/
|
||||
IsSuspendRequired :: proc() -> sce.Bool ---
|
||||
|
||||
/**
|
||||
* Check if AC is plugged in
|
||||
*
|
||||
* @return SCE_TRUE if plugged in, SCE_FALSE otherwise
|
||||
*/
|
||||
IsPowerOnline :: proc() -> sce.Bool ---
|
||||
|
||||
/**
|
||||
* Returns battery life time
|
||||
*
|
||||
* @return Battery life time in minutes
|
||||
*/
|
||||
GetBatteryLifeTime :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Returns battery remaining capacity
|
||||
*
|
||||
* @return battery remaining capacity in mAh (milliampere hour)
|
||||
*/
|
||||
GetBatteryRemainCapacity :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Returns battery state
|
||||
*
|
||||
* @return SCE_TRUE if battery is low, SCE_FALSE otherwise
|
||||
*/
|
||||
IsLowBattery :: proc() -> sce.Bool ---
|
||||
|
||||
/**
|
||||
* Returns battery full capacity
|
||||
*
|
||||
* @return battery full capacity in mAh (milliampere hour)
|
||||
*/
|
||||
GetBatteryFullCapacity :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Returns battery temperature
|
||||
*
|
||||
* @return temperature in degrees celcius * 100
|
||||
*/
|
||||
GetBatteryTemp :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Returns battery voltage
|
||||
*
|
||||
* @return battery voltage in mV (millivolts)
|
||||
*/
|
||||
GetBatteryVolt :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Returns battery state of health
|
||||
*
|
||||
* @return battery state of health percent
|
||||
*/
|
||||
GetBatterySOH :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Returns battery cycle count
|
||||
*
|
||||
* @return battery cycle count
|
||||
*/
|
||||
GetBatteryCycleCount :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Returns CPU clock frequency
|
||||
*
|
||||
* @return CPU clock frequency in Mhz
|
||||
*/
|
||||
GetArmClockFrequency :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Returns BUS clock frequency
|
||||
*
|
||||
* @return BUS clock frequency in Mhz
|
||||
*/
|
||||
GetBusClockFrequency :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Returns GPU clock frequency
|
||||
*
|
||||
* @return GPU clock frequency in Mhz
|
||||
*/
|
||||
GetGpuClockFrequency :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Returns GPU crossbar clock frequency
|
||||
*
|
||||
* @return GPU crossbar clock frequency in Mhz
|
||||
*/
|
||||
GetGpuXbarClockFrequency :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Requests PS Vita to do a cold reset
|
||||
*
|
||||
* @return always 0
|
||||
*/
|
||||
RequestColdReset :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Requests PS Vita to go into standby
|
||||
*
|
||||
* @return always 0
|
||||
*/
|
||||
RequestStandby :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Requests PS Vita to suspend
|
||||
*
|
||||
* @return always 0
|
||||
*/
|
||||
RequestSuspend :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Request display on
|
||||
*
|
||||
* @return always 0
|
||||
*/
|
||||
RequestDisplayOn :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Request display off
|
||||
*
|
||||
* @return always 0
|
||||
*/
|
||||
RequestDisplayOff :: proc() -> c.int ---
|
||||
|
||||
/**
|
||||
* Sets CPU clock frequency
|
||||
*
|
||||
* @param freq - Frequency to set in Mhz
|
||||
*
|
||||
* @return 0 on success, < 0 on error
|
||||
*/
|
||||
SetArmClockFrequency :: proc(freq: c.int) -> c.int ---
|
||||
|
||||
/**
|
||||
* Sets BUS clock frequency
|
||||
*
|
||||
* @param freq - Frequency to set in Mhz
|
||||
*
|
||||
* @return 0 on success, < 0 on error
|
||||
*/
|
||||
SetBusClockFrequency :: proc(freq: c.int) -> c.int ---
|
||||
|
||||
/**
|
||||
* Sets GPU clock frequency
|
||||
*
|
||||
* @param freq - Frequency to set in Mhz
|
||||
*
|
||||
* @return 0 on success, < 0 on error
|
||||
*/
|
||||
SetGpuClockFrequency :: proc(freq: c.int) -> c.int ---
|
||||
|
||||
/**
|
||||
* Sets GPU crossbar clock frequency
|
||||
*
|
||||
* @param freq - Frequency to set in Mhz
|
||||
*
|
||||
* @return 0 on success, < 0 on error
|
||||
*/
|
||||
SetGpuXbarClockFrequency :: proc(freq: c.int) -> c.int ---
|
||||
|
||||
/**
|
||||
* Sets wireless features usage
|
||||
*
|
||||
* @param enabled - SCE_TRUE to enable, SCE_FALSE to disable
|
||||
*
|
||||
* @return 0 on success, < 0 on error
|
||||
*/
|
||||
SetUsingWireless :: proc(enabled: sce.Bool) -> c.int ---
|
||||
|
||||
/**
|
||||
* Gets wireless features usage
|
||||
*
|
||||
* @return SCE_TRUE if enabled, SCE_FALSE otherwise
|
||||
*/
|
||||
GetUsingWireless :: proc() -> c.int ---
|
||||
}
|
||||
Reference in New Issue
Block a user