summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTheOfficialFloW2016-01-26 13:36:30 +0100
committerTheOfficialFloW2016-01-26 13:36:30 +0100
commit080fe016ef0a8395edd392629bd95dbb08a22df4 (patch)
tree599ac71366bbe9080c322104ba8008f1b7985f69
parentAdded sceKernelFindMemBlockByAddr (diff)
downloadvds-libraries-080fe016ef0a8395edd392629bd95dbb08a22df4.tar.gz
Added SceKernelAllocMemBlockOpt
-rw-r--r--include/user/kernel/sysmem.h18
1 files changed, 14 insertions, 4 deletions
diff --git a/include/user/kernel/sysmem.h b/include/user/kernel/sysmem.h
index 9c77a9e..f2e4fbc 100644
--- a/include/user/kernel/sysmem.h
+++ b/include/user/kernel/sysmem.h
@@ -17,6 +17,16 @@ enum {
SCE_KERNEL_MEMBLOCK_TYPE_USER_CDRAM_RW = 0x09408060
};
+typedef struct SceKernelAllocMemBlockOpt {
+ SceSize size;
+ SceUInt32 attr;
+ SceSize alignment;
+ SceUInt32 uidBaseBlock;
+ const char *strBaseBlockName;
+ int flags; //! Unknown flags 0x10 or 0x30 for sceKernelOpenMemBlock
+ int reserved[10];
+} SceKernelAllocMemBlockOpt;
+
/***
* Allocates a new memoy block
*
@@ -27,7 +37,7 @@ enum {
*
* @return SceUID of the memory block on success, < 0 on error.
*/
-SceUID sceKernelAllocMemBlock(const char *name, SceKernelMemBlockType type, int size, void *optp);
+SceUID sceKernelAllocMemBlock(const char *name, SceKernelMemBlockType type, int size, SceKernelAllocMemBlockOpt *optp);
/***
* Frees new memoy block
@@ -57,13 +67,13 @@ typedef struct SceKernelMemBlockInfo {
SceKernelMemBlockType type;
} SceKernelMemBlockInfo;
-#define SCE_KERNEL_MEMORY_TYPE_NORMAL_NC 0x80
-#define SCE_KERNEL_MEMORY_TYPE_NORMAL 0xD0
-
#define SCE_KERNEL_MEMORY_ACCESS_X 0x01
#define SCE_KERNEL_MEMORY_ACCESS_W 0x02
#define SCE_KERNEL_MEMORY_ACCESS_R 0x04
+#define SCE_KERNEL_MEMORY_TYPE_NORMAL_NC 0x80
+#define SCE_KERNEL_MEMORY_TYPE_NORMAL 0xD0
+
SceUID sceKernelFindMemBlockByAddr(const void *addr, SceSize size);
int sceKernelGetMemBlockInfoByAddr(void *base, SceKernelMemBlockInfo *info);