diff options
Diffstat (limited to '')
-rw-r--r-- | include/user/paf.h | 48 | ||||
-rw-r--r-- | nids/360/ScePaf.yml | 13 |
2 files changed, 61 insertions, 0 deletions
diff --git a/include/user/paf.h b/include/user/paf.h index 38bfc40..c351346 100644 --- a/include/user/paf.h +++ b/include/user/paf.h @@ -2,11 +2,26 @@ #define _PSP2_PAF_H_ #include <psp2/types.h> +#include <psp2/ces/error.h> #ifdef __cplusplus extern "C" { #endif +typedef struct ScePafString { + char *data; + SceSize length; +} ScePafString; + +typedef struct ScePafWString { + SceWChar16 *data; + SceSize length; +} ScePafWString; + +/** + * std C functions + */ + void sce_paf_free(void *ptr); void *sce_paf_malloc(SceSize size); void *sce_paf_bzero(void *ptr, SceSize num); @@ -28,6 +43,39 @@ int sce_paf_strncmp(const char *str1, const char *str2, SceSize num); char *sce_paf_strncpy(char *destination, const char *source, SceSize num); char *sce_paf_strrchr(const char *str, int character); +/** + * CES functions + */ + +#define SCE_PAF_CES_ALLOW_ILLEGAL_CODE 0x2 +#define SCE_PAF_CES_ALLOW_OUT_OF_CODE_RANGE 0x4 +#define SCE_PAF_CES_ALLOW_INVALID_ENCODE 0x8 +#define SCE_PAF_CES_ALLOW_SRC_BUFFER_END 0x10 + +/* UTF8 to UTF16 */ + +SceSSize scePafCesUtf8ToUtf16(ScePafString *utf8, ScePafWString *utf16); + +SceSSize scePafCesUtf8ToUtf16WithFlag(ScePafString *utf8, ScePafWString *utf16, SceUInt32 flags); + +SceSSize scePafCesUtf8CharToUtf16(char *utf8, ScePafWString *utf16); + +SceSSize scePafCesUtf8CharToUtf16WithFlag(char *utf8, ScePafWString *utf16, SceUInt32 flags); + +ScePafWString *scePafCesUtf8CharToUtf16WithAlloc(char *utf8, ScePafWString *utf16); + +/* UTF16 to UTF8 */ + +SceSSize scePafCesUtf16ToUtf8(ScePafWString *utf16, ScePafString *utf8); + +SceSSize scePafCesUtf16ToUtf8WithFlag(ScePafWString *utf16, ScePafString *utf8, SceUInt32 flags); + +SceSSize scePafCesUtf16CharToUtf8(SceWChar16 *utf16, ScePafString *utf8); + +SceSSize scePafCesUtf16CharToUtf8WithFlag(SceWChar16 *utf16, ScePafString *utf8, SceUInt32 flags); + +ScePafString *scePafCesUtf16CharToUtf8WithAlloc(SceWChar16 *utf16, ScePafString *utf8); + #ifdef __cplusplus } #endif diff --git a/nids/360/ScePaf.yml b/nids/360/ScePaf.yml index 8b9e5d4..6b01c3a 100644 --- a/nids/360/ScePaf.yml +++ b/nids/360/ScePaf.yml @@ -2,9 +2,22 @@ modules: ScePaf: nid: 0xCD679177 libraries: + ScePafCommon: + nid: 0x3C1965CD + functions: + scePafCesUtf16CharToUtf8: 0x8E009780 + scePafCesUtf16CharToUtf8WithFlag: 0x5FAAAE1C + scePafCesUtf16ToUtf8: 0x06C015C6 + scePafCesUtf16ToUtf8WithFlag: 0x683BC8E8 + scePafCesUtf8CharToUtf16: 0x950C3AA0 + scePafCesUtf8CharToUtf16WithFlag: 0xA9ED25D9 + scePafCesUtf8ToUtf16: 0x3CFEB1EB + scePafCesUtf8ToUtf16WithFlag: 0x23A39B05 ScePafMisc: nid: 0x3D643CE8 functions: + scePafCesUtf16CharToUtf8WithAlloc: 0xE690F751 + scePafCesUtf8CharToUtf16WithAlloc: 0xA6ABC0B2 sce_paf_misc_does_file_exist: 0x95F14046 ScePafResource: nid: 0x2836DC9B |