vitasdk
Documentation of the vitasdk

Exports for Kernel. More...

Data Structures

struct  SceKernelMemBlockInfo
 
struct  SceKernelAllocMemBlockKernelOpt
 
struct  SceKernelHeapMemoryOpt
 Options and mapping results for heap allocation. More...
 
struct  SceKernelAllocMemBlockInfo
 
struct  SceKernelMemBlockInfoCore
 
struct  SceKernelMemBlockInfoEx
 
struct  SceKernelProcessContext
 
struct  SceKernelHeapCreateOpt
 
struct  SceAllocOpt
 
struct  SceClass
 
struct  SceObjectBase
 
struct  SceGUIDKernelCreateOpt
 
union  SceKernelHeapCreateOpt.__unnamed55__
 
union  SceObjectBase.__unnamed57__
 
struct  SceObjectBase.__unnamed57__.__unnamed59__
 
union  SceGUIDKernelCreateOpt.__unnamed61__
 

Macros

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDRAM_L1WBWA_RW   (0x09404060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDRAM_R   (0x09408040)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDRAM_RW   (0x09408060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_DEVICE_RW   (0x0C200860)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_R   (0x0C20D040)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_RW   (0x0C20D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_NC_RW   (0x0C208060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_GAME_RW   (0x0C50D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_RW   (0x0C80D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_NC_RW   (0x0D808060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_CDIALOG_RW   (0x0CA0D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_CDIALOG_NC_RW   (0x0CA08060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_TOOL_RW   (0x0CF0D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_TOOL_NC_RW   (0x0CF08060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_R   (0x0E20D040)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_RW   (0x0E20D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_NC_R   (0x0E208040)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_NC_RW   (0x0E208060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_RW_UNCACHE   (0x0C208060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_RW   (0x0C20D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_NC_RW   (0x0CF08060)
 
#define ksceKernelFindMemBlockByAddrForPid(pid, addr, size)   ksceKernelFindProcMemBlockByAddr(pid, addr, size)
 
#define ksceKernelMapBlockUserVisible(uid)   ksceKernelMapMemBlock(uid)
 
#define ksceKernelRemapBlock(uid, type)   ksceKernelRemapMemBlock(uid, type)
 
#define ksceKernelMapUserBlock(name, permission, flags, user_buf, size, kernel_page, kernel_size, kernel_offset)   ksceKernelUserMapWithFlags(name, permission, flags, user_buf, size, kernel_page, kernel_size, kernel_offset)
 
#define ksceKernelMapUserBlockDefaultType(name, permission, user_buf, size, kernel_page, kernel_size, kernel_offset)   ksceKernelUserMap(name, permission, user_buf, size, kernel_page, kernel_size, kernel_offset)
 
#define ksceKernelMapUserBlockDefaultTypeForPid(pid, name, permission, user_buf, size, kernel_page, kernel_size, kernel_offset)   ksceKernelProcUserMap(pid, name, permission, user_buf, size, kernel_page, kernel_size, kernel_offset)
 
#define ksceKernelMemBlockRelease(uid)   ksceKernelUserUnmap(uid)
 
#define ksceKernelMemRangeRetain(addr, size)   ksceKernelLockRange(addr, size)
 
#define ksceKernelMemRangeRetainForPid(pid, addr, size)   ksceKernelLockRangeProc(pid, addr, size)
 
#define ksceKernelMemRangeRetainWithPerm(perm, addr, size)   ksceKernelLockRangeWithMode(perm, addr, size)
 
#define ksceKernelMemRangeRelease(addr, size)   ksceKernelUnlockRange(addr, size)
 
#define ksceKernelMemRangeReleaseForPid(pid, addr, size)   ksceKernelUnlockRangeProc(pid, addr, size)
 
#define ksceKernelMemRangeReleaseWithPerm(perm, addr, size)   ksceKernelUnlockRangeWithMode(perm, addr, size)
 
#define ksceKernelGetPidContext   ksceKernelProcessGetContext
 
#define ksceKernelSwitchPidContext   ksceKernelProcessSwitchContext
 
#define ksceKernelGetPaddr(va, pa)   ksceKernelVAtoPA(va, pa)
 
#define ksceKernelGetPaddrList(input, list)   ksceKernelVARangeToPAVector((const SceKernelVARange *)input, list)
 
#define ksceKernelMemcpyUserToKernel(__dst__, __src__, __len__)   ksceKernelCopyFromUser((__dst__), (__src__), (__len__))
 
#define ksceKernelMemcpyUserToKernelForPid(__pid__, __dst__, __src__, __len__)   ksceKernelCopyFromUserProc((__pid__), (__dst__), (__src__), (__len__))
 
#define ksceKernelMemcpyKernelToUser(__dst__, __src__, __len__)   ksceKernelCopyToUser((__dst__), (__src__), (__len__))
 
#define ksceKernelMemcpyToUserRo(__dst__, __src__, __len__)   ksceKernelCopyToUserDomain((__dst__), (__src__), (__len__))
 
#define ksceKernelMemcpyToUserRx(__dst__, __src__, __len__)   ksceKernelCopyToUserTextDomain((__dst__), (__src__), (__len__))
 
#define ksceKernelRxMemcpyKernelToUserForPid(__pid__, __dst__, __src__, __len__)   ksceKernelCopyToUserProcTextDomain((__pid__), (__dst__), (__src__), (__len__))
 
#define ksceKernelMemcpyFromUser(__dst__, __src__, __len__)   ksceKernelCopyFromUser(__dst__, __src__, __len__)
 
#define ksceKernelProcMemcpyFromUser(__pid__, __dst__, __src__, __len__)   ksceKernelCopyFromUserProc(__pid__, __dst__, __src__, __len__)
 
#define ksceKernelMemcpyToUser(__dst__, __src__, __len__)   ksceKernelCopyToUser(__dst__, __src__, __len__)
 
#define ksceKernelProcMemcpyToUser(__pid__, __dst__, __src__, __len__)   ksceKernelCopyToUserProc(__pid__, __dst__, __src__, __len__)
 
#define ksceKernelUserMemcpy(__dst__, __src__, __len__)   ksceKernelCopyFromToUser(__dst__, __src__, __len__)
 
#define ksceKernelProcUserMemcpy(__pid__, __dst__, __src__, __len__)   ksceKernelCopyFromToUserProc(__pid__, __dst__, __src__, __len__)
 
#define ksceKernelProcMemcpyToUserRx(__pid__, __dst__, __src__, __len__)   ksceKernelCopyToUserProcTextDomain(__pid__, __dst__, __src__, __len__)
 
#define ksceKernelStrncpyUserToKernel(__dst__, __src__, __len__)   ksceKernelStrncpyFromUser((__dst__), (__src__), (__len__))
 
#define ksceKernelStrncpyUserForPid(__pid__, __dst__, __src__, __len__)   ksceKernelStrncpyFromUserProc((__pid__), (__dst__), (__src__), (__len__))
 
#define ksceKernelStrncpyKernelToUser(__dst__, __src__, __len__)   ksceKernelStrncpyToUser((__dst__), (__src__), (__len__))
 
#define ksceKernelProcStrncpyFromUser(__pid__, __dst__, __src__, __len__)   ksceKernelStrncpyFromUserProc((__pid__), (__dst__), (__src__), (__len__))
 
#define ksceKernelProcStrncpyToUser(__pid__, __dst__, __src__, __len__)   ksceKernelStrncpyToUserProc((__pid__), (__dst__), (__src__), (__len__))
 
#define ksceKernelStrnlenUser(__s__, __n__)   ksceKernelStrnlenFromUser(__s__, __n__)
 
#define ksceKernelProcStrnlenUser(__pid__, __s__, __n__)   ksceKernelStrnlenFromUserProc(__pid__, __s__, __n__)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_MAIN_R   (0x0320D040)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_MAIN_RX   (0x0320D050)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_MAIN_RW   (0x0320D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_SHARED_R   (0x0390D040)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_SHARED_RX   (0x0390D050)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_SHARED_RW   (0x0390D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_CDIALOG_R   (0x03A0D040)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_CDIALOG_RX   (0x03A0D050)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_CDIALOG_RW   (0x03A0D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_TOOL_R   (0x03F0D040)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_TOOL_RX   (0x03F0D050)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_TOOL_RW   (0x03F0D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_SO_R   (0x0B100240)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_SO_RW   (0x0B100260)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_DEVICE_R   (0x0B100840)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_DEVICE_RW   (0x0B100860)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_R   (0x08F0D040)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_RX   (0x08F0D050)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_RW   (0x08F0D060)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_UNK_RW   (0x08F0D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_RX   (0x0C20D050)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_R   (0x0C80D040)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_NC_R   (0x0D808040)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_TOOL_RX   (0x0CF0D050)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_RX   (0x0E20D050)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_UNK_0720D006_RW   (0x0720D006) /* SCE_KERNEL_ERROR_ILLEGAL_PARTITION_INDEX */
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_SO_RW   (0x10200206)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_DEVICE_RW   (0x10200806)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_L1WBWA_RW   (0x10204006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_NC_R   (0x10208004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_NC_RW   (0x10208006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_R   (0x1020D004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_RX   (0x1020D005)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_RW   (0x1020D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_R   (0x1080D004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_RW   (0x1080D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_NC_R   (0x30808004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_NC_RW   (0x30808006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_GAME_RW   (0x1050D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_CDIALOG_R   (0x10A0D004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_CDIALOG_RW   (0x10A0D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_UMAIN_NC_RW   (0x10C08006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_UMAIN_RW   (0x10C0D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_R   (0x10F0D004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_RX   (0x10F0D005)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_RW   (0x10F0D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_NC_R   (0x10F08004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_NC_RW   (0x10F08006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_R   (0x1220D004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_RW   (0x1220D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_NC_R   (0x13208004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_NC_RW   (0x13208006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_SO_R   (0x20100204)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_SO_RW   (0x20100206)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_R   (0x20100804)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_RW   (0x20100806)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_NC_R   (0x20108004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_NC_RW   (0x20108006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_CDRAM_L1WBWA_RW   (0x40404006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_CDRAM_RW   (0x40408006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_NC_R   (0x60208004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_NC_RW   (0x60208006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_R   (0x6020D004)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_RW   (0x6020D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_GAME_RW   (0x6050D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_KMP_GAME_RW   (0xC050D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_KMP_TOOL_RW   (0xC0F0D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_UNK_11208006_NC_RW   (0x11208006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_UNK_60208014_NC_R   (0x60208014)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_UNK_60208016_NC_RW   (0x60208016)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_SHARED_RX   (0x0390D050)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_USER_RX   (0x0C20D050)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_RX   (0x1020D005)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_RW   (0x1020D006)
 
#define SCE_KERNEL_MEMBLOCK_TYPE_RW_UNK0   (0x6020D006)
 
#define ksceKernelCreateClass(cls, name, uidclass, itemsize, create, destroy)   ksceUIDClassInitClass(cls, name, uidclass, itemsize, create, destroy)
 
#define ksceKernelGetUidClass()   ksceKernelGetUIDClass()
 
#define ksceKernelGetUidDLinkClass()   ksceKernelGetUIDDLinkClass()
 
#define ksceKernelGetUidHeapClass()   ksceKernelGetUIDHeapClass()
 
#define ksceKernelGetUidMemBlockClass()   ksceKernelGetUIDMemBlockClass()
 
#define ksceKernelCreateUidObj(sce_class, name, opt, obj)   ksceGUIDKernelCreateWithOpt(sce_class, name, opt, obj)
 
#define ksceKernelDeleteUid(guid)   ksceGUIDClose(guid)
 
#define ksceKernelGetObjForUid(guid, sce_class, object)   ksceGUIDReferObjectWithClass(guid, sce_class, object)
 
#define ksceKernelUidRelease(guid)   ksceGUIDReleaseObject(guid)
 
#define ksceKernelKernelUidForUserUid(pid, puid)   kscePUIDtoGUID(pid, puid)
 
#define ksceKernelCreateUserUid(pid, guid)   kscePUIDOpenByGUID(pid, guid)
 
#define ksceKernelDeleteUserUid(pid, puid)   kscePUIDClose(pid, puid)
 

Typedefs

typedef SceUInt32 SceKernelMemBlockType
 
typedef SceKernelAllocMemBlockKernelOpt SceKernelAllocMemBlockOptKernel
 
typedef struct SceUIDPhyMemPartObject SceUIDPhyMemPartObject
 Opaque class-specific data for a physical-memory-partition UID object.
 
typedef struct SceKernelObject SceKernelObject
 Opaque class-specific data returned by the GUID and PUID object APIs.
 
typedef int(* SceClassCallback) (void *item)
 
typedef SceGUIDKernelCreateOpt SceCreateUidObjOpt
 

Enumerations

enum  SceKernelMemoryType { SCE_KERNEL_MEMORY_TYPE_NORMAL_NC = 0x80 , SCE_KERNEL_MEMORY_TYPE_NORMAL = 0xD0 }
 
enum  SceKernelAllocMemBlockAttr {
  SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_VBASE = 0x00000001U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PBASE = 0x00000002U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_ALIGNMENT = 0x00000004U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_EXTRA_LOW = 0x00000008U ,
  SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_EXTRA_HIGH = 0x00000010U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_OPEN_RESTRICTIONS = 0x00000020U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_BASE = 0x00000040U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PID = 0x00000080U ,
  SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_BASENAME = 0x00000200U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PPAV = 0x00001000U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_ROUNDUP = 0x00002000U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_ENABLE_OPEN = 0x00004000U ,
  SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_DOMAIN = 0x00010000U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_DONT_MAP = 0x00040000U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_PHYCONT = 0x00200000U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_SKIP_ZERO_FILL = 0x00400000U ,
  SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_SHARE_VBASE = 0x00800000U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_SHARE_PHYPAGE = 0x01000000U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_ALLOW_PARTIAL_OP = 0x04000000U , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_0x20 = SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_OPEN_RESTRICTIONS ,
  SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_0x4000 = SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_ENABLE_OPEN , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PADDR = SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PBASE , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_MIRROR_BLOCKID = SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_BASE , SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PADDR_LIST = SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PPAV ,
  SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_UNK = SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_SKIP_ZERO_FILL
}
 
enum  SceKernelModel { SCE_KERNEL_MODEL_VITA = 0x10000 , SCE_KERNEL_MODEL_VITATV = 0x20000 }
 
enum  SceKernelMemoryRefPerm {
  SCE_KERNEL_MEMORY_REF_PERM_ANY = 0 , SCE_KERNEL_MEMORY_REF_PERM_USER_R = 0x01 , SCE_KERNEL_MEMORY_REF_PERM_USER_W = 0x02 , SCE_KERNEL_MEMORY_REF_PERM_USER_X = 0x04 ,
  SCE_KERNEL_MEMORY_REF_PERM_KERN_R = 0x10 , SCE_KERNEL_MEMORY_REF_PERM_KERN_W = 0x20 , SCE_KERNEL_MEMORY_REF_PERM_KERN_X = 0x40
}
 
enum  SceKernelHeapMemoryMappingAction { SCE_KERNEL_HEAP_MEMORY_MAPPING_ACTION_NONE = 0 , SCE_KERNEL_HEAP_MEMORY_MAPPING_ACTION_MAP = 1 , SCE_KERNEL_HEAP_MEMORY_MAPPING_ACTION_UNMAP = 2 }
 
enum  SceKernelHeapAttr { SCE_KERNEL_HEAP_ATTR_HAS_AUTO_EXTEND = 0x00000001 , SCE_KERNEL_HEAP_ATTR_HAS_MEMORY_TYPE = 0x00000400 }
 

Functions

 VITASDK_BUILD_ASSERT_EQ (4, SceKernelMemBlockType)
 
 VITASDK_BUILD_ASSERT_EQ (0x18, SceKernelMemBlockInfo)
 
 VITASDK_BUILD_ASSERT_EQ (0x58, SceKernelAllocMemBlockKernelOpt)
 
SceUID ksceKernelAllocMemBlock (const char *name, SceKernelMemBlockType type, SceSize size, SceKernelAllocMemBlockKernelOpt *opt)
 Allocates a new memory block.
 
int ksceKernelFreeMemBlock (SceUID uid)
 Frees new memory block.
 
int ksceKernelGetMemBlockBase (SceUID uid, void **base)
 Gets the base address of a memory block.
 
int ksceKernelGetMemBlockType (SceUID uid, unsigned int *type)
 Gets the memory block type of a memory block.
 
SceUID ksceKernelFindMemBlockByAddr (const void *addr, SceSize size)
 Find the SceUID of a memory block.
 
SceUID ksceKernelFindProcMemBlockByAddr (SceUID pid, const void *addr, SceSize size)
 Find the SceUID of a memory block in a process.
 
int ksceKernelGetMemBlockAllocMapSize (SceUID memid, SceSize *alloc_map_size)
 Get the AllocMapSize of a MemBlock.
 
int ksceKernelMapMemBlock (SceUID uid)
 Map a memblock.
 
int ksceKernelMapMemBlockWithFlag (SceUID uid, int flag)
 Map a memblock.
 
int ksceKernelRemapMemBlock (SceUID uid, SceKernelMemBlockType type)
 Changes the block type.
 
int ksceKernelUnmapMemBlock (SceUID uid)
 Unmap a memblock.
 
SceUID ksceKernelUserMap (const char *name, int permission, const void *user_buf, SceSize size, void **kernel_page, SceSize *kernel_size, SceUInt32 *kernel_offset)
 The mapping user address space to kernel.
 
SceUID ksceKernelProcUserMap (SceUID pid, const char *name, int permission, const void *user_buf, SceSize size, void **kernel_page, SceSize *kernel_size, SceUInt32 *kernel_offset)
 The mapping user address space to kernel with process.
 
SceUID ksceKernelUserMapWithFlags (const char *name, int permission, int flags, const void *user_buf, SceSize size, void **kernel_page, SceSize *kernel_size, unsigned int *kernel_offset)
 The mapping user address space to kernel with flags.
 
int ksceKernelUserUnmap (SceUID uid)
 Frees a memblock mapped with ksceKernelUserMap.
 
int ksceKernelLockRange (void *addr, SceSize size)
 Locks a memory range.
 
int ksceKernelLockRangeProc (ScePID pid, void *addr, SceSize size)
 Locks a memory range for a process (pid)
 
int ksceKernelLockRangeWithMode (SceKernelMemoryRefPerm perm, void *addr, SceSize size)
 Locks a memory range, checking for a given permission.
 
int ksceKernelUnlockRange (void *addr, SceSize size)
 Unlocks a memory range.
 
int ksceKernelUnlockRangeProc (ScePID pid, void *addr, SceSize size)
 Unlocks a memory range for a process (pid)
 
int ksceKernelUnlockRangeWithMode (SceKernelMemoryRefPerm perm, void *addr, SceSize size)
 Unlocks a memory range checking for a given permission.
 
SceUID ksceKernelAllocPartitionMemBlock (SceUID part, const char *name, SceKernelMemBlockType type, SceSize size, const SceKernelAllocMemBlockOptKernel *pOpt)
 
int ksceKernelFreeSimpleMemBlock (void *a1)
 
 VITASDK_BUILD_ASSERT_EQ (0x14, SceKernelHeapMemoryOpt)
 
 VITASDK_BUILD_ASSERT_EQ (0x14, SceKernelAllocMemBlockInfo)
 
 VITASDK_BUILD_ASSERT_EQ (0x2C, SceKernelMemBlockInfoCore)
 
 VITASDK_BUILD_ASSERT_EQ (0xB8, SceKernelMemBlockInfoEx)
 
SceUID ksceGUIDCreate (SceClass *object_class, const char *name, SceUID reference_guid, SceKernelObject **object)
 Creates a global UID object, optionally relative to reference_guid.
 
int ksceGUIDGetClass (SceUID guid, SceClass **object_class)
 Gets the class of a global UID object.
 
int ksceGUIDGetName (SceUID guid, const char **name)
 Gets the read-only name owned by a live global UID.
 
int ksceGUIDGetObject (SceUID guid, SceKernelObject **object)
 Gets the class-specific object data for a global UID without taking a reference.
 
SceUID ksceGUIDKernelCreate (SceClass *object_class, const char *name, SceKernelObject **object)
 Creates a kernel-owned global UID object with the default attributes.
 
const char * ksceGUIDName (SceUID guid)
 Returns the read-only name of a live global UID.
 
SceUID ksceGUIDOpenByName (const char *name)
 Opens a named global UID object.
 
int ksceGUIDReferObjectWithLevel (SceUID guid, SceUInt32 visibility_level, SceKernelObject **object)
 Takes a reference to a global UID at visibility level 0 through 7.
 
int ksceGUIDReferObjectWithSubclass (SceUID guid, SceClass *object_class, SceKernelObject **object)
 Takes a reference to a global UID object when its class derives from object_class.
 
int ksceGUIDSetName (SceUID guid, const char *name)
 Replaces the name of a global UID object.
 
void * ksceKernelAllocHeapMemoryWithOpt (SceUID heap_id, SceSize size, SceKernelHeapMemoryOpt *opt)
 Allocates from the heap identified by heap_id.
 
SceUID ksceKernelAllocMemBlockWithInfo (const char *name, SceKernelMemBlockType type, SceSize vsize, const SceKernelAllocMemBlockOptKernel *opt, SceKernelAllocMemBlockInfo *info)
 Allocates a memory block and returns its mapping information.
 
void * ksceKernelAllocUncacheHeapMemory (SceSize size)
 
void * ksceKernelAllocUncacheHeapMemoryWithOption (SceSize size, SceKernelHeapMemoryOpt *opt)
 
int ksceKernelCountFillValue64FromUser (const SceUInt64 *ptr, SceUInt64 value, SceSize byte_size)
 Counts the bytes at the start of a user-memory range in the calling process that match a repeated 64-bit value.
 
int ksceKernelCountFillValue64FromUserProc (ScePID pid, const SceUInt64 *ptr, SceUInt64 value, SceSize byte_size)
 Counts the bytes at the start of another process's user-memory range that match a repeated 64-bit value.
 
int ksceKernelCountFillValueFromUser (const SceUInt32 *ptr, SceUInt32 value, SceSize byte_size)
 Counts the bytes at the start of a user-memory range in the calling process that match a repeated 32-bit value.
 
int ksceKernelCountFillValueFromUserProc (ScePID pid, const SceUInt32 *ptr, SceUInt32 value, SceSize byte_size)
 Counts the bytes at the start of another process's user-memory range that match a repeated 32-bit value.
 
int ksceKernelDecRefCountMemBlock (SceUID uid)
 Decrements a memblock's internal range/reference counter.
 
int ksceKernelFreeUncacheHeapMemory (void *ptr)
 
int ksceKernelGetMemBlockInfo (SceUID uid, SceUInt32 visibility_level, SceKernelMemBlockInfoEx *info)
 Gets extended memblock information at visibility level 0 through 7.
 
int ksceKernelGetMemBlockMappedBase (SceUID uid, void **base)
 Gets the currently mapped base of a memblock.
 
int ksceKernelGetMemBlockMemtypeByAddr (const void *addr)
 Gets the internal memory type for an address.
 
int ksceKernelGetMemBlockPARange (SceUID uid, SceKernelPARange *pa_range)
 Gets the single physical range backing a memblock.
 
int ksceKernelGetMemBlockPAVector (SceUID uid, SceKernelPAVector *pa_vector)
 Gets the physical-range vector backing a memblock.
 
int ksceKernelGetMemBlockVBase (SceUID uid, void **base)
 Gets the virtual base reserved for a memblock.
 
int ksceKernelGetPhysicalMemoryType (const void *vaddr)
 Classifies the physical region containing a virtual address.
 
int ksceKernelIncRefCountMemBlock (SceUID uid)
 Increments a memblock's internal range/reference counter.
 
int ksceKernelIsAccessibleRange (SceUInt32 permission, const void *va, SceSize len)
 permission is a bitwise OR of SceKernelMemoryRefPerm values.
 
int ksceKernelIsAccessibleRangeProc (ScePID pid, SceUInt32 permission, const void *va, SceSize len)
 permission is a bitwise OR of SceKernelMemoryRefPerm values.
 
int ksceKernelIsEqualAccessibleRangeProcBySW (ScePID pid, SceUInt32 permission, const void *va, SceSize len)
 Checks whether a range has exactly the requested software permissions.
 
int ksceKernelMemBlockGetInfoEx (SceUID uid, SceKernelMemBlockInfoEx *info)
 Gets extended memblock information at visibility level 7.
 
int ksceKernelMemBlockType2Memtype (SceKernelMemBlockType type)
 Gets the internal memory-type class associated with a memblock type.
 
int ksceKernelMemBlockTypeGetPrivileges (SceKernelMemBlockType type)
 Gets the memory permissions associated with a memblock type.
 
int ksceKernelProcModeVAtoPA (ScePID pid, SceUInt32 permission, const void *va, void **pa)
 Translates an address in another process after applying an MMU access mode.
 
int ksceKernelVARangeToPARangeByHW (const SceKernelVARange *v_range, SceKernelPARange *pa_range)
 
int ksceKernelVARangeToPARangeBySW (const SceKernelVARange *v_range, SceKernelPARange *pa_range)
 
int ksceKernelVARangeToPAVectorByHW (const SceKernelVARange *v_range, SceKernelPAVector *pa_vector)
 
int ksceKernelVARangeToPAVectorBySW (const SceKernelVARange *v_range, SceKernelPAVector *pa_vector)
 
int ksceKernelVAtoPABySW (const void *va, void **pa)
 
int kscePUIDGetClass (ScePID pid, SceUID puid, SceClass **object_class)
 Gets the class of an object in a process-local UID namespace.
 
int kscePUIDGetName (ScePID pid, SceUID puid, const char **name)
 Gets the read-only name owned by a process-local UID entry.
 
int kscePUIDGetObject (ScePID pid, SceUID puid, SceKernelObject **object)
 Gets the class-specific object data for a process-local UID without taking a reference.
 
SceUID kscePUIDOpenByGUIDWithFlags (ScePID pid, SceUID guid, SceUInt32 flags)
 Opens a global UID in a process-local UID namespace.
 
SceUID kscePUIDOpenByName (ScePID pid, const char *name)
 Opens a named object in a process-local UID namespace.
 
SceUID kscePUIDOpenByNameWithClass (ScePID pid, const char *name, SceClass *object_class)
 Opens a named object of the required class in a process-local UID namespace.
 
int kscePUIDSetName (ScePID pid, SceUID puid, const char *name)
 Replaces the name of a process-local UID entry.
 
SceUID kscePUIDtoGUIDWithClass (ScePID pid, SceUID puid, SceClass *object_class)
 Resolves a process-local UID to its global UID, requiring object_class.
 
int ksceKernelVAtoPA (const void *va, uintptr_t *pa)
 Get the physical address of a given virtual address.
 
int ksceKernelVARangeToPARange (const SceKernelVARange *va_range, SceKernelPARange *pa_range)
 Get the physical address range of a given virtual address range.
 
int ksceKernelVARangeToPAVector (const SceKernelVARange *va_range, SceKernelPAVector *pa_vector)
 Get the physical address list of a given virtual address range.
 
 VITASDK_BUILD_ASSERT_EQ (0xC, SceKernelProcessContext)
 
int ksceKernelProcessGetContext (SceUID pid, SceKernelProcessContext **ctx)
 Get the process context.
 
int ksceKernelProcessSwitchContext (const SceKernelProcessContext *new_context, SceKernelProcessContext *prev_context)
 Switch the process context.
 
int ksceKernelAddressSpaceFreeAllMemBlock (SceUID guid)
 
int ksceKernelAddressSpaceSetPhyMemPart (SceUID guid, SceUInt32 index, void *pPhyMemPart)
 
int ksceKernelAddressSpaceUnmap (SceUID uid, int a2, int a3, void *addr, SceSize size)
 
int ksceKernelAddressSpaceVAtoPA (void *pAS, SceUInt32 mode, void *pVA, void **pPA)
 
SceUID ksceKernelCreateAddressSpace (SceUID pid, const char *name, SceUInt32 type, void *pOpt)
 
int ksceKernelDeleteAddressSpace (SceUID guid)
 
int ksceKernelCopyFromUser (void *dst, const void *src, SceSize len)
 Memcpy from user memory.
 
int ksceKernelCopyFromUserProc (SceUID pid, void *dst, const void *src, SceSize len)
 Memcpy from user memory with process.
 
int ksceKernelCopyToUser (void *dst, const void *src, SceSize len)
 Memcpy to user memory.
 
int ksceKernelCopyToUserProc (SceUID pid, void *dst, const void *src, SceSize len)
 Memcpy from user memory with process.
 
int ksceKernelCopyToUserDomain (void *dst, const void *src, SceSize len)
 Memcpy to user RO memory.
 
int ksceKernelCopyToUserTextDomain (void *dst, const void *src, SceSize len)
 Memcpy to user RO memory with DcacheAndL2WritebackRange.
 
int ksceKernelCopyToUserProcTextDomain (SceUID pid, void *dst, const void *src, SceSize len)
 Memcpy to user RX memory with process.
 
SceSSize ksceKernelStrncpyFromUser (char *dst, const char *src, SceSize len)
 Strncpy from user memory.
 
SceSSize ksceKernelStrncpyFromUserProc (SceUID pid, char *dst, const char *src, SceSize len)
 Strncpy from user memory with process.
 
SceSSize ksceKernelStrncpyToUser (char *dst, const char *src, SceSize len)
 Strncpy to user memory.
 
SceSSize ksceKernelStrncpyToUserProc (SceUID pid, char *dst, const char *src, SceSize len)
 Strncpy to user memory with process.
 
SceSize ksceKernelStrnlenFromUser (const char *s, SceSize n)
 Strnlen user memory.
 
SceSSize ksceKernelStrnlenFromUserProc (SceUID pid, const char *s, SceSize n)
 Strnlen user memory with process.
 
int ksceKernelCopyFromToUser (void *dst, const void *src, SceSize len)
 Memcpy user memory to user memory.
 
int ksceKernelCopyFromToUserProc (SceUID pid, void *dst, const void *src, SceSize len)
 Memcpy user memory to user memory with process.
 
int ksceKernelGetFixedHeapInfoByPointer (void *pFixedHeap, void *pInfo)
 
 VITASDK_BUILD_ASSERT_EQ (0x1C, SceKernelHeapCreateOpt)
 
 VITASDK_BUILD_ASSERT_EQ (0x14, SceAllocOpt)
 
SceUID ksceKernelCreateHeap (const char *name, SceSize size, SceKernelHeapCreateOpt *opt)
 Create heap area.
 
int ksceKernelDeleteHeap (SceUID uid)
 Delete heap area.
 
void * ksceKernelAllocHeapMemory (SceUID uid, SceSize size)
 Allocate the specified length of memory from heap.
 
void * ksceKernelAllocHeapMemoryWithOption (SceUID heapid, SceSize len, SceAllocOpt *opt)
 Allocate the specified length of memory from heap with option.
 
void * ksceKernelReallocHeapMemory (SceUID heapid, void *ptr, SceSize len)
 Reallocate the specified pointer to the new length.
 
int ksceKernelFreeHeapMemory (SceUID uid, void *ptr)
 Free allocated memory.
 
void * ksceKernelAlloc (unsigned int size)
 Alloc kernel memory.
 
int ksceKernelFree (void *ptr)
 Free kernel memory.
 
int ksceKernelGetHeapInfo (SceUID heapid, SceUInt32 level, void *pInfo)
 
int ksceKernelGetHeapInfoByPtr (void *pObject, void *pInfo)
 
int ksceKernelNameHeapGetInfo (void *pInfo)
 
 VITASDK_BUILD_ASSERT_EQ (0x2C, SceClass)
 
 VITASDK_BUILD_ASSERT_EQ (8, SceObjectBase)
 
SceClass * ksceKernelGetUIDClass (void)
 
SceClass * ksceKernelGetUIDDLinkClass (void)
 
SceClass * ksceKernelGetUIDHeapClass (void)
 
SceClass * ksceKernelGetUIDMemBlockClass (void)
 
int ksceUIDClassInitClass (SceClass *cls, const char *name, void *uidclass, SceSize itemsize, SceClassCallback create, SceClassCallback destroy)
 
int ksceKernelFindClassByName (const char *name, SceClass **cls)
 
SceInt32 ksceKernelUIDEntryHeapGetInfo (SceUID entryHeapId, void *pInfo)
 
 VITASDK_BUILD_ASSERT_EQ (0x20, SceGUIDKernelCreateOpt)
 
SceUID ksceGUIDKernelCreateWithOpt (SceClass *sce_class, const char *name, SceGUIDKernelCreateOpt *opt, SceObjectBase **obj)
 
int ksceGUIDClose (SceUID guid)
 
int ksceGUIDReferObject (SceUID guid, SceObjectBase **object)
 Gets an object from a UID.
 
int ksceGUIDReferObjectWithClass (SceUID guid, SceClass *sce_class, SceObjectBase **object)
 Gets an object from a UID with class.
 
int ksceGUIDReferObjectWithClassLevel (SceUID guid, SceClass *pClass, SceUInt32 level, SceObjectBase **entry)
 Gets an object from a UID with class and level.
 
int ksceGUIDReleaseObject (SceUID guid)
 Releases an object referenced by the UID.
 
int ksceGUIDGetUIDVectorByClass (SceClass *cls, int vis_level, SceUID *vector, SceSize num, SceSize *ret_num)
 Get created GUID vectors.
 
int ksceGUIDGetObjectWithClass (SceUID uid, SceClass *pClass, SceObjectBase **obj)
 
int ksceGUIDKernelCreateWithAttr (SceClass *pClass, const char *name, SceUInt32 attr, SceObjectBase **ppEntry)
 
SceUID ksceGUIDOpenByGUID (SceUID guid)
 
SceUID kscePUIDOpenByGUID (SceUID pid, SceUID guid)
 
int kscePUIDClose (SceUID pid, SceUID puid)
 
SceUID kscePUIDtoGUID (SceUID pid, SceUID puid)
 

Variables

SceSize SceKernelMemBlockInfo::size
 
void * SceKernelMemBlockInfo::mappedBase
 
SceSize SceKernelMemBlockInfo::mappedSize
 
int SceKernelMemBlockInfo::memoryType
 
SceUInt32 SceKernelMemBlockInfo::access
 
SceKernelMemBlockType SceKernelMemBlockInfo::type
 
SceSize SceKernelAllocMemBlockKernelOpt::size
 Size of this structure.
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_4
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::attr
 Bitwise OR of SceKernelAllocMemBlockAttr values.
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_C
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::paddr
 
SceSize SceKernelAllocMemBlockKernelOpt::alignment
 
SceSize SceKernelAllocMemBlockKernelOpt::extraLow
 
SceSize SceKernelAllocMemBlockKernelOpt::extraHigh
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::mirror_blockid
 
SceUID SceKernelAllocMemBlockKernelOpt::pid
 
SceKernelPaddrList * SceKernelAllocMemBlockKernelOpt::paddr_list
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_2C
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_30
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_34
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_38
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_3C
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_40
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_44
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_48
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_4C
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_50
 
SceUInt32 SceKernelAllocMemBlockKernelOpt::field_54
 
SceSize SceKernelHeapMemoryOpt::size
 Must be set to sizeof(SceKernelHeapMemoryOpt).
 
SceUInt32 SceKernelHeapMemoryOpt::mapping_action
 One of SceKernelHeapMemoryMappingAction.
 
SceSize SceKernelHeapMemoryOpt::alignment
 Requested allocation alignment, or zero for the heap default.
 
void * SceKernelHeapMemoryOpt::mapped_base
 Base of the mapped or unmapped backing range.
 
SceSize SceKernelHeapMemoryOpt::mapped_size
 Size of the mapped or unmapped backing range.
 
SceSize SceKernelAllocMemBlockInfo::size
 Must be set to sizeof(SceKernelAllocMemBlockInfo).
 
void * SceKernelAllocMemBlockInfo::mapped_base
 Mapped base address.
 
SceSize SceKernelAllocMemBlockInfo::mapped_size
 Mapped size.
 
SceKernelMemoryType SceKernelAllocMemBlockInfo::memory_type
 Memory type derived from the selected memblock type.
 
SceUInt32 SceKernelAllocMemBlockInfo::access
 Bitwise OR of SceKernelMemoryAccessType values.
 
SceKernelMemBlockType SceKernelMemBlockInfoCore::type
 Memblock type.
 
SceUID SceKernelMemBlockInfoCore::guid
 Global memblock UID, or zero when it is hidden at the requested visibility level.
 
const char * SceKernelMemBlockInfoCore::name
 Read-only memblock name.
 
void * SceKernelMemBlockInfoCore::mapped_base
 Virtual mapping base.
 
SceSize SceKernelMemBlockInfoCore::mapped_size
 Requested mapping size.
 
SceSize SceKernelMemBlockInfoCore::alloc_map_size
 Size of the mapping actually allocated.
 
SceSize SceKernelMemBlockInfoCore::extra_low
 Low-end mapping padding.
 
SceSize SceKernelMemBlockInfoCore::extra_high
 High-end mapping padding.
 
SceUInt32 SceKernelMemBlockInfoCore::paging_type
 Internal paging type; observed values include 4 and 8.
 
SceUID SceKernelMemBlockInfoCore::partition_guid
 Physical-memory partition UID, or -1 when unavailable.
 
SceUIDPhyMemPartObject * SceKernelMemBlockInfoCore::phy_mem_part
 Physical-memory partition object.
 
SceSize SceKernelMemBlockInfoEx::size
 Must be set to sizeof(SceKernelMemBlockInfoEx).
 
SceKernelMemBlockInfoCore SceKernelMemBlockInfoEx::core_info
 
SceSize SceKernelMemBlockInfoEx::physical_range_count
 Total number of physical ranges.
 
SceSize SceKernelMemBlockInfoEx::physical_range_count_written
 Number of entries written to the arrays below, at most 16.
 
void * SceKernelMemBlockInfoEx::physical_addresses [16]
 Physical base of each reported range.
 
SceSize SceKernelMemBlockInfoEx::physical_sizes [16]
 Size of each reported range.
 
SceUInt32 SceKernelProcessContext::TTBR1
 
SceUInt32 SceKernelProcessContext::DACR
 
SceUInt32 SceKernelProcessContext::CONTEXTIDR
 
SceSize SceKernelHeapCreateOpt::size
 
SceUInt32 SceKernelHeapCreateOpt::attr
 
SceUInt32 SceKernelHeapCreateOpt::uselock
 Use attr instead; uselock will be deprecated.
 
union { 
 
SceUInt32 attr
 
SceUInt32 uselock
 Use attr instead; uselock will be deprecated.
 
};  
 
SceUInt32 SceKernelHeapCreateOpt::field_8
 
SceUInt32 SceKernelHeapCreateOpt::field_C
 
SceUInt32 SceKernelHeapCreateOpt::memtype
 
SceUInt32 SceKernelHeapCreateOpt::field_14
 
SceUInt32 SceKernelHeapCreateOpt::field_18
 
SceSize SceAllocOpt::size
 
SceSize SceAllocOpt::data04
 
SceSize SceAllocOpt::align
 
int SceAllocOpt::data0C
 
int SceAllocOpt::data10
 
struct SceClass * SceClass::next
 
struct SceClass * SceClass::root
 Root UID meta-class returned by ksceKernelGetUIDClass.
 
struct SceClass * SceClass::prev
 
const char * SceClass::name
 
struct SceClass * SceClass::uidclass
 Parent UID class.
 
unsigned int SceClass::attributes
 The low byte is the class identifier assigned during registration.
 
unsigned short SceClass::itemsize
 
unsigned short SceClass::itemsize_aligned
 
unsigned int SceClass::unk1C
 
SceClassCallback SceClass::create_cb
 Constructor callback.
 
SceClassCallback SceClass::destroy_cb
 Destructor callback.
 
unsigned int SceClass::magic
 Must be set to 0xABCE9DA5.
 
uint32_t SceObjectBase::sce_reserved [2]
 
void * SceObjectBase::object
 
SceClass * SceObjectBase::sce_class
 
struct { 
 
void * object
 
SceClass * sce_class
 
}  
 
union { 
 
uint32_t sce_reserved [2]
 
   struct { 
 
void * object
 
SceClass * sce_class
 
   }  
 
};  
 
uint32_t SceObjectBase::data []
 
SceUInt32 SceGUIDKernelCreateOpt::flags
 
SceUInt32 SceGUIDKernelCreateOpt::attr
 
union { 
 
SceUInt32 flags
 
SceUInt32 attr
 
};  
 
SceUInt32 SceGUIDKernelCreateOpt::field_4
 
SceUInt32 SceGUIDKernelCreateOpt::field_8
 
SceUInt32 SceGUIDKernelCreateOpt::pid
 
SceUInt32 SceGUIDKernelCreateOpt::field_10
 
SceUInt32 SceGUIDKernelCreateOpt::field_14
 
SceUInt32 SceGUIDKernelCreateOpt::field_18
 
SceUInt32 SceGUIDKernelCreateOpt::field_1C
 

Detailed Description

Exports for Kernel.


Using this library in your project

Include the header file in your project:




Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceSysmemForDriver_stub




Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceSysmemForDriver_stub




Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceSysmemForDriver_stub




Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceSysmemForDriver_stub




Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceSysmemForDriver_stub




Using this library in your project

Include the header file in your project:




Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceSysmemForDriver_stub




Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceSysmemForDriver_stub




Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceSysmemForDriver_stub




Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceSysmemForDriver_stub




Using this library in your project

Include the header file in your project:


Link the library to the executable:

SceSysmemForDriver_stub




Data Structure Documentation

◆ SceKernelMemBlockInfo

struct SceKernelMemBlockInfo
Data Fields
SceSize size
void * mappedBase
SceSize mappedSize
int memoryType
SceUInt32 access
SceKernelMemBlockType type

◆ SceKernelAllocMemBlockKernelOpt

struct SceKernelAllocMemBlockKernelOpt
Data Fields
SceSize size Size of this structure.
SceUInt32 field_4
SceUInt32 attr Bitwise OR of SceKernelAllocMemBlockAttr values.
SceUInt32 field_C
SceUInt32 paddr
SceSize alignment
SceSize extraLow
SceSize extraHigh
SceUInt32 mirror_blockid
SceUID pid
SceKernelPaddrList * paddr_list
SceUInt32 field_2C
SceUInt32 field_30
SceUInt32 field_34
SceUInt32 field_38
SceUInt32 field_3C
SceUInt32 field_40
SceUInt32 field_44
SceUInt32 field_48
SceUInt32 field_4C
SceUInt32 field_50
SceUInt32 field_54

◆ SceKernelHeapMemoryOpt

struct SceKernelHeapMemoryOpt

Options and mapping results for heap allocation.

Set alignment to request an allocation alignment. The allocator writes mapping_action, mapped_base, and mapped_size to describe any backing memory range it mapped or unmapped during the allocation.

Data Fields
SceSize size Must be set to sizeof(SceKernelHeapMemoryOpt).
SceUInt32 mapping_action One of SceKernelHeapMemoryMappingAction.
SceSize alignment Requested allocation alignment, or zero for the heap default.
void * mapped_base Base of the mapped or unmapped backing range.
SceSize mapped_size Size of the mapped or unmapped backing range.

◆ SceKernelAllocMemBlockInfo

struct SceKernelAllocMemBlockInfo
Data Fields
SceSize size Must be set to sizeof(SceKernelAllocMemBlockInfo).
void * mapped_base Mapped base address.
SceSize mapped_size Mapped size.
SceKernelMemoryType memory_type Memory type derived from the selected memblock type.
SceUInt32 access Bitwise OR of SceKernelMemoryAccessType values.

◆ SceKernelMemBlockInfoCore

struct SceKernelMemBlockInfoCore
Data Fields
SceKernelMemBlockType type Memblock type.
SceUID guid Global memblock UID, or zero when it is hidden at the requested visibility level.
const char * name Read-only memblock name.
void * mapped_base Virtual mapping base.
SceSize mapped_size Requested mapping size.
SceSize alloc_map_size Size of the mapping actually allocated.
SceSize extra_low Low-end mapping padding.
SceSize extra_high High-end mapping padding.
SceUInt32 paging_type Internal paging type; observed values include 4 and 8.
SceUID partition_guid Physical-memory partition UID, or -1 when unavailable.
SceUIDPhyMemPartObject * phy_mem_part Physical-memory partition object.

◆ SceKernelMemBlockInfoEx

struct SceKernelMemBlockInfoEx
Data Fields
SceSize size Must be set to sizeof(SceKernelMemBlockInfoEx).
SceKernelMemBlockInfoCore core_info
SceSize physical_range_count Total number of physical ranges.
SceSize physical_range_count_written Number of entries written to the arrays below, at most 16.
void * physical_addresses[16] Physical base of each reported range.
SceSize physical_sizes[16] Size of each reported range.

◆ SceKernelProcessContext

struct SceKernelProcessContext
Data Fields
SceUInt32 TTBR1
SceUInt32 DACR
SceUInt32 CONTEXTIDR

◆ SceKernelHeapCreateOpt

struct SceKernelHeapCreateOpt
Data Fields
SceSize size
union SceKernelHeapCreateOpt.__unnamed55__ __unnamed__
SceUInt32 field_8
SceUInt32 field_C
SceUInt32 memtype
SceUInt32 field_14
SceUInt32 field_18

◆ SceAllocOpt

struct SceAllocOpt
Data Fields
SceSize size
SceSize data04
SceSize align
int data0C
int data10

◆ SceClass

struct SceClass
Data Fields
struct SceClass * next
struct SceClass * root Root UID meta-class returned by ksceKernelGetUIDClass.
struct SceClass * prev
const char * name
struct SceClass * uidclass Parent UID class.
unsigned int attributes The low byte is the class identifier assigned during registration.
unsigned short itemsize
unsigned short itemsize_aligned
unsigned int unk1C
SceClassCallback create_cb Constructor callback.
SceClassCallback destroy_cb Destructor callback.
unsigned int magic Must be set to 0xABCE9DA5.

◆ SceObjectBase

struct SceObjectBase
Data Fields
union SceObjectBase.__unnamed57__ __unnamed__
uint32_t data[]

◆ SceGUIDKernelCreateOpt

struct SceGUIDKernelCreateOpt
Data Fields
union SceGUIDKernelCreateOpt.__unnamed61__ __unnamed__
SceUInt32 field_4
SceUInt32 field_8
SceUInt32 pid
SceUInt32 field_10
SceUInt32 field_14
SceUInt32 field_18
SceUInt32 field_1C

◆ SceKernelHeapCreateOpt.__unnamed55__

union SceKernelHeapCreateOpt.__unnamed55__
Data Fields
SceUInt32 attr
SceUInt32 uselock Use attr instead; uselock will be deprecated.

◆ SceObjectBase.__unnamed57__

union SceObjectBase.__unnamed57__
Data Fields
uint32_t sce_reserved[2]
struct SceObjectBase.__unnamed57__.__unnamed59__ __unnamed__

◆ SceObjectBase.__unnamed57__.__unnamed59__

struct SceObjectBase.__unnamed57__.__unnamed59__
Data Fields
void * object
SceClass * sce_class

◆ SceGUIDKernelCreateOpt.__unnamed61__

union SceGUIDKernelCreateOpt.__unnamed61__
Data Fields
SceUInt32 flags
SceUInt32 attr

Macro Definition Documentation

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_CDRAM_L1WBWA_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDRAM_L1WBWA_RW   (0x09404060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_CDRAM_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDRAM_R   (0x09408040)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_CDRAM_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDRAM_RW   (0x09408060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_DEVICE_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_DEVICE_RW   (0x0C200860)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_R   (0x0C20D040)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_RW   (0x0C20D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_NC_RW   (0x0C208060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_GAME_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_GAME_RW   (0x0C50D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_RW   (0x0C80D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_NC_RW   (0x0D808060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_CDIALOG_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_CDIALOG_RW   (0x0CA0D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_CDIALOG_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_CDIALOG_NC_RW   (0x0CA08060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_TOOL_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_TOOL_RW   (0x0CF0D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_TOOL_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_TOOL_NC_RW   (0x0CF08060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_R   (0x0E20D040)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_RW   (0x0E20D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_NC_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_NC_R   (0x0E208040)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_NC_RW   (0x0E208060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_RW_UNCACHE

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_RW_UNCACHE   (0x0C208060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_RW   (0x0C20D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_NC_RW   (0x0CF08060)

◆ ksceKernelFindMemBlockByAddrForPid

#define ksceKernelFindMemBlockByAddrForPid (   pid,
  addr,
  size 
)    ksceKernelFindProcMemBlockByAddr(pid, addr, size)

◆ ksceKernelMapBlockUserVisible

#define ksceKernelMapBlockUserVisible (   uid)    ksceKernelMapMemBlock(uid)

◆ ksceKernelRemapBlock

#define ksceKernelRemapBlock (   uid,
  type 
)    ksceKernelRemapMemBlock(uid, type)

◆ ksceKernelMapUserBlock

#define ksceKernelMapUserBlock (   name,
  permission,
  flags,
  user_buf,
  size,
  kernel_page,
  kernel_size,
  kernel_offset 
)    ksceKernelUserMapWithFlags(name, permission, flags, user_buf, size, kernel_page, kernel_size, kernel_offset)

◆ ksceKernelMapUserBlockDefaultType

#define ksceKernelMapUserBlockDefaultType (   name,
  permission,
  user_buf,
  size,
  kernel_page,
  kernel_size,
  kernel_offset 
)    ksceKernelUserMap(name, permission, user_buf, size, kernel_page, kernel_size, kernel_offset)

◆ ksceKernelMapUserBlockDefaultTypeForPid

#define ksceKernelMapUserBlockDefaultTypeForPid (   pid,
  name,
  permission,
  user_buf,
  size,
  kernel_page,
  kernel_size,
  kernel_offset 
)    ksceKernelProcUserMap(pid, name, permission, user_buf, size, kernel_page, kernel_size, kernel_offset)

◆ ksceKernelMemBlockRelease

#define ksceKernelMemBlockRelease (   uid)    ksceKernelUserUnmap(uid)

◆ ksceKernelMemRangeRetain

#define ksceKernelMemRangeRetain (   addr,
  size 
)    ksceKernelLockRange(addr, size)

◆ ksceKernelMemRangeRetainForPid

#define ksceKernelMemRangeRetainForPid (   pid,
  addr,
  size 
)    ksceKernelLockRangeProc(pid, addr, size)

◆ ksceKernelMemRangeRetainWithPerm

#define ksceKernelMemRangeRetainWithPerm (   perm,
  addr,
  size 
)    ksceKernelLockRangeWithMode(perm, addr, size)

◆ ksceKernelMemRangeRelease

#define ksceKernelMemRangeRelease (   addr,
  size 
)    ksceKernelUnlockRange(addr, size)

◆ ksceKernelMemRangeReleaseForPid

#define ksceKernelMemRangeReleaseForPid (   pid,
  addr,
  size 
)    ksceKernelUnlockRangeProc(pid, addr, size)

◆ ksceKernelMemRangeReleaseWithPerm

#define ksceKernelMemRangeReleaseWithPerm (   perm,
  addr,
  size 
)    ksceKernelUnlockRangeWithMode(perm, addr, size)

◆ ksceKernelGetPidContext

#define ksceKernelGetPidContext   ksceKernelProcessGetContext

◆ ksceKernelSwitchPidContext

#define ksceKernelSwitchPidContext   ksceKernelProcessSwitchContext

◆ ksceKernelGetPaddr

#define ksceKernelGetPaddr (   va,
  pa 
)    ksceKernelVAtoPA(va, pa)

◆ ksceKernelGetPaddrList

#define ksceKernelGetPaddrList (   input,
  list 
)    ksceKernelVARangeToPAVector((const SceKernelVARange *)input, list)

◆ ksceKernelMemcpyUserToKernel

#define ksceKernelMemcpyUserToKernel (   __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyFromUser((__dst__), (__src__), (__len__))

◆ ksceKernelMemcpyUserToKernelForPid

#define ksceKernelMemcpyUserToKernelForPid (   __pid__,
  __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyFromUserProc((__pid__), (__dst__), (__src__), (__len__))

◆ ksceKernelMemcpyKernelToUser

#define ksceKernelMemcpyKernelToUser (   __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyToUser((__dst__), (__src__), (__len__))

◆ ksceKernelMemcpyToUserRo

#define ksceKernelMemcpyToUserRo (   __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyToUserDomain((__dst__), (__src__), (__len__))

◆ ksceKernelMemcpyToUserRx

#define ksceKernelMemcpyToUserRx (   __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyToUserTextDomain((__dst__), (__src__), (__len__))

◆ ksceKernelRxMemcpyKernelToUserForPid

#define ksceKernelRxMemcpyKernelToUserForPid (   __pid__,
  __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyToUserProcTextDomain((__pid__), (__dst__), (__src__), (__len__))

◆ ksceKernelMemcpyFromUser

#define ksceKernelMemcpyFromUser (   __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyFromUser(__dst__, __src__, __len__)

◆ ksceKernelProcMemcpyFromUser

#define ksceKernelProcMemcpyFromUser (   __pid__,
  __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyFromUserProc(__pid__, __dst__, __src__, __len__)

◆ ksceKernelMemcpyToUser

#define ksceKernelMemcpyToUser (   __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyToUser(__dst__, __src__, __len__)

◆ ksceKernelProcMemcpyToUser

#define ksceKernelProcMemcpyToUser (   __pid__,
  __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyToUserProc(__pid__, __dst__, __src__, __len__)

◆ ksceKernelUserMemcpy

#define ksceKernelUserMemcpy (   __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyFromToUser(__dst__, __src__, __len__)

◆ ksceKernelProcUserMemcpy

#define ksceKernelProcUserMemcpy (   __pid__,
  __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyFromToUserProc(__pid__, __dst__, __src__, __len__)

◆ ksceKernelProcMemcpyToUserRx

#define ksceKernelProcMemcpyToUserRx (   __pid__,
  __dst__,
  __src__,
  __len__ 
)    ksceKernelCopyToUserProcTextDomain(__pid__, __dst__, __src__, __len__)

◆ ksceKernelStrncpyUserToKernel

#define ksceKernelStrncpyUserToKernel (   __dst__,
  __src__,
  __len__ 
)    ksceKernelStrncpyFromUser((__dst__), (__src__), (__len__))

◆ ksceKernelStrncpyUserForPid

#define ksceKernelStrncpyUserForPid (   __pid__,
  __dst__,
  __src__,
  __len__ 
)    ksceKernelStrncpyFromUserProc((__pid__), (__dst__), (__src__), (__len__))

◆ ksceKernelStrncpyKernelToUser

#define ksceKernelStrncpyKernelToUser (   __dst__,
  __src__,
  __len__ 
)    ksceKernelStrncpyToUser((__dst__), (__src__), (__len__))

◆ ksceKernelProcStrncpyFromUser

#define ksceKernelProcStrncpyFromUser (   __pid__,
  __dst__,
  __src__,
  __len__ 
)    ksceKernelStrncpyFromUserProc((__pid__), (__dst__), (__src__), (__len__))

◆ ksceKernelProcStrncpyToUser

#define ksceKernelProcStrncpyToUser (   __pid__,
  __dst__,
  __src__,
  __len__ 
)    ksceKernelStrncpyToUserProc((__pid__), (__dst__), (__src__), (__len__))

◆ ksceKernelStrnlenUser

#define ksceKernelStrnlenUser (   __s__,
  __n__ 
)    ksceKernelStrnlenFromUser(__s__, __n__)

◆ ksceKernelProcStrnlenUser

#define ksceKernelProcStrnlenUser (   __pid__,
  __s__,
  __n__ 
)    ksceKernelStrnlenFromUserProc(__pid__, __s__, __n__)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_MAIN_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_MAIN_R   (0x0320D040)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_MAIN_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_MAIN_RX   (0x0320D050)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_MAIN_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_MAIN_RW   (0x0320D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_SHARED_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_SHARED_R   (0x0390D040)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_SHARED_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_SHARED_RX   (0x0390D050)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_SHARED_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_SHARED_RW   (0x0390D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_CDIALOG_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_CDIALOG_R   (0x03A0D040)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_CDIALOG_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_CDIALOG_RX   (0x03A0D050)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_CDIALOG_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_CDIALOG_RW   (0x03A0D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_TOOL_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_TOOL_R   (0x03F0D040)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_TOOL_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_TOOL_RX   (0x03F0D050)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_TOOL_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_SHARED_TOOL_RW   (0x03F0D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_SO_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_SO_R   (0x0B100240)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_SO_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_SO_RW   (0x0B100260)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_DEVICE_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_DEVICE_R   (0x0B100840)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_DEVICE_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_IO_DEVICE_RW   (0x0B100860)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_R   (0x08F0D040)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_RX   (0x08F0D050)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_RW   (0x08F0D060)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_UNK_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_TOOL_UNK_RW   (0x08F0D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_RX   (0x0C20D050)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_R   (0x0C80D040)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_NC_R

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_PHYCONT_NC_R   (0x0D808040)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_TOOL_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_MAIN_TOOL_RX   (0x0CF0D050)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_CDIALOG_RX   (0x0E20D050)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_UNK_0720D006_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_UNK_0720D006_RW   (0x0720D006) /* SCE_KERNEL_ERROR_ILLEGAL_PARTITION_INDEX */

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_SO_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_SO_RW   (0x10200206)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_DEVICE_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_DEVICE_RW   (0x10200806)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_L1WBWA_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_L1WBWA_RW   (0x10204006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_NC_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_NC_R   (0x10208004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_NC_RW   (0x10208006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_R   (0x1020D004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_RX   (0x1020D005)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_RW   (0x1020D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_R   (0x1080D004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_RW   (0x1080D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_NC_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_NC_R   (0x30808004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_PHYCONT_NC_RW   (0x30808006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_GAME_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_GAME_RW   (0x1050D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_CDIALOG_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_CDIALOG_R   (0x10A0D004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_CDIALOG_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_CDIALOG_RW   (0x10A0D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_UMAIN_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_UMAIN_NC_RW   (0x10C08006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_UMAIN_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_ROOT_UMAIN_RW   (0x10C0D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_R   (0x10F0D004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_RX   (0x10F0D005)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_RW   (0x10F0D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_NC_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_NC_R   (0x10F08004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TOOL_NC_RW   (0x10F08006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_R   (0x1220D004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_RW   (0x1220D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_NC_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_NC_R   (0x13208004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_FS_GAME_NC_RW   (0x13208006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_SO_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_SO_R   (0x20100204)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_SO_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_SO_RW   (0x20100206)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_R   (0x20100804)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_RW   (0x20100806)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_NC_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_NC_R   (0x20108004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_NC_RW   (0x20108006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_CDRAM_L1WBWA_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_CDRAM_L1WBWA_RW   (0x40404006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_CDRAM_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_CDRAM_RW   (0x40408006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_NC_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_NC_R   (0x60208004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_NC_RW   (0x60208006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_R   (0x6020D004)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_RW   (0x6020D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_GAME_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_TMP_GAME_RW   (0x6050D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_KMP_GAME_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_KMP_GAME_RW   (0xC050D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_KMP_TOOL_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_KMP_TOOL_RW   (0xC0F0D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_UNK_11208006_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_UNK_11208006_NC_RW   (0x11208006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_UNK_60208014_NC_R

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_UNK_60208014_NC_R   (0x60208014)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_UNK_60208016_NC_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_UNK_60208016_NC_RW   (0x60208016)

◆ SCE_KERNEL_MEMBLOCK_TYPE_SHARED_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_SHARED_RX   (0x0390D050)

◆ SCE_KERNEL_MEMBLOCK_TYPE_USER_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_USER_RX   (0x0C20D050)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_RX

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_RX   (0x1020D005)

◆ SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_RW

#define SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_RW   (0x1020D006)

◆ SCE_KERNEL_MEMBLOCK_TYPE_RW_UNK0

#define SCE_KERNEL_MEMBLOCK_TYPE_RW_UNK0   (0x6020D006)

◆ ksceKernelCreateClass

#define ksceKernelCreateClass (   cls,
  name,
  uidclass,
  itemsize,
  create,
  destroy 
)    ksceUIDClassInitClass(cls, name, uidclass, itemsize, create, destroy)

◆ ksceKernelGetUidClass

#define ksceKernelGetUidClass ( )    ksceKernelGetUIDClass()

◆ ksceKernelGetUidDLinkClass

#define ksceKernelGetUidDLinkClass ( )    ksceKernelGetUIDDLinkClass()

◆ ksceKernelGetUidHeapClass

#define ksceKernelGetUidHeapClass ( )    ksceKernelGetUIDHeapClass()

◆ ksceKernelGetUidMemBlockClass

#define ksceKernelGetUidMemBlockClass ( )    ksceKernelGetUIDMemBlockClass()

◆ ksceKernelCreateUidObj

#define ksceKernelCreateUidObj (   sce_class,
  name,
  opt,
  obj 
)    ksceGUIDKernelCreateWithOpt(sce_class, name, opt, obj)

◆ ksceKernelDeleteUid

#define ksceKernelDeleteUid (   guid)    ksceGUIDClose(guid)

◆ ksceKernelGetObjForUid

#define ksceKernelGetObjForUid (   guid,
  sce_class,
  object 
)    ksceGUIDReferObjectWithClass(guid, sce_class, object)

◆ ksceKernelUidRelease

#define ksceKernelUidRelease (   guid)    ksceGUIDReleaseObject(guid)

◆ ksceKernelKernelUidForUserUid

#define ksceKernelKernelUidForUserUid (   pid,
  puid 
)    kscePUIDtoGUID(pid, puid)

◆ ksceKernelCreateUserUid

#define ksceKernelCreateUserUid (   pid,
  guid 
)    kscePUIDOpenByGUID(pid, guid)

◆ ksceKernelDeleteUserUid

#define ksceKernelDeleteUserUid (   pid,
  puid 
)    kscePUIDClose(pid, puid)

Typedef Documentation

◆ SceKernelMemBlockType

◆ SceKernelAllocMemBlockOptKernel

◆ SceUIDPhyMemPartObject

Opaque class-specific data for a physical-memory-partition UID object.

◆ SceKernelObject

Opaque class-specific data returned by the GUID and PUID object APIs.

◆ SceClassCallback

typedef int(* SceClassCallback) (void *item)

◆ SceCreateUidObjOpt

Enumeration Type Documentation

◆ SceKernelMemoryType

Enumerator
SCE_KERNEL_MEMORY_TYPE_NORMAL_NC 

Non-cached memory type.

SCE_KERNEL_MEMORY_TYPE_NORMAL 

Cached memory type.

◆ SceKernelAllocMemBlockAttr

Enumerator
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_VBASE 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PBASE 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_ALIGNMENT 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_EXTRA_LOW 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_EXTRA_HIGH 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_OPEN_RESTRICTIONS 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_BASE 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PID 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_BASENAME 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PPAV 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_ROUNDUP 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_ENABLE_OPEN 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_DOMAIN 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_DONT_MAP 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_PHYCONT 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_SKIP_ZERO_FILL 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_SHARE_VBASE 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_SHARE_PHYPAGE 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_ALLOW_PARTIAL_OP 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_0x20 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_0x4000 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PADDR 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_MIRROR_BLOCKID 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PADDR_LIST 
SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_UNK 

◆ SceKernelModel

Enumerator
SCE_KERNEL_MODEL_VITA 
SCE_KERNEL_MODEL_VITATV 

◆ SceKernelMemoryRefPerm

Enumerator
SCE_KERNEL_MEMORY_REF_PERM_ANY 
SCE_KERNEL_MEMORY_REF_PERM_USER_R 
SCE_KERNEL_MEMORY_REF_PERM_USER_W 
SCE_KERNEL_MEMORY_REF_PERM_USER_X 
SCE_KERNEL_MEMORY_REF_PERM_KERN_R 
SCE_KERNEL_MEMORY_REF_PERM_KERN_W 
SCE_KERNEL_MEMORY_REF_PERM_KERN_X 

◆ SceKernelHeapMemoryMappingAction

Enumerator
SCE_KERNEL_HEAP_MEMORY_MAPPING_ACTION_NONE 
SCE_KERNEL_HEAP_MEMORY_MAPPING_ACTION_MAP 
SCE_KERNEL_HEAP_MEMORY_MAPPING_ACTION_UNMAP 

◆ SceKernelHeapAttr

Enumerator
SCE_KERNEL_HEAP_ATTR_HAS_AUTO_EXTEND 
SCE_KERNEL_HEAP_ATTR_HAS_MEMORY_TYPE 

Function Documentation

◆ VITASDK_BUILD_ASSERT_EQ() [1/13]

VITASDK_BUILD_ASSERT_EQ ( 4  ,
SceKernelMemBlockType   
)

◆ VITASDK_BUILD_ASSERT_EQ() [2/13]

VITASDK_BUILD_ASSERT_EQ ( 0x18  ,
SceKernelMemBlockInfo   
)

◆ VITASDK_BUILD_ASSERT_EQ() [3/13]

VITASDK_BUILD_ASSERT_EQ ( 0x58  ,
SceKernelAllocMemBlockKernelOpt   
)

◆ ksceKernelAllocMemBlock()

SceUID ksceKernelAllocMemBlock ( const char *  name,
SceKernelMemBlockType  type,
SceSize  size,
SceKernelAllocMemBlockKernelOpt *  opt 
)

Allocates a new memory block.

Parameters
[in]name- Name for the memory block
[in]type- Type of the memory to allocate. Use SCE_KERNEL_MEMBLOCK_TYPE_USER_* or SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_*.
[in]size- Size of the memory to allocate
[in]opt- Memory block options?
Returns
SceUID of the memory block on success, < 0 on error.

◆ ksceKernelFreeMemBlock()

int ksceKernelFreeMemBlock ( SceUID  uid)

Frees new memory block.

Parameters
[in]uid- SceUID of the memory block to free
Returns
0 on success, < 0 on error.

◆ ksceKernelGetMemBlockBase()

int ksceKernelGetMemBlockBase ( SceUID  uid,
void **  base 
)

Gets the base address of a memory block.

Parameters
[in]uid- SceUID of the memory block
[out]base- Base address of the memory block identified by uid
Returns
0 on success, < 0 on error.

◆ ksceKernelGetMemBlockType()

int ksceKernelGetMemBlockType ( SceUID  uid,
unsigned int *  type 
)

Gets the memory block type of a memory block.

Parameters
[in]uid- SceUID of the memory block
[out]type- Type of the memory block identified by uid
Returns
0 on success, < 0 on error.

◆ ksceKernelFindMemBlockByAddr()

SceUID ksceKernelFindMemBlockByAddr ( const void *  addr,
SceSize  size 
)

Find the SceUID of a memory block.

Parameters
[in]addr- Base address of the memory block
[in]size- Size to search for (usally set to 0)
Returns
SceUID of the memory block on success, < 0 on error.

◆ ksceKernelFindProcMemBlockByAddr()

SceUID ksceKernelFindProcMemBlockByAddr ( SceUID  pid,
const void *  addr,
SceSize  size 
)

Find the SceUID of a memory block in a process.

Parameters
[in]pid- PID of the process
[in]addr- Base address of the memory block
[in]size- Size to search for (usally set to 0)
Returns
SceUID of the memory block on success, < 0 on error.

◆ ksceKernelGetMemBlockAllocMapSize()

int ksceKernelGetMemBlockAllocMapSize ( SceUID  memid,
SceSize *  alloc_map_size 
)

Get the AllocMapSize of a MemBlock.

Parameters
[in]memid- The target uid of the memblock
[out]alloc_map_size- The output for AllocMapSize
Returns
SCE_OK on success, < 0 on error.

◆ ksceKernelMapMemBlock()

int ksceKernelMapMemBlock ( SceUID  uid)

Map a memblock.

Parameters
[in]uid- GUID of the memblock to map.
Returns
SCE_OK on success, < 0 on error.

◆ ksceKernelMapMemBlockWithFlag()

int ksceKernelMapMemBlockWithFlag ( SceUID  uid,
int  flag 
)

Map a memblock.

Parameters
[in]uid- GUID of the memblock to map.
[in]flag- Set to 1 to prevent DCache invalidation before mapping.
Returns
SCE_OK on success, < 0 on error.

◆ ksceKernelRemapMemBlock()

int ksceKernelRemapMemBlock ( SceUID  uid,
SceKernelMemBlockType  type 
)

Changes the block type.

Parameters
[in]uid- SceUID of the memory block to change
[in]type- Type of the memory to change to
Returns
0 on success, < 0 on error.

◆ ksceKernelUnmapMemBlock()

int ksceKernelUnmapMemBlock ( SceUID  uid)

Unmap a memblock.

Parameters
[in]uid- GUID of the memblock to unmap.
Returns
SCE_OK on success, < 0 on error.

◆ ksceKernelUserMap()

SceUID ksceKernelUserMap ( const char *  name,
int  permission,
const void *  user_buf,
SceSize  size,
void **  kernel_page,
SceSize *  kernel_size,
SceUInt32 *  kernel_offset 
)

The mapping user address space to kernel.

Parameters
[in]name- The mapping name.
[in]permission- The access permission. 1 for Read, 2 or 3 for read/write.
[in]user_buf- The target address of user space.
[in]size- The mapping size.
[out]kernel_page- The mapped kernel address space.
[out]kernel_size- The mapped size.
[out]kernel_offset- The output of address align value. For example, if user_buf is 0x81000123, kernel_offset to 0x123.
Returns
uid on success, < 0 on error.

note - If no longer use the mapped address, need to release it with ksceKernelMemBlockRelease

◆ ksceKernelProcUserMap()

SceUID ksceKernelProcUserMap ( SceUID  pid,
const char *  name,
int  permission,
const void *  user_buf,
SceSize  size,
void **  kernel_page,
SceSize *  kernel_size,
SceUInt32 *  kernel_offset 
)

The mapping user address space to kernel with process.

Parameters
[in]pid- The target process id.
[in]name- The mapping name.
[in]permission- The access permission. 1 for Read, 2 or 3 for read/write.
[in]user_buf- The target address of user space.
[in]size- The mapping size.
[out]kernel_page- The mapped kernel address space.
[out]kernel_size- The mapped size.
[out]kernel_offset- The output of address align value. For example, if user_buf is 0x81000123, kernel_offset to 0x123.
Returns
uid on success, < 0 on error.

note - If no longer use the mapped address, need to release it with ksceKernelMemBlockRelease

◆ ksceKernelUserMapWithFlags()

SceUID ksceKernelUserMapWithFlags ( const char *  name,
int  permission,
int  flags,
const void *  user_buf,
SceSize  size,
void **  kernel_page,
SceSize *  kernel_size,
unsigned int *  kernel_offset 
)

The mapping user address space to kernel with flags.

Parameters
[in]name- The mapping name.
[in]permission- The access permission. 1 for Read, 2 or 3 for read/write.
[in]flags- 0x11 to map into TmpFsGame instead of Tmp
[in]user_buf- The target address of user space.
[in]size- The mapping size.
[out]kernel_page- The mapped kernel address space.
[out]kernel_size- The mapped size.
[out]kernel_offset- The output of address align value. For example, if user_buf is 0x81000123, kernel_offset to 0x123.
Returns
uid on success, < 0 on error.

note - If no longer use the mapped address, need to release it with ksceKernelMemBlockRelease

◆ ksceKernelUserUnmap()

int ksceKernelUserUnmap ( SceUID  uid)

Frees a memblock mapped with ksceKernelUserMap.

This decreases the internal reference count.

Parameters
[in]uidThe uid of the memblock
Returns
0 on success, < 0 on error.

◆ ksceKernelLockRange()

int ksceKernelLockRange ( void *  addr,
SceSize  size 
)

Locks a memory range.

This increases the internal reference count of the memblocks belonging to the range.

Note: It uses SCE_KERNEL_MEMORY_REF_PERM_ANY as the reference permission.

Parameters
[in]addrThe start address
[in]sizeThe memory range size
Returns
0 on success, < 0 on error.

◆ ksceKernelLockRangeProc()

int ksceKernelLockRangeProc ( ScePID  pid,
void *  addr,
SceSize  size 
)

Locks a memory range for a process (pid)

This increases the internal reference count of the memblocks belonging to the range.

Note: It uses SCE_KERNEL_MEMORY_REF_PERM_ANY as the reference permission.

Parameters
[in]pidThe pid of the process
[in]addrThe start address
[in]sizeThe memory range size
Returns
0 on success, < 0 on error.

◆ ksceKernelLockRangeWithMode()

int ksceKernelLockRangeWithMode ( SceKernelMemoryRefPerm  perm,
void *  addr,
SceSize  size 
)

Locks a memory range, checking for a given permission.

This increases the internal reference count of the memblocks belonging to the range. If the memory blocks belonging to the range don't have the required memory access permission, it returns an error.

Parameters
[in]permThe required permission of the memory blocks belonging to the range
[in]addrThe start address
[in]sizeThe memory range size
Returns
0 on success, < 0 on error.

◆ ksceKernelUnlockRange()

int ksceKernelUnlockRange ( void *  addr,
SceSize  size 
)

Unlocks a memory range.

This decreases the internal reference count of the memblocks belonging to the range.

Note: It uses SCE_KERNEL_MEMORY_REF_PERM_ANY as the reference permission.

Parameters
[in]addrThe start address
[in]sizeThe memory range size
Returns
0 on success, < 0 on error.

◆ ksceKernelUnlockRangeProc()

int ksceKernelUnlockRangeProc ( ScePID  pid,
void *  addr,
SceSize  size 
)

Unlocks a memory range for a process (pid)

This decreases the internal reference count of the memblocks belonging to the range.

Note: It uses SCE_KERNEL_MEMORY_REF_PERM_ANY as the reference permission.

Parameters
[in]pidThe pid of the process
[in]addrThe start address
[in]sizeThe memory range size
Returns
0 on success, < 0 on error.

◆ ksceKernelUnlockRangeWithMode()

int ksceKernelUnlockRangeWithMode ( SceKernelMemoryRefPerm  perm,
void *  addr,
SceSize  size 
)

Unlocks a memory range checking for a given permission.

This decreases the internal reference count of the memblocks belonging to the range. If the memory blocks belonging to the range don't have the required memory access permission, it returns an error.

Parameters
[in]permThe required permission of the memory blocks belonging to the range
[in]addrThe start address
[in]sizeThe memory range size
Returns
0 on success, < 0 on error.

◆ ksceKernelAllocPartitionMemBlock()

SceUID ksceKernelAllocPartitionMemBlock ( SceUID  part,
const char *  name,
SceKernelMemBlockType  type,
SceSize  size,
const SceKernelAllocMemBlockOptKernel *  pOpt 
)

◆ ksceKernelFreeSimpleMemBlock()

int ksceKernelFreeSimpleMemBlock ( void *  a1)

◆ VITASDK_BUILD_ASSERT_EQ() [4/13]

VITASDK_BUILD_ASSERT_EQ ( 0x14  ,
SceKernelHeapMemoryOpt   
)

◆ VITASDK_BUILD_ASSERT_EQ() [5/13]

VITASDK_BUILD_ASSERT_EQ ( 0x14  ,
SceKernelAllocMemBlockInfo   
)

◆ VITASDK_BUILD_ASSERT_EQ() [6/13]

VITASDK_BUILD_ASSERT_EQ ( 0x2C  ,
SceKernelMemBlockInfoCore   
)

◆ VITASDK_BUILD_ASSERT_EQ() [7/13]

VITASDK_BUILD_ASSERT_EQ ( 0xB8  ,
SceKernelMemBlockInfoEx   
)

◆ ksceGUIDCreate()

SceUID ksceGUIDCreate ( SceClass *  object_class,
const char *  name,
SceUID  reference_guid,
SceKernelObject **  object 
)

Creates a global UID object, optionally relative to reference_guid.

object receives the newly created class-specific object data. The memory is owned by the UID object and must not be freed by the caller.

◆ ksceGUIDGetClass()

int ksceGUIDGetClass ( SceUID  guid,
SceClass **  object_class 
)

Gets the class of a global UID object.

◆ ksceGUIDGetName()

int ksceGUIDGetName ( SceUID  guid,
const char **  name 
)

Gets the read-only name owned by a live global UID.

Sysmem owns the name. Renaming or destroying the UID can invalidate the pointer. On FW 3.60, a GUID with a valid format that no longer refers to a live UID does not reliably produce a lookup error. The caller must ensure that the UID remains alive.

◆ ksceGUIDGetObject()

int ksceGUIDGetObject ( SceUID  guid,
SceKernelObject **  object 
)

Gets the class-specific object data for a global UID without taking a reference.

The caller must ensure that the UID remains alive.

◆ ksceGUIDKernelCreate()

SceUID ksceGUIDKernelCreate ( SceClass *  object_class,
const char *  name,
SceKernelObject **  object 
)

Creates a kernel-owned global UID object with the default attributes.

◆ ksceGUIDName()

const char * ksceGUIDName ( SceUID  guid)

Returns the read-only name of a live global UID.

FW 3.60 does not reliably report lookup failure for a GUID that no longer refers to a live UID. The caller must ensure that the UID remains alive.

◆ ksceGUIDOpenByName()

SceUID ksceGUIDOpenByName ( const char *  name)

Opens a named global UID object.

◆ ksceGUIDReferObjectWithLevel()

int ksceGUIDReferObjectWithLevel ( SceUID  guid,
SceUInt32  visibility_level,
SceKernelObject **  object 
)

Takes a reference to a global UID at visibility level 0 through 7.

object may be NULL. When it is non-NULL, it receives the class-specific object data. Each successful call must be matched by one later call to ksceGUIDReleaseObject with guid.

◆ ksceGUIDReferObjectWithSubclass()

int ksceGUIDReferObjectWithSubclass ( SceUID  guid,
SceClass *  object_class,
SceKernelObject **  object 
)

Takes a reference to a global UID object when its class derives from object_class.

object may be NULL. When it is non-NULL, it receives the class-specific object data. Each successful call must be matched by one later call to ksceGUIDReleaseObject with guid.

◆ ksceGUIDSetName()

int ksceGUIDSetName ( SceUID  guid,
const char *  name 
)

Replaces the name of a global UID object.

◆ ksceKernelAllocHeapMemoryWithOpt()

void * ksceKernelAllocHeapMemoryWithOpt ( SceUID  heap_id,
SceSize  size,
SceKernelHeapMemoryOpt *  opt 
)

Allocates from the heap identified by heap_id.

◆ ksceKernelAllocMemBlockWithInfo()

SceUID ksceKernelAllocMemBlockWithInfo ( const char *  name,
SceKernelMemBlockType  type,
SceSize  vsize,
const SceKernelAllocMemBlockOptKernel *  opt,
SceKernelAllocMemBlockInfo *  info 
)

Allocates a memory block and returns its mapping information.

On FW 3.60, a non-NULL info must point to a SceKernelAllocMemBlockInfo structure with its size field set to 0x14. The function writes exactly those 0x14 bytes. A non-NULL info with any other size is ignored.

Parameters
[in]nameMemory-block name.
[in]typeMemory-block type.
[in]vsizeAllocation size.
[in]optOptional allocation options. FW 3.60 accepts option sizes 0x30 and 0x58.
[out]infoOptional mapping information.
Returns
The memory-block UID on success, < 0 on error.

◆ ksceKernelAllocUncacheHeapMemory()

void * ksceKernelAllocUncacheHeapMemory ( SceSize  size)

◆ ksceKernelAllocUncacheHeapMemoryWithOption()

void * ksceKernelAllocUncacheHeapMemoryWithOption ( SceSize  size,
SceKernelHeapMemoryOpt *  opt 
)

◆ ksceKernelCountFillValue64FromUser()

int ksceKernelCountFillValue64FromUser ( const SceUInt64 *  ptr,
SceUInt64  value,
SceSize  byte_size 
)

Counts the bytes at the start of a user-memory range in the calling process that match a repeated 64-bit value.

Parameters
[in]ptrInput buffer. The function does not modify it.
[in]valueValue to match.
[in]byte_size- Buffer size in bytes. It must be a multiple of 8.
Returns
The number of matching bytes at the start of the range, or < 0 on error.

◆ ksceKernelCountFillValue64FromUserProc()

int ksceKernelCountFillValue64FromUserProc ( ScePID  pid,
const SceUInt64 *  ptr,
SceUInt64  value,
SceSize  byte_size 
)

Counts the bytes at the start of another process's user-memory range that match a repeated 64-bit value.

Parameters
[in]pidTarget process identifier.
[in]ptrInput buffer. The function does not modify it.
[in]valueValue to match.
[in]byte_size- Buffer size in bytes. It must be a multiple of 8.
Returns
The number of matching bytes at the start of the range, or < 0 on error.

◆ ksceKernelCountFillValueFromUser()

int ksceKernelCountFillValueFromUser ( const SceUInt32 *  ptr,
SceUInt32  value,
SceSize  byte_size 
)

Counts the bytes at the start of a user-memory range in the calling process that match a repeated 32-bit value.

Parameters
[in]ptrInput buffer. The function does not modify it.
[in]valueValue to match.
[in]byte_size- Buffer size in bytes. It must be a multiple of 4.
Returns
The number of matching bytes at the start of the range, or < 0 on error.

◆ ksceKernelCountFillValueFromUserProc()

int ksceKernelCountFillValueFromUserProc ( ScePID  pid,
const SceUInt32 *  ptr,
SceUInt32  value,
SceSize  byte_size 
)

Counts the bytes at the start of another process's user-memory range that match a repeated 32-bit value.

Parameters
[in]pidTarget process identifier.
[in]ptrInput buffer. The function does not modify it.
[in]valueValue to match.
[in]byte_size- Buffer size in bytes. It must be a multiple of 4.
Returns
The number of matching bytes at the start of the range, or < 0 on error.

◆ ksceKernelDecRefCountMemBlock()

int ksceKernelDecRefCountMemBlock ( SceUID  uid)

Decrements a memblock's internal range/reference counter.

◆ ksceKernelFreeUncacheHeapMemory()

int ksceKernelFreeUncacheHeapMemory ( void *  ptr)

◆ ksceKernelGetMemBlockInfo()

int ksceKernelGetMemBlockInfo ( SceUID  uid,
SceUInt32  visibility_level,
SceKernelMemBlockInfoEx *  info 
)

Gets extended memblock information at visibility level 0 through 7.

Set the size field of info to 0xB8 before calling. The function writes the information to the same structure.

◆ ksceKernelGetMemBlockMappedBase()

int ksceKernelGetMemBlockMappedBase ( SceUID  uid,
void **  base 
)

Gets the currently mapped base of a memblock.

◆ ksceKernelGetMemBlockMemtypeByAddr()

int ksceKernelGetMemBlockMemtypeByAddr ( const void *  addr)

Gets the internal memory type for an address.

FW 3.60 can return internal 0x??00 values such as 0x8000 that are not named by SceKernelMemoryType.

Parameters
[in]addrAddress in the current address space.
Returns
The internal memory type masked with 0xFF00, or < 0 on error.

◆ ksceKernelGetMemBlockPARange()

int ksceKernelGetMemBlockPARange ( SceUID  uid,
SceKernelPARange *  pa_range 
)

Gets the single physical range backing a memblock.

◆ ksceKernelGetMemBlockPAVector()

int ksceKernelGetMemBlockPAVector ( SceUID  uid,
SceKernelPAVector *  pa_vector 
)

Gets the physical-range vector backing a memblock.

◆ ksceKernelGetMemBlockVBase()

int ksceKernelGetMemBlockVBase ( SceUID  uid,
void **  base 
)

Gets the virtual base reserved for a memblock.

◆ ksceKernelGetPhysicalMemoryType()

int ksceKernelGetPhysicalMemoryType ( const void *  vaddr)

Classifies the physical region containing a virtual address.

FW 3.60 returns 5 for physical addresses from 0x20000000 through 0x2FFFFFFF, 1 from 0x40000000 through 0x7FFFFFFF, 3 from 0x80000000 through 0xBFFFFFFF, and 7 for all other physical ranges.

Returns
The physical-region value described above, or < 0 when address translation fails.

◆ ksceKernelIncRefCountMemBlock()

int ksceKernelIncRefCountMemBlock ( SceUID  uid)

Increments a memblock's internal range/reference counter.

◆ ksceKernelIsAccessibleRange()

int ksceKernelIsAccessibleRange ( SceUInt32  permission,
const void *  va,
SceSize  len 
)

permission is a bitwise OR of SceKernelMemoryRefPerm values.

◆ ksceKernelIsAccessibleRangeProc()

int ksceKernelIsAccessibleRangeProc ( ScePID  pid,
SceUInt32  permission,
const void *  va,
SceSize  len 
)

permission is a bitwise OR of SceKernelMemoryRefPerm values.

◆ ksceKernelIsEqualAccessibleRangeProcBySW()

int ksceKernelIsEqualAccessibleRangeProcBySW ( ScePID  pid,
SceUInt32  permission,
const void *  va,
SceSize  len 
)

Checks whether a range has exactly the requested software permissions.

On FW 3.60, pid is ignored and va is only read.

Parameters
[in]pidProcess identifier. Ignored on FW 3.60.
[in]permission- Bitwise OR of SceKernelMemoryRefPerm values.
[in]vaStart of the range.
[in]lenRange size in bytes. It must be nonzero.
Returns
0 if every page has exactly the requested permissions, < 0 on error.

◆ ksceKernelMemBlockGetInfoEx()

int ksceKernelMemBlockGetInfoEx ( SceUID  uid,
SceKernelMemBlockInfoEx *  info 
)

Gets extended memblock information at visibility level 7.

Parameters
[in]uid- Memblock UID.
[in,out]info- Receives the information. Set its size field to 0xB8 before calling.
Returns
0 on success, < 0 on error.

◆ ksceKernelMemBlockType2Memtype()

int ksceKernelMemBlockType2Memtype ( SceKernelMemBlockType  type)

Gets the internal memory-type class associated with a memblock type.

Returns
The internal type masked with 0xFF00, or < 0 for an invalid type.

◆ ksceKernelMemBlockTypeGetPrivileges()

int ksceKernelMemBlockTypeGetPrivileges ( SceKernelMemBlockType  type)

Gets the memory permissions associated with a memblock type.

Returns
A bitwise OR of SceKernelMemoryRefPerm values.

◆ ksceKernelProcModeVAtoPA()

int ksceKernelProcModeVAtoPA ( ScePID  pid,
SceUInt32  permission,
const void *  va,
void **  pa 
)

Translates an address in another process after applying an MMU access mode.

Parameters
[in]pid- Target process.
[in]permission- Bitwise OR of SceKernelMemoryRefPerm values.
[in]va- Virtual address.
[out]pa- Physical address.

◆ ksceKernelVARangeToPARangeByHW()

int ksceKernelVARangeToPARangeByHW ( const SceKernelVARange *  v_range,
SceKernelPARange *  pa_range 
)

◆ ksceKernelVARangeToPARangeBySW()

int ksceKernelVARangeToPARangeBySW ( const SceKernelVARange *  v_range,
SceKernelPARange *  pa_range 
)

◆ ksceKernelVARangeToPAVectorByHW()

int ksceKernelVARangeToPAVectorByHW ( const SceKernelVARange *  v_range,
SceKernelPAVector *  pa_vector 
)

◆ ksceKernelVARangeToPAVectorBySW()

int ksceKernelVARangeToPAVectorBySW ( const SceKernelVARange *  v_range,
SceKernelPAVector *  pa_vector 
)

◆ ksceKernelVAtoPABySW()

int ksceKernelVAtoPABySW ( const void *  va,
void **  pa 
)

◆ kscePUIDGetClass()

int kscePUIDGetClass ( ScePID  pid,
SceUID  puid,
SceClass **  object_class 
)

Gets the class of an object in a process-local UID namespace.

◆ kscePUIDGetName()

int kscePUIDGetName ( ScePID  pid,
SceUID  puid,
const char **  name 
)

Gets the read-only name owned by a process-local UID entry.

Sysmem owns the name. Renaming or destroying the entry can invalidate the pointer.

◆ kscePUIDGetObject()

int kscePUIDGetObject ( ScePID  pid,
SceUID  puid,
SceKernelObject **  object 
)

Gets the class-specific object data for a process-local UID without taking a reference.

The caller must ensure that the object remains alive.

◆ kscePUIDOpenByGUIDWithFlags()

SceUID kscePUIDOpenByGUIDWithFlags ( ScePID  pid,
SceUID  guid,
SceUInt32  flags 
)

Opens a global UID in a process-local UID namespace.

FW 3.60 accepts flag values from 0 through 3. Bit 0 marks the source GUID as opened through a PUID entry; bit 1 sets an internal flag on the target PUID entry heap.

◆ kscePUIDOpenByName()

SceUID kscePUIDOpenByName ( ScePID  pid,
const char *  name 
)

Opens a named object in a process-local UID namespace.

◆ kscePUIDOpenByNameWithClass()

SceUID kscePUIDOpenByNameWithClass ( ScePID  pid,
const char *  name,
SceClass *  object_class 
)

Opens a named object of the required class in a process-local UID namespace.

◆ kscePUIDSetName()

int kscePUIDSetName ( ScePID  pid,
SceUID  puid,
const char *  name 
)

Replaces the name of a process-local UID entry.

◆ kscePUIDtoGUIDWithClass()

SceUID kscePUIDtoGUIDWithClass ( ScePID  pid,
SceUID  puid,
SceClass *  object_class 
)

Resolves a process-local UID to its global UID, requiring object_class.

◆ ksceKernelVAtoPA()

int ksceKernelVAtoPA ( const void *  va,
uintptr_t *  pa 
)

Get the physical address of a given virtual address.

Parameters
[in]va- The virtual address
[out]pa- The physical address
Returns
0 on success, < 0 on error.

◆ ksceKernelVARangeToPARange()

int ksceKernelVARangeToPARange ( const SceKernelVARange *  va_range,
SceKernelPARange *  pa_range 
)

Get the physical address range of a given virtual address range.

Parameters
[in]va_range- The virtual address range
[out]pa_range- The vector of physical addresses
Returns
0 on success, < 0 on error.

◆ ksceKernelVARangeToPAVector()

int ksceKernelVARangeToPAVector ( const SceKernelVARange *  va_range,
SceKernelPAVector *  pa_vector 
)

Get the physical address list of a given virtual address range.

Parameters
[in]va_range- The virtual address range
[out]pa_vector- The vector of physical addresses
Returns
0 on success, < 0 on error.

◆ VITASDK_BUILD_ASSERT_EQ() [8/13]

VITASDK_BUILD_ASSERT_EQ ( 0xC  ,
SceKernelProcessContext   
)

◆ ksceKernelProcessGetContext()

int ksceKernelProcessGetContext ( SceUID  pid,
SceKernelProcessContext **  ctx 
)

Get the process context.

Parameters
[in]pid- The target process id
[out]ctx- The context output pointer of pointer

◆ ksceKernelProcessSwitchContext()

int ksceKernelProcessSwitchContext ( const SceKernelProcessContext *  new_context,
SceKernelProcessContext *  prev_context 
)

Switch the process context.

Parameters
[in]new_context- The new context
[out]prev_context- The prev context

◆ ksceKernelAddressSpaceFreeAllMemBlock()

int ksceKernelAddressSpaceFreeAllMemBlock ( SceUID  guid)

◆ ksceKernelAddressSpaceSetPhyMemPart()

int ksceKernelAddressSpaceSetPhyMemPart ( SceUID  guid,
SceUInt32  index,
void *  pPhyMemPart 
)

◆ ksceKernelAddressSpaceUnmap()

int ksceKernelAddressSpaceUnmap ( SceUID  uid,
int  a2,
int  a3,
void *  addr,
SceSize  size 
)

◆ ksceKernelAddressSpaceVAtoPA()

int ksceKernelAddressSpaceVAtoPA ( void *  pAS,
SceUInt32  mode,
void *  pVA,
void **  pPA 
)

◆ ksceKernelCreateAddressSpace()

SceUID ksceKernelCreateAddressSpace ( SceUID  pid,
const char *  name,
SceUInt32  type,
void *  pOpt 
)

◆ ksceKernelDeleteAddressSpace()

int ksceKernelDeleteAddressSpace ( SceUID  guid)

◆ ksceKernelCopyFromUser()

int ksceKernelCopyFromUser ( void *  dst,
const void *  src,
SceSize  len 
)

Memcpy from user memory.

Parameters
[in]dst- The userland or kernel memory pointer.
[in]src- The userland memory pointer.
[in]len- The memcpy length.
Returns
0 on success, < 0 on error.
Note
Cannot use this function in kernel context. Use ksceKernelProcMemcpyFromUser. DACR - 0x55555555 Setting TTBR1 - No (use current TTBR1)

◆ ksceKernelCopyFromUserProc()

int ksceKernelCopyFromUserProc ( SceUID  pid,
void *  dst,
const void *  src,
SceSize  len 
)

Memcpy from user memory with process.

Parameters
[in]pid- The target process id.
[in]dst- The userland or kernel memory pointer.
[in]src- The userland memory pointer.
[in]len- The memcpy length.
Returns
0 on success, < 0 on error.
Note
- Invoke ksceKernelMemcpyFromUser with disable interrupts. Setting TTBR1 - Yes

◆ ksceKernelCopyToUser()

int ksceKernelCopyToUser ( void *  dst,
const void *  src,
SceSize  len 
)

Memcpy to user memory.

Parameters
[in]dst- The userland memory pointer.
[in]src- The userland or kernel memory pointer.
[in]len- The memcpy length.
Returns
0 on success, < 0 on error.
Note
Cannot use this function in kernel context. Use ksceKernelProcMemcpyToUser. DACR - 0x55555555 Setting TTBR1 - No (use current TTBR1)

◆ ksceKernelCopyToUserProc()

int ksceKernelCopyToUserProc ( SceUID  pid,
void *  dst,
const void *  src,
SceSize  len 
)

Memcpy from user memory with process.

Parameters
[in]pid- The target process id.
[in]dst- The userland memory pointer.
[in]src- The userland or kernel memory pointer.
[in]len- The memcpy length.
Returns
0 on success, < 0 on error.
Note
- Invoke ksceKernelMemcpyToUser with disable interrupts. Setting TTBR1 - Yes

◆ ksceKernelCopyToUserDomain()

int ksceKernelCopyToUserDomain ( void *  dst,
const void *  src,
SceSize  len 
)

Memcpy to user RO memory.

Parameters
[in]dst- The userland memory pointer.
[in]src- The userland or kernel memory pointer.
[in]len- The memcpy length.
Returns
0 on success, < 0 on error.
Note
Cannot use this function in kernel context. DACR - 0x15450FC3 Setting TTBR1 - No (use current TTBR1)

◆ ksceKernelCopyToUserTextDomain()

int ksceKernelCopyToUserTextDomain ( void *  dst,
const void *  src,
SceSize  len 
)

Memcpy to user RO memory with DcacheAndL2WritebackRange.

Parameters
[in]dst- The userland memory pointer.
[in]src- The userland or kernel memory pointer.
[in]len- The memcpy length.
Returns
0 on success, < 0 on error.
Note
Cannot use this function in kernel context. Use ksceKernelProcMemcpyToUserRx. DACR - 0x15450FC3 Setting TTBR1 - No (use current TTBR1)

◆ ksceKernelCopyToUserProcTextDomain()

int ksceKernelCopyToUserProcTextDomain ( SceUID  pid,
void *  dst,
const void *  src,
SceSize  len 
)

Memcpy to user RX memory with process.

Parameters
[in]pid- The target process id.
[in]dst- The userland memory pointer.
[in]src- The userland or kernel memory pointer.
[in]len- The memcpy length.
Returns
0 on success, < 0 on error.
Note
- Invokes ksceKernelCopyToUserTextDomain with disable interrupts. Cleans the cache. Setting TTBR1 - Yes

◆ ksceKernelStrncpyFromUser()

SceSSize ksceKernelStrncpyFromUser ( char *  dst,
const char *  src,
SceSize  len 
)

Strncpy from user memory.

Parameters
[in]dst- The userland or kernel memory pointer.
[in]src- The userland memory pointer.
[in]len- The copy length.
Returns
The copied length on success, < 0 on error.
Note
Cannot use this function in kernel context. Use ksceKernelProcStrncpyFromUser. DACR - 0x55555555 Setting TTBR1 - No (use current TTBR1)

◆ ksceKernelStrncpyFromUserProc()

SceSSize ksceKernelStrncpyFromUserProc ( SceUID  pid,
char *  dst,
const char *  src,
SceSize  len 
)

Strncpy from user memory with process.

Parameters
[in]pid- The target process id.
[in]dst- The userland or kernel memory pointer.
[in]src- The userland memory pointer.
[in]len- The copy length.
Returns
The copied length on success, < 0 on error.
Note
- Invoke ksceKernelStrncpyFromUserInternal with disable interrupts. DACR - Current process DACR Setting TTBR1 - Yes

◆ ksceKernelStrncpyToUser()

SceSSize ksceKernelStrncpyToUser ( char *  dst,
const char *  src,
SceSize  len 
)

Strncpy to user memory.

Parameters
[in]dst- The userland memory pointer.
[in]src- The userland or kernel memory pointer.
[in]len- The copy length.
Returns
The copied length on success, < 0 on error.
Note
Cannot use this function in kernel context. Use ksceKernelProcStrncpyToUser. DACR - 0x55555555 Setting TTBR1 - No (use current TTBR1)

◆ ksceKernelStrncpyToUserProc()

SceSSize ksceKernelStrncpyToUserProc ( SceUID  pid,
char *  dst,
const char *  src,
SceSize  len 
)

Strncpy to user memory with process.

Parameters
[in]pid- The target process id.
[in]dst- The userland memory pointer.
[in]src- The userland or kernel memory pointer.
[in]len- The copy length.
Returns
The copied length on success, < 0 on error.
Note
- Invoke ksceKernelStrncpyToUserInternal with disable interrupts. DACR - Current process DACR Setting TTBR1 - Yes

◆ ksceKernelStrnlenFromUser()

SceSize ksceKernelStrnlenFromUser ( const char *  s,
SceSize  n 
)

Strnlen user memory.

Parameters
[in]s- The userland memory pointer.
[in]n- The max length.
Returns
The strings length
Note
Cannot use this function in kernel context. Use ksceKernelProcStrnlenUser. DACR - 0x55555555 Setting TTBR1 - No (use current TTBR1)

◆ ksceKernelStrnlenFromUserProc()

SceSSize ksceKernelStrnlenFromUserProc ( SceUID  pid,
const char *  s,
SceSize  n 
)

Strnlen user memory with process.

Parameters
[in]pid- The target process id.
[in]s- The userland memory pointer.
[in]n- The max length.
Returns
The strings length on success, < 0 on error.
Note
- Invoke ksceKernelStrnlenUserInternal with disable interrupts. DACR - Current process DACR Setting TTBR1 - Yes

◆ ksceKernelCopyFromToUser()

int ksceKernelCopyFromToUser ( void *  dst,
const void *  src,
SceSize  len 
)

Memcpy user memory to user memory.

Parameters
[in]dst- The userland memory pointer.
[in]src- The userland memory pointer.
[in]len- The copy length.
Returns
0 on success, < 0 on error.
Note
Cannot use this function in kernel context. Use ksceKernelProcUserMemcpy. DACR - 0x55555555 Setting TTBR1 - No (use current TTBR1)

◆ ksceKernelCopyFromToUserProc()

int ksceKernelCopyFromToUserProc ( SceUID  pid,
void *  dst,
const void *  src,
SceSize  len 
)

Memcpy user memory to user memory with process.

Parameters
[in]pid- The target process id.
[in]dst- The userland memory pointer.
[in]src- The userland memory pointer.
[in]len- The copy length.
Returns
0 on success, < 0 on error.
Note
- Invoke ksceKernelUserMemcpyInternal with disable interrupts. DACR - Current process DACR Setting TTBR1 - Yes

◆ ksceKernelGetFixedHeapInfoByPointer()

int ksceKernelGetFixedHeapInfoByPointer ( void *  pFixedHeap,
void *  pInfo 
)

◆ VITASDK_BUILD_ASSERT_EQ() [9/13]

VITASDK_BUILD_ASSERT_EQ ( 0x1C  ,
SceKernelHeapCreateOpt   
)

◆ VITASDK_BUILD_ASSERT_EQ() [10/13]

VITASDK_BUILD_ASSERT_EQ ( 0x14  ,
SceAllocOpt   
)

◆ ksceKernelCreateHeap()

SceUID ksceKernelCreateHeap ( const char *  name,
SceSize  size,
SceKernelHeapCreateOpt *  opt 
)

Create heap area.

Parameters
[in]name- The heap name
[in]size- The heap size
[in]opt- The pointer of SceKernelHeapCreateOpt option data
Returns
heapid on success, < 0 on error.

◆ ksceKernelDeleteHeap()

int ksceKernelDeleteHeap ( SceUID  uid)

Delete heap area.

Parameters
[in]uid- The heapid
Returns
always 0.

note - Trigger an infinite loop if something fails internally. For example, passing an invalid heapid.

◆ ksceKernelAllocHeapMemory()

void * ksceKernelAllocHeapMemory ( SceUID  uid,
SceSize  size 
)

Allocate the specified length of memory from heap.

Parameters
[in]uid- The heapid
[in]size- The alloc size
Returns
The pointer of allocated memory on success, NULL on error.

◆ ksceKernelAllocHeapMemoryWithOption()

void * ksceKernelAllocHeapMemoryWithOption ( SceUID  heapid,
SceSize  len,
SceAllocOpt *  opt 
)

Allocate the specified length of memory from heap with option.

Parameters
[in]uid- The heapid
[in]size- The alloc size
[in]opt- The pointer of option
Returns
The pointer of allocated memory on success, NULL on error.

◆ ksceKernelReallocHeapMemory()

void * ksceKernelReallocHeapMemory ( SceUID  heapid,
void *  ptr,
SceSize  len 
)

Reallocate the specified pointer to the new length.

Parameters
[in]uid- The heapid
[in]ptr- The pointer of allocated memory or NULL
[in]len- The new alloc size
Returns
The pointer of allocated memory on success, NULL on error.

◆ ksceKernelFreeHeapMemory()

int ksceKernelFreeHeapMemory ( SceUID  uid,
void *  ptr 
)

Free allocated memory.

Parameters
[in]uid- The heapid
[in]ptr- The pointer of allocated memory
Returns
0 on success, < 0 on error.

◆ ksceKernelAlloc()

void * ksceKernelAlloc ( unsigned int  size)

Alloc kernel memory.

Parameters
[in]size- The alloction memory size
Returns
memory pointer on success, NULL on error.

◆ ksceKernelFree()

int ksceKernelFree ( void *  ptr)

Free kernel memory.

Parameters
[in]ptr- The free memory pointer
Returns
0 on success, < 0 on error.

◆ ksceKernelGetHeapInfo()

int ksceKernelGetHeapInfo ( SceUID  heapid,
SceUInt32  level,
void *  pInfo 
)

◆ ksceKernelGetHeapInfoByPtr()

int ksceKernelGetHeapInfoByPtr ( void *  pObject,
void *  pInfo 
)

◆ ksceKernelNameHeapGetInfo()

int ksceKernelNameHeapGetInfo ( void *  pInfo)

◆ VITASDK_BUILD_ASSERT_EQ() [11/13]

VITASDK_BUILD_ASSERT_EQ ( 0x2C  ,
SceClass   
)

◆ VITASDK_BUILD_ASSERT_EQ() [12/13]

VITASDK_BUILD_ASSERT_EQ ( 8  ,
SceObjectBase   
)

◆ ksceKernelGetUIDClass()

SceClass * ksceKernelGetUIDClass ( void  )

◆ ksceKernelGetUIDDLinkClass()

SceClass * ksceKernelGetUIDDLinkClass ( void  )

◆ ksceKernelGetUIDHeapClass()

SceClass * ksceKernelGetUIDHeapClass ( void  )

◆ ksceKernelGetUIDMemBlockClass()

SceClass * ksceKernelGetUIDMemBlockClass ( void  )

◆ ksceUIDClassInitClass()

int ksceUIDClassInitClass ( SceClass *  cls,
const char *  name,
void *  uidclass,
SceSize  itemsize,
SceClassCallback  create,
SceClassCallback  destroy 
)

◆ ksceKernelFindClassByName()

int ksceKernelFindClassByName ( const char *  name,
SceClass **  cls 
)

◆ ksceKernelUIDEntryHeapGetInfo()

SceInt32 ksceKernelUIDEntryHeapGetInfo ( SceUID  entryHeapId,
void *  pInfo 
)

◆ VITASDK_BUILD_ASSERT_EQ() [13/13]

VITASDK_BUILD_ASSERT_EQ ( 0x20  ,
SceGUIDKernelCreateOpt   
)

◆ ksceGUIDKernelCreateWithOpt()

SceUID ksceGUIDKernelCreateWithOpt ( SceClass *  sce_class,
const char *  name,
SceGUIDKernelCreateOpt *  opt,
SceObjectBase **  obj 
)

◆ ksceGUIDClose()

int ksceGUIDClose ( SceUID  guid)

◆ ksceGUIDReferObject()

int ksceGUIDReferObject ( SceUID  guid,
SceObjectBase **  object 
)

Gets an object from a UID.

This increases the internal reference count.

Parameters
[in]guid- The target global uid.
[out]object- The object pointer output pointer.
Returns
0 on success, < 0 on error.

◆ ksceGUIDReferObjectWithClass()

int ksceGUIDReferObjectWithClass ( SceUID  guid,
SceClass *  sce_class,
SceObjectBase **  object 
)

Gets an object from a UID with class.

This retains the object refer count internally! You must call ksceKernelUidRelease after you are done using it.

Parameters
[in]guid- The target global uid.
[in]sce_class- The guid parent class.
[out]object- The object pointer output pointer.
Returns
0 on success, < 0 on error.

◆ ksceGUIDReferObjectWithClassLevel()

int ksceGUIDReferObjectWithClassLevel ( SceUID  guid,
SceClass *  pClass,
SceUInt32  level,
SceObjectBase **  entry 
)

Gets an object from a UID with class and level.

This retains the object refer count internally! You must call ksceKernelUidRelease after you are done using it.

Parameters
[in]guid- The target global uid.
[in]sce_class- The guid parent class.
[in]level- The openable level (count/number). The max passable number is 7. If the internal object retention count is (level + 1) or higher, get an error.
[out]object- The object pointer output pointer.
Returns
0 on success, < 0 on error.

◆ ksceGUIDReleaseObject()

int ksceGUIDReleaseObject ( SceUID  guid)

Releases an object referenced by the UID.

This decreases the internal reference count.

Parameters
[in]guid- The target global uid.
Returns
0 on success, < 0 on error.

◆ ksceGUIDGetUIDVectorByClass()

int ksceGUIDGetUIDVectorByClass ( SceClass *  cls,
int  vis_level,
SceUID *  vector,
SceSize  num,
SceSize *  ret_num 
)

Get created GUID vectors.

Parameters
[in]cls- The Class.
[in]vis_level- The Visible level.
[out]vector- The GUID vector output.
[in]num- The GUID vector max number.
[out]ret_num- The GUID vector result number.
Returns
0 on success, < 0 on error.

◆ ksceGUIDGetObjectWithClass()

int ksceGUIDGetObjectWithClass ( SceUID  uid,
SceClass *  pClass,
SceObjectBase **  obj 
)

◆ ksceGUIDKernelCreateWithAttr()

int ksceGUIDKernelCreateWithAttr ( SceClass *  pClass,
const char *  name,
SceUInt32  attr,
SceObjectBase **  ppEntry 
)

◆ ksceGUIDOpenByGUID()

SceUID ksceGUIDOpenByGUID ( SceUID  guid)

◆ kscePUIDOpenByGUID()

SceUID kscePUIDOpenByGUID ( SceUID  pid,
SceUID  guid 
)

◆ kscePUIDClose()

int kscePUIDClose ( SceUID  pid,
SceUID  puid 
)

◆ kscePUIDtoGUID()

SceUID kscePUIDtoGUID ( SceUID  pid,
SceUID  puid 
)

Variable Documentation

◆ size [1/7]

SceSize SceKernelMemBlockInfo::size

◆ mappedBase

void* SceKernelMemBlockInfo::mappedBase

◆ mappedSize

SceSize SceKernelMemBlockInfo::mappedSize

◆ memoryType

int SceKernelMemBlockInfo::memoryType

◆ access [1/2]

SceUInt32 SceKernelMemBlockInfo::access

◆ type [1/2]

SceKernelMemBlockType SceKernelMemBlockInfo::type

◆ size [2/7]

SceSize SceKernelAllocMemBlockKernelOpt::size

Size of this structure.

◆ field_4 [1/2]

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_4

◆ attr [1/3]

SceUInt32 SceKernelAllocMemBlockKernelOpt::attr

Bitwise OR of SceKernelAllocMemBlockAttr values.

◆ field_C [1/2]

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_C

◆ paddr

SceUInt32 SceKernelAllocMemBlockKernelOpt::paddr

◆ alignment [1/2]

SceSize SceKernelAllocMemBlockKernelOpt::alignment

◆ extraLow

SceSize SceKernelAllocMemBlockKernelOpt::extraLow

◆ extraHigh

SceSize SceKernelAllocMemBlockKernelOpt::extraHigh

◆ mirror_blockid

SceUInt32 SceKernelAllocMemBlockKernelOpt::mirror_blockid

◆ pid [1/2]

SceUID SceKernelAllocMemBlockKernelOpt::pid

◆ paddr_list

SceKernelPaddrList* SceKernelAllocMemBlockKernelOpt::paddr_list

◆ field_2C

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_2C

◆ field_30

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_30

◆ field_34

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_34

◆ field_38

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_38

◆ field_3C

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_3C

◆ field_40

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_40

◆ field_44

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_44

◆ field_48

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_48

◆ field_4C

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_4C

◆ field_50

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_50

◆ field_54

SceUInt32 SceKernelAllocMemBlockKernelOpt::field_54

◆ size [3/7]

SceSize SceKernelHeapMemoryOpt::size

Must be set to sizeof(SceKernelHeapMemoryOpt).

◆ mapping_action

SceUInt32 SceKernelHeapMemoryOpt::mapping_action

◆ alignment [2/2]

SceSize SceKernelHeapMemoryOpt::alignment

Requested allocation alignment, or zero for the heap default.

◆ mapped_base [1/3]

void* SceKernelHeapMemoryOpt::mapped_base

Base of the mapped or unmapped backing range.

◆ mapped_size [1/3]

SceSize SceKernelHeapMemoryOpt::mapped_size

Size of the mapped or unmapped backing range.

◆ size [4/7]

SceSize SceKernelAllocMemBlockInfo::size

Must be set to sizeof(SceKernelAllocMemBlockInfo).

◆ mapped_base [2/3]

void* SceKernelAllocMemBlockInfo::mapped_base

Mapped base address.

◆ mapped_size [2/3]

SceSize SceKernelAllocMemBlockInfo::mapped_size

Mapped size.

◆ memory_type

SceKernelMemoryType SceKernelAllocMemBlockInfo::memory_type

Memory type derived from the selected memblock type.

◆ access [2/2]

SceUInt32 SceKernelAllocMemBlockInfo::access

Bitwise OR of SceKernelMemoryAccessType values.

◆ type [2/2]

SceKernelMemBlockType SceKernelMemBlockInfoCore::type

Memblock type.

◆ guid

SceUID SceKernelMemBlockInfoCore::guid

Global memblock UID, or zero when it is hidden at the requested visibility level.

◆ name [1/2]

const char* SceKernelMemBlockInfoCore::name

Read-only memblock name.

◆ mapped_base [3/3]

void* SceKernelMemBlockInfoCore::mapped_base

Virtual mapping base.

◆ mapped_size [3/3]

SceSize SceKernelMemBlockInfoCore::mapped_size

Requested mapping size.

◆ alloc_map_size

SceSize SceKernelMemBlockInfoCore::alloc_map_size

Size of the mapping actually allocated.

◆ extra_low

SceSize SceKernelMemBlockInfoCore::extra_low

Low-end mapping padding.

◆ extra_high

SceSize SceKernelMemBlockInfoCore::extra_high

High-end mapping padding.

◆ paging_type

SceUInt32 SceKernelMemBlockInfoCore::paging_type

Internal paging type; observed values include 4 and 8.

◆ partition_guid

SceUID SceKernelMemBlockInfoCore::partition_guid

Physical-memory partition UID, or -1 when unavailable.

◆ phy_mem_part

SceUIDPhyMemPartObject* SceKernelMemBlockInfoCore::phy_mem_part

Physical-memory partition object.

◆ size [5/7]

SceSize SceKernelMemBlockInfoEx::size

Must be set to sizeof(SceKernelMemBlockInfoEx).

◆ core_info

SceKernelMemBlockInfoCore SceKernelMemBlockInfoEx::core_info

◆ physical_range_count

SceSize SceKernelMemBlockInfoEx::physical_range_count

Total number of physical ranges.

◆ physical_range_count_written

SceSize SceKernelMemBlockInfoEx::physical_range_count_written

Number of entries written to the arrays below, at most 16.

◆ physical_addresses

void* SceKernelMemBlockInfoEx::physical_addresses[16]

Physical base of each reported range.

◆ physical_sizes

SceSize SceKernelMemBlockInfoEx::physical_sizes[16]

Size of each reported range.

◆ TTBR1

SceUInt32 SceKernelProcessContext::TTBR1

◆ DACR

SceUInt32 SceKernelProcessContext::DACR

◆ CONTEXTIDR

SceUInt32 SceKernelProcessContext::CONTEXTIDR

◆ size [6/7]

SceSize SceKernelHeapCreateOpt::size

◆ [] [2/3]

SceUInt32 { ... } ::attr

◆ []

SceUInt32 { ... } ::uselock

Use attr instead; uselock will be deprecated.

◆ [union]

union { ... } SceKernelHeapCreateOpt

◆ field_8 [1/2]

SceUInt32 SceKernelHeapCreateOpt::field_8

◆ field_C [2/2]

SceUInt32 SceKernelHeapCreateOpt::field_C

◆ memtype

SceUInt32 SceKernelHeapCreateOpt::memtype

◆ field_14 [1/2]

SceUInt32 SceKernelHeapCreateOpt::field_14

◆ field_18 [1/2]

SceUInt32 SceKernelHeapCreateOpt::field_18

◆ size [7/7]

SceSize SceAllocOpt::size

◆ data04

SceSize SceAllocOpt::data04

◆ align

SceSize SceAllocOpt::align

◆ data0C

int SceAllocOpt::data0C

◆ data10

int SceAllocOpt::data10

◆ next

struct SceClass* SceClass::next

◆ root

struct SceClass* SceClass::root

Root UID meta-class returned by ksceKernelGetUIDClass.

◆ prev

struct SceClass* SceClass::prev

◆ name [2/2]

const char* SceClass::name

◆ uidclass

struct SceClass* SceClass::uidclass

Parent UID class.

◆ attributes

unsigned int SceClass::attributes

The low byte is the class identifier assigned during registration.

◆ itemsize

unsigned short SceClass::itemsize

◆ itemsize_aligned

unsigned short SceClass::itemsize_aligned

◆ unk1C

unsigned int SceClass::unk1C

◆ create_cb

SceClassCallback SceClass::create_cb

Constructor callback.

◆ destroy_cb

SceClassCallback SceClass::destroy_cb

Destructor callback.

◆ magic

unsigned int SceClass::magic

Must be set to 0xABCE9DA5.

◆ []

uint32_t { ... } ::sce_reserved[2]

◆ []

void* { ... } ::object

◆ []

SceClass* { ... } ::sce_class

◆ [struct]

struct { ... } SceObjectBase

◆ [union]

union { ... } SceObjectBase

◆ data

uint32_t SceObjectBase::data[]

◆ []

SceUInt32 { ... } ::flags

◆ [] [3/3]

SceUInt32 { ... } ::attr

◆ [union]

union { ... } SceGUIDKernelCreateOpt

◆ field_4 [2/2]

SceUInt32 SceGUIDKernelCreateOpt::field_4

◆ field_8 [2/2]

SceUInt32 SceGUIDKernelCreateOpt::field_8

◆ pid [2/2]

SceUInt32 SceGUIDKernelCreateOpt::pid

◆ field_10

SceUInt32 SceGUIDKernelCreateOpt::field_10

◆ field_14 [2/2]

SceUInt32 SceGUIDKernelCreateOpt::field_14

◆ field_18 [2/2]

SceUInt32 SceGUIDKernelCreateOpt::field_18

◆ field_1C

SceUInt32 SceGUIDKernelCreateOpt::field_1C