SceHpremote: Difference between revisions

From Vita Development Wiki
Jump to navigation Jump to search
 
(10 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== Module ==
== Module ==


=== Known NIDs ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! Name !! World !! Privilege !! NID
! Version !! World !! Privilege
|-
| 1.69 || SceHpremote || Non-secure || Kernel || 0x13C018A1
|-
|-
| 3.60-3.65 || SceHpremote || Non-secure || Kernel || 0xA2133147
| 0.990.000-3.740.011 || Non-secure || Kernel
|}
|}


Line 19: Line 16:
! Version !! Name !! World !! Visibility !! NID
! Version !! Name !! World !! Visibility !! NID
|-
|-
| 1.69-3.60 || [[SceHpremote#SceHpremoteForDriver|SceHpremoteForDriver]] || Non-secure || Kernel || 0xFD0B0E27
| 0.990.000-3.740.011 || [[SceHpremote#SceHpremoteForDriver|SceHpremoteForDriver]] || Non-secure || Kernel || 0xFD0B0E27
|}
|}


== SceHpremoteForDriver ==
== SceHpremoteForDriver ==
=== sceHprmIsHeadphoneExistForDriver ===
{| class="wikitable"
|-
! Version !! NID
|-
| 0.990.000-3.740.011 || 0x7E69EDA4
|}
Returns value got from [[SceSyscon#sceSysconIsHeadphoneExistForDriver]].
<source lang="C">SceBool sceHprmIsHeadphoneExistForDriver(void);</source>


=== sceHprmIsRemoteExistForDriver ===
=== sceHprmIsRemoteExistForDriver ===
Line 29: Line 38:
! Version !! NID
! Version !! NID
|-
|-
| 3.60 || 0x208DB1BD
| 0.990.000-3.740.011 || 0x208DB1BD
|}
|}
<source lang="C">SceBool sceHprmIsRemoteExistForDriver(void);</source>


=== sceHprmIsMicrophoneExistForDriver ===
=== sceHprmIsMicrophoneExistForDriver ===
Line 37: Line 48:
! Version !! NID
! Version !! NID
|-
|-
| 3.60 || 0x219C58F1
| 0.990.000-3.740.011 || 0x219C58F1
|}
 
<source lang="C">SceBool sceHprmIsMicrophoneExistForDriver(void);</source>
 
=== sceHprmResetForDriver ===
{| class="wikitable"
|-
! Version !! NID
|-
| 0.990.000-3.740.011 || 0x4D1E622C
|}
|}


=== unk ===
<source lang="C">int sceHprmResetForDriver(void);</source>
 
=== SceHpremoteForDriver_7735C403 ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! NID
! Version !! NID
|-
|-
| 3.60 || 0x2229EF51
| 0.990.000-3.740.011 || 0x7735C403
|}
|}


=== unk ===
Code similar to sceHprmResetForDriver.
 
=== sceHprmGetHpDetectForDriver ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! NID
! Version !! NID
|-
|-
| 3.60 || 0x4D1E622C
| 0.990.000-3.740.011 || 0x71B5FB67
|}
|}


=== unk ===
Returns the value synchronized by the callback registered using [[SceSyscon#SceSysconForDriver_63352A39]].
 
<source lang="C">SceBool sceHprmGetHpDetectForDriver(void);</source>
 
=== sceHprmGetInternalStateForDriver ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! NID
! Version !! NID
|-
|-
| 3.60 || 0x68D64A0F
| 0.990.000-3.740.011 || 0x7B038374
|}
|}


=== sceHprmGetHpDetectForDriver ===
Returns the internal state. pRes takes the address of the data segment.
 
<source lang="C">int sceHprmGetInternalStateForDriver(void** ppRes);</source>
 
=== sceHprmRegisterCallbackForDriver ===
{| class="wikitable"
|-
! Version !! NID
|-
| 0.990.000-3.740.011 || 0xC7154136
|}
 
<source lang="C">int sceHprmRegisterCallbackForDriver(void* cb);</source>
 
=== sceHprmUnregisterCallbackForDriver ===
{| class="wikitable"
|-
! Version !! NID
|-
| 0.990.000-3.740.011 || 0x68D64A0F
|}
 
<source lang="C">int sceHprmUnregisterCallbackForDriver(void* cb);</source>
 
=== sceHprmSetConnectCallbackForDriver ===
{| class="wikitable"
|-
! Version !! NID
|-
| 0.990.000-3.740.011 || 0xD22913DB
|}
 
Used in [[SceAVConfig]].
 
<source lang="C">int connect_cb(SceUInt32 event, SceBool is_dock_exist, SceBool is_headphone_exist, SceBool is_remote_exist, SceBool is_microphone_exist, void* argp);</source>
 
<source lang="C">int sceHprmSetConnectCallbackForDriver(void* connect_cb, void* argp);</source>
 
=== SceHpremoteForDriver_2229EF51 ===
{| class="wikitable"
|-
! Version !! NID
|-
| 0.931.010-0.990.000 || not present
|-
| 1.000.071-3.740.011 || 0x2229EF51
|}
 
A guessed name is sceHprmIsAudioOutDockExistForDriver.
 
Returns a global variable indicating if a device is connected to multiconnector audio out pin.
 
The return value is the synchronized global variable defined by:
<source lang="C">
SceUInt32 multi_cn_info;
sceSysconGetMultiCnInfoForDriver(&multi_cn_info);
return (multi_cn_info & 0xff00) == 0x300;
</source>
 
<source lang="C">SceBool SceHpremoteForDriver_2229EF51(void);</source>
 
=== SceHpremoteForDriver_971AE8FB ===
{| class="wikitable"
|-
! Version !! NID
|-
| 0.990.000-0.995.000 || 0x971AE8FB
|-
| 0.996-3.740.011 || not present
|}
 
Gets the global variable set by [[#SceHpremoteForDriver_F04591FA]].
 
<source lang="C">int SceHpremoteForDriver_971AE8FB(int* pRes);</source>
 
=== sceHprmGetModelForDriver ===
{| class="wikitable"
|-
! Version !! NID
|-
| 0.990.000-0.995.000 || 0xBAD0828E
|-
| 0.996-3.740.011 || not present
|}
 
Gets model of the connected remote.
 
Returns 0 on success. Returns -1 if no remote is connected.
 
<source lang="C">int sceHprmGetModelForDriver(SceUInt32* puiModel1, SceUInt32* puiModel2, SceUInt32* puiRes);</source>
 
=== SceHpremoteForDriver_F04591FA ===
{| class="wikitable"
|-
! Version !! NID
|-
| 0.990.000-0.995.000 || 0xF04591FA
|-
| 0.996-3.740.011 || not present
|}
 
Sets a global variable whose default value is '='.
 
<source lang="C">int SceHpremoteForDriver_F04591FA(char val);</source>
 
=== sceHprmPeekCurrentKeyForDriver ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! NID
! Version !! NID
|-
|-
| 3.60 || 0x71B5FB67
| 0.990.000-0.995.000 || 0x1910B327
|-
| 0.996-3.740.011 || not present
|}
|}


=== unk ===
<source lang="C">int sceHprmPeekCurrentKeyForDriver(int* pCurrentKey);</source>
 
=== SceHpremoteForDriver_26A0EE61 ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! NID
! Version !! NID
|-
|-
| 3.60 || 0x7735C403
| 0.990.000-0.995.000 || 0x26A0EE61
|-
| 0.996-3.740.011 || not present
|}
|}


=== unk ===
All it does is return 0 on FW 0.990.030.
 
Used in [[SceAVConfig]].
 
<source lang="C">int SceHpremoteForDriver_26A0EE61(void);</source>
 
=== sceHprmPeekLatchForDriver ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! NID
! Version !! NID
|-
|-
| 3.60 || 0x7B038374
| 0.990.000-0.995.000 || 0x2BCEC83E
|-
| 0.996-3.740.011 || not present
|}
|}


=== sceHprmIsHeadphoneExistForDriver ===
<source lang="C">int sceHprmPeekLatchForDriver(int* pLatch);</source>
 
=== sceHprmReadLatchForDriver ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! NID
! Version !! NID
|-
|-
| 3.60 || 0x7E69EDA4
| 0.990.000-0.995.000 || 0x40D2F9F0
|-
| 0.996-3.740.011 || not present
|}
|}


=== sceHprmRegisterCallbackForDriver ===
<source lang="C">int sceHprmReadLatchForDriver(int* pLatch);</source>
 
=== SceHpremoteForDriver_B5E5459B ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! NID
! Version !! NID
|-
|-
| 3.60 || 0xC7154136
| 0.990.000-0.995.000 || 0xB5E5459B
|-
| 0.996-3.740.011 || not present
|}
|}


=== unk ===
All it does is return 0 on FW 0.990.030.
 
<source lang="C">int SceHpremoteForDriver_B5E5459B(void);</source>
 
=== SceHpremoteForDriver_BC14BA24 ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! NID
! Version !! NID
|-
|-
| 3.60 || 0xD22913DB
| 0.990.000-0.995.000 || 0xBC14BA24
|-
| 0.996-3.740.011 || not present
|}
|}


Returns a global variable.
<source lang="C">int SceHpremoteForDriver_BC14BA24(void);</source>


[[Category:ARM]]
[[Category:Kernel]]
[[Category:Modules]]
[[Category:Modules]]
[[Category:Kernel]]
[[Category:Library]]

Latest revision as of 15:50, 22 January 2024

Module

Version World Privilege
0.990.000-3.740.011 Non-secure Kernel

Libraries

Known NIDs

Version Name World Visibility NID
0.990.000-3.740.011 SceHpremoteForDriver Non-secure Kernel 0xFD0B0E27

SceHpremoteForDriver

sceHprmIsHeadphoneExistForDriver

Version NID
0.990.000-3.740.011 0x7E69EDA4

Returns value got from SceSyscon#sceSysconIsHeadphoneExistForDriver.

SceBool sceHprmIsHeadphoneExistForDriver(void);

sceHprmIsRemoteExistForDriver

Version NID
0.990.000-3.740.011 0x208DB1BD
SceBool sceHprmIsRemoteExistForDriver(void);

sceHprmIsMicrophoneExistForDriver

Version NID
0.990.000-3.740.011 0x219C58F1
SceBool sceHprmIsMicrophoneExistForDriver(void);

sceHprmResetForDriver

Version NID
0.990.000-3.740.011 0x4D1E622C
int sceHprmResetForDriver(void);

SceHpremoteForDriver_7735C403

Version NID
0.990.000-3.740.011 0x7735C403

Code similar to sceHprmResetForDriver.

sceHprmGetHpDetectForDriver

Version NID
0.990.000-3.740.011 0x71B5FB67

Returns the value synchronized by the callback registered using SceSyscon#SceSysconForDriver_63352A39.

SceBool sceHprmGetHpDetectForDriver(void);

sceHprmGetInternalStateForDriver

Version NID
0.990.000-3.740.011 0x7B038374

Returns the internal state. pRes takes the address of the data segment.

int sceHprmGetInternalStateForDriver(void** ppRes);

sceHprmRegisterCallbackForDriver

Version NID
0.990.000-3.740.011 0xC7154136
int sceHprmRegisterCallbackForDriver(void* cb);

sceHprmUnregisterCallbackForDriver

Version NID
0.990.000-3.740.011 0x68D64A0F
int sceHprmUnregisterCallbackForDriver(void* cb);

sceHprmSetConnectCallbackForDriver

Version NID
0.990.000-3.740.011 0xD22913DB

Used in SceAVConfig.

int connect_cb(SceUInt32 event, SceBool is_dock_exist, SceBool is_headphone_exist, SceBool is_remote_exist, SceBool is_microphone_exist, void* argp);
int sceHprmSetConnectCallbackForDriver(void* connect_cb, void* argp);

SceHpremoteForDriver_2229EF51

Version NID
0.931.010-0.990.000 not present
1.000.071-3.740.011 0x2229EF51

A guessed name is sceHprmIsAudioOutDockExistForDriver.

Returns a global variable indicating if a device is connected to multiconnector audio out pin.

The return value is the synchronized global variable defined by:

SceUInt32 multi_cn_info;
sceSysconGetMultiCnInfoForDriver(&multi_cn_info);
return (multi_cn_info & 0xff00) == 0x300;
SceBool SceHpremoteForDriver_2229EF51(void);

SceHpremoteForDriver_971AE8FB

Version NID
0.990.000-0.995.000 0x971AE8FB
0.996-3.740.011 not present

Gets the global variable set by #SceHpremoteForDriver_F04591FA.

int SceHpremoteForDriver_971AE8FB(int* pRes);

sceHprmGetModelForDriver

Version NID
0.990.000-0.995.000 0xBAD0828E
0.996-3.740.011 not present

Gets model of the connected remote.

Returns 0 on success. Returns -1 if no remote is connected.

int sceHprmGetModelForDriver(SceUInt32* puiModel1, SceUInt32* puiModel2, SceUInt32* puiRes);

SceHpremoteForDriver_F04591FA

Version NID
0.990.000-0.995.000 0xF04591FA
0.996-3.740.011 not present

Sets a global variable whose default value is '='.

int SceHpremoteForDriver_F04591FA(char val);

sceHprmPeekCurrentKeyForDriver

Version NID
0.990.000-0.995.000 0x1910B327
0.996-3.740.011 not present
int sceHprmPeekCurrentKeyForDriver(int* pCurrentKey);

SceHpremoteForDriver_26A0EE61

Version NID
0.990.000-0.995.000 0x26A0EE61
0.996-3.740.011 not present

All it does is return 0 on FW 0.990.030.

Used in SceAVConfig.

int SceHpremoteForDriver_26A0EE61(void);

sceHprmPeekLatchForDriver

Version NID
0.990.000-0.995.000 0x2BCEC83E
0.996-3.740.011 not present
int sceHprmPeekLatchForDriver(int* pLatch);

sceHprmReadLatchForDriver

Version NID
0.990.000-0.995.000 0x40D2F9F0
0.996-3.740.011 not present
int sceHprmReadLatchForDriver(int* pLatch);

SceHpremoteForDriver_B5E5459B

Version NID
0.990.000-0.995.000 0xB5E5459B
0.996-3.740.011 not present

All it does is return 0 on FW 0.990.030.

int SceHpremoteForDriver_B5E5459B(void);

SceHpremoteForDriver_BC14BA24

Version NID
0.990.000-0.995.000 0xBC14BA24
0.996-3.740.011 not present

Returns a global variable.

int SceHpremoteForDriver_BC14BA24(void);