diff --git a/Core/HLE/sceCcc.cpp b/Core/HLE/sceCcc.cpp index 1ce4fd649..a303eb6d3 100644 --- a/Core/HLE/sceCcc.cpp +++ b/Core/HLE/sceCcc.cpp @@ -38,6 +38,12 @@ int sceCccUTF8toSJIS(u32 dstAddr, int dstSize, u32 srcAddr) return 0; } +int sceCccUTF16toUTF8(u32 dstAddr, int dstSize, u32 srcAddr) +{ + ERROR_LOG_REPORT(HLE, "UNIMPL sceCccUTF16toUTF8(%08x, %d, %08x)", dstAddr, dstSize, srcAddr); + return 0; +} + int sceCccUTF16toSJIS(u32 dstAddr, int dstSize, u32 srcAddr) { ERROR_LOG_REPORT(HLE, "UNIMPL sceCccUTF16toSJIS(%08x, %d, %08x)", dstAddr, dstSize, srcAddr); @@ -59,9 +65,21 @@ int sceCccSJIStoUTF16(u32 dstAddr, int dstSize, u32 srcAddr) return 0; } -int sceCccStrlenUTF16(u32 strUTF16) +int sceCccStrlenUTF8(u32 strAddr) { - ERROR_LOG_REPORT(HLE, "UNIMPL sceCccStrlenUTF16(%08x)", strUTF16); + ERROR_LOG_REPORT(HLE, "UNIMPL sceCccStrlenUTF8(%08x)", strAddr); + return 0; +} + +int sceCccStrlenUTF16(u32 strAddr) +{ + ERROR_LOG_REPORT(HLE, "UNIMPL sceCccStrlenUTF16(%08x)", strAddr); + return 0; +} + +int sceCccStrlenSJIS(u32 strAddr) +{ + ERROR_LOG_REPORT(HLE, "UNIMPL sceCccStrlenSJIS(%08x)", strAddr); return 0; } @@ -77,24 +95,71 @@ int sceCccEncodeUTF16(u32 dstAddr, u32 ucs) return 0; } +int sceCccEncodeSJIS(u32 dstAddr, u32 ucs) +{ + ERROR_LOG_REPORT(HLE, "UNIMPL sceCccEncodeSJIS(%08x, U+%04x)", dstAddr, ucs); + return 0; +} + int sceCccDecodeUTF8(u32 dstAddrAddr) { ERROR_LOG_REPORT(HLE, "UNIMPL sceCccDecodeUTF8(%08x)", dstAddrAddr); return 0; } +int sceCccDecodeUTF16(u32 dstAddrAddr) +{ + ERROR_LOG_REPORT(HLE, "UNIMPL sceCccDecodeUTF16(%08x)", dstAddrAddr); + return 0; +} + +int sceCccDecodeSJIS(u32 dstAddrAddr) +{ + ERROR_LOG_REPORT(HLE, "UNIMPL sceCccDecodeSJIS(%08x)", dstAddrAddr); + return 0; +} + +int sceCccUCStoJIS() +{ + ERROR_LOG_REPORT(HLE, "UNIMPL sceCccUCStoJIS(?)"); + return 0; +} + +int sceCccJIStoUCS() +{ + ERROR_LOG_REPORT(HLE, "UNIMPL sceCccUCStoJIS(?)"); + return 0; +} + const HLEFunction sceCcc[] = { {0xB4D1CBBF, WrapI_UU, "sceCccSetTable"}, {0x00D1378F, WrapI_UIU, "sceCccUTF8toUTF16"}, {0x6F82EE03, WrapI_UIU, "sceCccUTF8toSJIS"}, + {0x41B724A5, WrapI_UIU, "sceCccUTF16toUTF8"}, {0xF1B73D12, WrapI_UIU, "sceCccUTF16toSJIS"}, {0xA62E6E80, WrapI_UIU, "sceCccSJIStoUTF8"}, {0xBEB47224, WrapI_UIU, "sceCccSJIStoUTF16"}, + {0xb7d3c112, WrapI_U, "sceCccStrlenUTF8"}, {0x4BDEB2A8, WrapI_U, "sceCccStrlenUTF16"}, + {0xd9392ccb, WrapI_U, "sceCccStrlenSJIS"}, {0x92C05851, WrapI_UU, "sceCccEncodeUTF8"}, {0x8406F469, WrapI_UU, "sceCccEncodeUTF16"}, + {0x068c4320, WrapI_UU, "sceCccEncodeSJIS"}, {0xc6a8bee2, WrapI_U, "sceCccDecodeUTF8"}, + {0xe0cf8091, WrapI_U, "sceCccDecodeUTF16"}, + {0x953e6c10, WrapI_U, "sceCccDecodeSJIS"}, + {0x90521ac5, 0, "sceCccIsValidUTF8"}, + {0xcc0a8bda, 0, "sceCccIsValidUTF16"}, + {0x67bf0d19, 0, "sceCccIsValidSJIS"}, + {0x76e33e9c, 0, "sceCccIsValidUCS2"}, + {0xd2b18485, 0, "sceCccIsValidUCS4"}, + {0xa2d5d209, 0, "sceCccIsValidJIS"}, + {0x17e1d813, 0, "sceCccSetErrorCharUTF8"}, + {0xb8476cf4, 0, "sceCccSetErrorCharUTF16"}, + {0xc56949ad, 0, "sceCccSetErrorCharSJIS"}, + {0x70ecaa10, WrapI_V, "sceCccUCStoJIS"}, + {0xfb7846e2, WrapI_V, "sceCccJIStoUCS"}, }; void Register_sceCcc()