SceMotionDev: Difference between revisions
Jump to navigation
Jump to search
CelesteBlue (talk | contribs) |
|||
(22 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
== Module == | == Module == | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Version | ! Version !! World !! Privilege | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || Non-secure || Kernel | ||
|} | |} | ||
Line 17: | Line 16: | ||
! Version !! Name !! World !! Visibility !! NID | ! Version !! Name !! World !! Visibility !! NID | ||
|- | |- | ||
| 1.69 || [[SceMotionDev#SceMotionDev|SceMotionDev]] || Non-secure || User || 0x1F766AC7 | | 1.69-3.60 || [[SceMotionDev#SceMotionDev|SceMotionDev]] || Non-secure || User || 0x1F766AC7 | ||
|- | |- | ||
| 1.69 || [[SceMotionDev#SceMotionDevForDriver|SceMotionDevForDriver]] || Non-secure || Kernel || 0xA501409A | | 1.69-3.60 || [[SceMotionDev#SceMotionDevForDriver|SceMotionDevForDriver]] || Non-secure || Kernel || 0xA501409A | ||
|} | |} | ||
Line 37: | Line 36: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xAF014866 | ||
|} | |} | ||
Line 47: | Line 44: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x716C685B | ||
|} | |} | ||
Line 57: | Line 52: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xBDEC1E32 | ||
|} | |} | ||
Line 75: | Line 68: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xAAB4B41F | ||
|} | |} | ||
Line 85: | Line 76: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x067F06D9 | ||
|} | |} | ||
Line 95: | Line 84: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x1F1EFEFB | ||
|} | |} | ||
Line 105: | Line 92: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x5EDEA879 | ||
|} | |} | ||
Line 131: | Line 116: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x777D57D2 | ||
|} | |} | ||
Line 149: | Line 132: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x6D033072 | ||
|} | |} | ||
Line 167: | Line 148: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x74555D91 | ||
|} | |} | ||
Line 185: | Line 164: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xE8A3E48E | ||
|} | |} | ||
Line 195: | Line 172: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x16DD5913 | ||
|} | |} | ||
Line 205: | Line 180: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xE72A35B8 | ||
|} | |} | ||
Line 231: | Line 204: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xCC4FDA6A | ||
|} | |} | ||
Line 241: | Line 212: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xC0095F0F | ||
|} | |} | ||
Line 259: | Line 228: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x47948D9C | ||
|} | |} | ||
Line 277: | Line 244: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x56C1551E | ||
|} | |} | ||
Line 295: | Line 260: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 || 0x3EAA8A4F | | 1.69-3.60 || 0x3EAA8A4F | ||
|} | |||
=== sceMotionDevUpdateMagnCalibData === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 1.69-3.60 || 0x787384FA | |||
|} | |||
=== sceMotionDevUpdateMagnStabilityLevel === | |||
{| class="wikitable" | |||
|- | |- | ||
| 3.60 || | ! Version !! NID | ||
|- | |||
| 1.69-3.60 || 0xEC94F683 | |||
|} | |} | ||
=== | == SceMotionDevForDriver == | ||
=== sceMotionDevGetCalibrationDataForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0xF0251700 | |||
|} | |||
=== sceMotionDevGetCalibrationHeaderForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x3B23DF55 | |||
|} | |||
=== sceMotionDevGetDeviceInfoForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.931.010-3.740.011 || 0x3E4BCBC0 | |||
|} | |||
Returns Motion device information, obtained using [[SceSyscon#sceSysconMotionGetDeviceInfoForDriver]]. | |||
<source lang="C"> | |||
typedef struct SceKernelMotionDeviceInfo { | |||
uint16_t BarkleyFwVersion; | |||
uint16_t BarkleyHwInfo; | |||
} SceKernelMotionDeviceInfo; | |||
int sceMotionDevGetDeviceInfoForDriver(SceKernelMotionDeviceInfo *pInfo); | |||
</source> | |||
=== sceMotionDevGetEvaInfoForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x5B53AC26 | |||
|} | |||
=== sceMotionDevIsReadyForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x10AAC8EA | |||
|} | |||
=== sceMotionDevNoiseFilterIsAvailableForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x11A17A96 | |||
|} | |||
=== sceMotionDevReadForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x3A3407B5 | |||
|} | |||
=== sceMotionDevRegisterVirtualMotionDriverForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x7FD06731 | |||
|} | |||
=== sceMotionDevSamplingStartForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0xC02C85AB | |||
|} | |||
=== sceMotionDevSamplingStopForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0xFD0B0785 | |||
|} | |||
=== sceMotionDevSetSamplingModeForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0xDBAF611A | |||
|} | |||
=== SceMotionDevForDriver_unk_031AF7A1 === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x031AF7A1 | |||
|} | |||
=== SceMotionDevForDriver_unk_0808D77D === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x0808D77D | |||
|} | |||
=== sceMotionDevUpdateSendCommandForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.931-3.60 || 0x09918DAE | |||
|} | |||
Requests: | |||
* 0x80 0x2: Download Mode Request | |||
* 0x81 0x12: Start Transfer Request | |||
* 0x82 0x26: Transfer Program Data | |||
* 0x83 0x2: Flash Write Request | |||
* 0x84 0x2: Download Finish Request | |||
<source lang="C"> | |||
typedef struct SceMotionDevUpdateStartTransferRequest { // Size is 0x3A on FW 0.931 | |||
uint8_t headerSize; // usually 0x10 | |||
uint8_t hwInfo; | |||
uint8_t dataType; | |||
uint8_t padding_0x7; | |||
uint16_t dataVersion; | |||
uint16_t padding_0xE; | |||
uint32_t dataSize; | |||
uint32_t address; | |||
uint16_t check_sum; // checksum of the header (0x10 bytes) | |||
uint8_t padding[0x26]; | |||
} SceMotionDevUpdateStartTransferRequest; | |||
typedef struct SceMotionDevUpdateTransferProgramDataRequest { // Size is 0x3A on FW 0.931 | |||
uint32_t offset; | |||
uint8_t programData[0x20]; | |||
uint8_t padding[0x16]; | |||
} SceMotionDevUpdateTransferProgramDataRequest; | |||
typedef struct SceMotionDevUpdateRequest { // Size is 0x3C on FW 0.931 | |||
uint8_t type; // ex: 0x80, 0x81, 0x82, 0x83, 0x84 | |||
uint8_t size; // ex: 2, 0x12, 0x26 | |||
uint8_t data[0x3A]; | |||
} SceMotionDevUpdateRequest; | |||
typedef struct SceMotionDevUpdateResponse { // Size is 0x40 on FW 0.931 | |||
SceUInt32 packetID; | |||
SceUInt32 status; | |||
char unk[0x38]; | |||
} SceMotionDevUpdateResponse; | |||
int sceMotionDevUpdateSendCommandForDriver(void *callback, SceMotionDevUpdateRequest *pRequest, SceMotionDevUpdateResponse *pResponse, SceUID *evfId); | |||
</source> | |||
=== sceMotionDevSetActiveProcessForDriver === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.990-3.60 || 0x22CD6DCA | |||
|} | |||
<source lang="C">int sceMotionDevSetActiveProcessForDriver(SceUID pid);</source> | |||
=== SceMotionDevForDriver_unk_3CD0CE14 === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x3CD0CE14 | |||
|} | |||
=== SceMotionDevForDriver_unk_77BA3A04 === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0x77BA3A04 | |||
|} | |||
=== SceMotionDevForDriver_unk_85E3C678 === | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| | | 3.60 || 0x85E3C678 | ||
|} | |||
=== sceMotionDevUpdateRestartForDriver === | |||
{| class="wikitable" | |||
|- | |- | ||
| 3.60 || | ! Version !! NID | ||
|- | |||
| 0.931-3.60 || 0xA75976EE | |||
|} | |} | ||
=== | <source lang="C">int sceMotionDevUpdateRestartForDriver(void);</source> | ||
=== SceMotionDevForDriver_unk_D7DA3DA7 === | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| | | 3.60 || 0xD7DA3DA7 | ||
|} | |||
=== SceMotionDevForDriver_unk_DB89D1BF === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |- | ||
| 3.60 || | | 3.60 || 0xDB89D1BF | ||
|} | |} | ||
== | === sceMotionDevUpdateInitForDriver === | ||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.931-3.60 || 0xFD1C528D | |||
|} | |||
<source lang="C">int sceMotionDevUpdateInitForDriver(void);</source> | |||
=== SceMotionDevForDriver_unk_FE6ECA41 === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 3.60 || 0xFE6ECA41 | |||
|} | |||
[[Category:ARM]] | |||
[[Category:Kernel]] | |||
[[Category:Modules]] | [[Category:Modules]] | ||
[[Category: | [[Category:Library]] |
Latest revision as of 00:44, 5 January 2024
Module
Version | World | Privilege |
---|---|---|
1.69-3.60 | Non-secure | Kernel |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|---|---|---|---|
1.69-3.60 | SceMotionDev | Non-secure | User | 0x1F766AC7 |
1.69-3.60 | SceMotionDevForDriver | Non-secure | Kernel | 0xA501409A |
SceMotionDev
sceMotionDevGetAccCalibData2
Version | NID |
---|---|
3.60 | 0xD582B628 |
sceMotionDevGetAccCalibData
Version | NID |
---|---|
1.69-3.60 | 0xAF014866 |
sceMotionDevGetCalibrationData
Version | NID |
---|---|
1.69-3.60 | 0x716C685B |
sceMotionDevGetCalibrationHeader
Version | NID |
---|---|
1.69-3.60 | 0xBDEC1E32 |
sceMotionDevGetControllerType
Version | NID |
---|---|
3.60 | 0xA2CD11F6 |
sceMotionDevGetCurrentMagnCalibData
Version | NID |
---|---|
1.69-3.60 | 0xAAB4B41F |
sceMotionDevGetCurrentMagnStabilityLevel
Version | NID |
---|---|
1.69-3.60 | 0x067F06D9 |
sceMotionDevGetDeviceInfo
Version | NID |
---|---|
1.69-3.60 | 0x1F1EFEFB |
sceMotionDevGetDeviceLocation
Version | NID |
---|---|
1.69-3.60 | 0x5EDEA879 |
sceMotionDevGetDs3CalibData
Version | NID |
---|---|
3.60 | 0x1FD76B5E |
sceMotionDevGetEvaInfo
Version | NID |
---|---|
3.60 | 0xE6955280 |
sceMotionDevGetFactoryMagnCalibData
Version | NID |
---|---|
1.69-3.60 | 0x777D57D2 |
sceMotionDevGetGyroBias2
Version | NID |
---|---|
3.60 | 0x12B9F05E |
sceMotionDevGetGyroBias
Version | NID |
---|---|
1.69-3.60 | 0x6D033072 |
sceMotionDevGetGyroCalibData2
Version | NID |
---|---|
3.60 | 0x160E8DE9 |
sceMotionDevGetGyroCalibData
Version | NID |
---|---|
1.69-3.60 | 0x74555D91 |
sceMotionDevGetMeasMode
Version | NID |
---|---|
3.60 | 0xEA95D3C9 |
sceMotionDevIsReady
Version | NID |
---|---|
1.69-3.60 | 0xE8A3E48E |
sceMotionDevMagnSamplingStart
Version | NID |
---|---|
1.69-3.60 | 0x16DD5913 |
sceMotionDevMagnSamplingStop
Version | NID |
---|---|
1.69-3.60 | 0xE72A35B8 |
sceMotionDevRead2
Version | NID |
---|---|
3.60 | 0xFB87948E |
sceMotionDevRead3
Version | NID |
---|---|
3.60 | 0x27954BC7 |
sceMotionDevReadForMagnCalib
Version | NID |
---|---|
1.69-3.60 | 0xCC4FDA6A |
sceMotionDevRead
Version | NID |
---|---|
1.69-3.60 | 0xC0095F0F |
sceMotionDevSamplingStart2
Version | NID |
---|---|
3.60 | 0xB51E02E8 |
sceMotionDevSamplingStart
Version | NID |
---|---|
1.69-3.60 | 0x47948D9C |
sceMotionDevSamplingStop2
Version | NID |
---|---|
3.60 | 0x9E868205 |
sceMotionDevSamplingStop
Version | NID |
---|---|
1.69-3.60 | 0x56C1551E |
sceMotionDevSetGyroFeedBack
Version | NID |
---|---|
3.60 | 0xCCAEBF59 |
sceMotionDevSetSamplingMode
Version | NID |
---|---|
1.69-3.60 | 0x3EAA8A4F |
sceMotionDevUpdateMagnCalibData
Version | NID |
---|---|
1.69-3.60 | 0x787384FA |
sceMotionDevUpdateMagnStabilityLevel
Version | NID |
---|---|
1.69-3.60 | 0xEC94F683 |
SceMotionDevForDriver
sceMotionDevGetCalibrationDataForDriver
Version | NID |
---|---|
3.60 | 0xF0251700 |
sceMotionDevGetCalibrationHeaderForDriver
Version | NID |
---|---|
3.60 | 0x3B23DF55 |
sceMotionDevGetDeviceInfoForDriver
Version | NID |
---|---|
0.931.010-3.740.011 | 0x3E4BCBC0 |
Returns Motion device information, obtained using SceSyscon#sceSysconMotionGetDeviceInfoForDriver.
typedef struct SceKernelMotionDeviceInfo { uint16_t BarkleyFwVersion; uint16_t BarkleyHwInfo; } SceKernelMotionDeviceInfo; int sceMotionDevGetDeviceInfoForDriver(SceKernelMotionDeviceInfo *pInfo);
sceMotionDevGetEvaInfoForDriver
Version | NID |
---|---|
3.60 | 0x5B53AC26 |
sceMotionDevIsReadyForDriver
Version | NID |
---|---|
3.60 | 0x10AAC8EA |
sceMotionDevNoiseFilterIsAvailableForDriver
Version | NID |
---|---|
3.60 | 0x11A17A96 |
sceMotionDevReadForDriver
Version | NID |
---|---|
3.60 | 0x3A3407B5 |
sceMotionDevRegisterVirtualMotionDriverForDriver
Version | NID |
---|---|
3.60 | 0x7FD06731 |
sceMotionDevSamplingStartForDriver
Version | NID |
---|---|
3.60 | 0xC02C85AB |
sceMotionDevSamplingStopForDriver
Version | NID |
---|---|
3.60 | 0xFD0B0785 |
sceMotionDevSetSamplingModeForDriver
Version | NID |
---|---|
3.60 | 0xDBAF611A |
SceMotionDevForDriver_unk_031AF7A1
Version | NID |
---|---|
3.60 | 0x031AF7A1 |
SceMotionDevForDriver_unk_0808D77D
Version | NID |
---|---|
3.60 | 0x0808D77D |
sceMotionDevUpdateSendCommandForDriver
Version | NID |
---|---|
0.931-3.60 | 0x09918DAE |
Requests:
- 0x80 0x2: Download Mode Request
- 0x81 0x12: Start Transfer Request
- 0x82 0x26: Transfer Program Data
- 0x83 0x2: Flash Write Request
- 0x84 0x2: Download Finish Request
typedef struct SceMotionDevUpdateStartTransferRequest { // Size is 0x3A on FW 0.931 uint8_t headerSize; // usually 0x10 uint8_t hwInfo; uint8_t dataType; uint8_t padding_0x7; uint16_t dataVersion; uint16_t padding_0xE; uint32_t dataSize; uint32_t address; uint16_t check_sum; // checksum of the header (0x10 bytes) uint8_t padding[0x26]; } SceMotionDevUpdateStartTransferRequest; typedef struct SceMotionDevUpdateTransferProgramDataRequest { // Size is 0x3A on FW 0.931 uint32_t offset; uint8_t programData[0x20]; uint8_t padding[0x16]; } SceMotionDevUpdateTransferProgramDataRequest; typedef struct SceMotionDevUpdateRequest { // Size is 0x3C on FW 0.931 uint8_t type; // ex: 0x80, 0x81, 0x82, 0x83, 0x84 uint8_t size; // ex: 2, 0x12, 0x26 uint8_t data[0x3A]; } SceMotionDevUpdateRequest; typedef struct SceMotionDevUpdateResponse { // Size is 0x40 on FW 0.931 SceUInt32 packetID; SceUInt32 status; char unk[0x38]; } SceMotionDevUpdateResponse; int sceMotionDevUpdateSendCommandForDriver(void *callback, SceMotionDevUpdateRequest *pRequest, SceMotionDevUpdateResponse *pResponse, SceUID *evfId);
sceMotionDevSetActiveProcessForDriver
Version | NID |
---|---|
0.990-3.60 | 0x22CD6DCA |
int sceMotionDevSetActiveProcessForDriver(SceUID pid);
SceMotionDevForDriver_unk_3CD0CE14
Version | NID |
---|---|
3.60 | 0x3CD0CE14 |
SceMotionDevForDriver_unk_77BA3A04
Version | NID |
---|---|
3.60 | 0x77BA3A04 |
SceMotionDevForDriver_unk_85E3C678
Version | NID |
---|---|
3.60 | 0x85E3C678 |
sceMotionDevUpdateRestartForDriver
Version | NID |
---|---|
0.931-3.60 | 0xA75976EE |
int sceMotionDevUpdateRestartForDriver(void);
SceMotionDevForDriver_unk_D7DA3DA7
Version | NID |
---|---|
3.60 | 0xD7DA3DA7 |
SceMotionDevForDriver_unk_DB89D1BF
Version | NID |
---|---|
3.60 | 0xDB89D1BF |
sceMotionDevUpdateInitForDriver
Version | NID |
---|---|
0.931-3.60 | 0xFD1C528D |
int sceMotionDevUpdateInitForDriver(void);
SceMotionDevForDriver_unk_FE6ECA41
Version | NID |
---|---|
3.60 | 0xFE6ECA41 |