summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorReiko Asakura2020-09-01 17:09:25 -0400
committerReiko Asakura2020-09-01 17:09:25 -0400
commitf63ccb45052dcd9d177a46522ff5b71921011695 (patch)
treeb308fde1916a597ac87ffd746b517776e69026e0 /include
parentAdd SceGxmInternal functions (diff)
downloadvds-libraries-f63ccb45052dcd9d177a46522ff5b71921011695.tar.gz
Add scePafCes functions
Diffstat (limited to 'include')
-rw-r--r--include/user/paf.h48
1 files changed, 48 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