Difference between revisions of "SceKernelDmacMgr"

From Vita Development Wiki
Jump to navigation Jump to search
Line 80: Line 80:
 
! Module !! Name
 
! Module !! Name
 
|-
 
|-
| SceSblSsMgr || SceSblDmac5Common
+
| SceSblSsMgr || SceSblDmac5Common, Dmac5Test_Direct
 
|-
 
|-
 
| SceDisplay || SceDisplay
 
| SceDisplay || SceDisplay
Line 89: Line 89:
 
|}
 
|}
  
<source lang="C">int sceKernelDmaOpAllocForDriver(char* name);</source>
+
<source lang="C">int sceKernelDmaOpAllocForDriver(const char* name);</source>
  
 
=== sceKernelDmaOpAssignForDriver ===
 
=== sceKernelDmaOpAssignForDriver ===

Revision as of 09:56, 5 November 2019

Module

Known NIDs

Version Name World Privilege NID
1.69 SceKernelDmacMgr Non-secure Kernel 0x67E3D2D2
3.60 SceKernelDmacMgr Non-secure Kernel 0xF926C804

Libraries

Known NIDs

Version Name World Visibility NID
1.69-3.60 SceDmacmgrForDriver Non-secure Kernel 0xEB4E3738
0.990 SceDmacmgr Non-secure User not present
3.60 SceDmacmgr Non-secure User 0xA9E5B2F0

Data segment layout

Address Size Description
0x0000 0x04 void* SceDmacmgrDmac0Reg membase
0x0004 0x04 void* SceDmacmgrDmac1Reg membase
0x0008 0x04 void* SceDmacmgrDmac2Reg membase
0x000C 0x04 void* SceDmacmgrDmac3Reg membase
0x0010 0x04 void* SceDmacmgrDmac4Reg membase
0x0014 0x04 void* SceDmacmgrDmac5Reg membase
0x0018 0x04 void* SceDmacmgrDmac6Reg membase
0x001C 0x1284

SceDmacmgrForDriver

sceKernelDmaOpSetupChainForDriver

Version NID
0.990-3.60 0x167079FC

sceKernelDmaOpQuitForDriver

Version NID
0.990-3.60 0x03052D0D

sceKernelDmaOpAllocForDriver

Version NID
0.990-3.60 0x7CD5088A

Usages:

Module Name
SceSblSsMgr SceSblDmac5Common, Dmac5Test_Direct
SceDisplay SceDisplay
SceAudio SceSrcMix%d%d
SceCodecEngineWrapper SceVeneziaDmacMemcpy%02u, SceHwd0DmacMemcpy%02u
int sceKernelDmaOpAllocForDriver(const char* name);

sceKernelDmaOpAssignForDriver

Version NID
0.990-3.60 0xFCE4171A

Executes Dmac5 command.

int sceKernelDmaOpAssignForDriver(int id, int unk1, int unk2);

sceKernelDmaOpFreeForDriver

Version NID
0.990-3.60 0xADFF1186
int sceKernelDmaOpFreeForDriver(int id);

sceKernelDmaOpConcatenateForDriver

Version NID
0.990-3.60 0xA4454DEA

sceKernelDmaOpEnQueueForDriver

Version NID
0.990-3.60 0x543F54CF

sceKernelDmaOpDeQueueForDriver

Version NID
0.990-3.60 0x7433F70F

sceKernelDmaOpSetCallbackForDriver

Version NID
0.990-3.60 0xCF627CFD

sceKernelDmaOpSyncForDriver

Version NID
0.990-3.60 0x397A917C

sceKernelDmacMemcpyForDriver

Version NID
0.990-3.60 0x00896B11

sceKernelDmacMemsetForDriver

Version NID
0.990-3.60 0x4BAC049B

sceKernelDmaOpSetupDirectForDriver

Version NID
0.990-3.60 0x01A599E0

sceKernelDmacMemcpyAsyncForDriver

Version NID
0.990 0x6E81B8BF
3.60 not present

sceKernelDmacMemsetAsyncForDriver

Version NID
0.990 0x6FD7F708
3.60 not present

SceDmacmgrForDriver_BCBB5E85

Version NID
0.990-3.60 0xBCBB5E85

A big function. TO RE.

SceDmacmgrForDriver_893FCB80_not_implemented

Version NID
0.990-3.60 0x893FCB80

On FW 0.990 simply returns SCE_KERNEL_ERROR_NOT_IMPLEMENTED.

SceDmacmgr

This library doesn't exist on FW 0.990.

sceDmacMemcpy

Version NID
3.60 0x9B2FF739

sceDmacMemset

Version NID
3.60 0xA4C33F11