libs: implement sceConvertKeycodeGetImeKeyboardType (#469)

* libs: implement sceConvertKeycodeGetImeKeyboardType

* fix: correct ConvertKeycode error codes

---------

Co-authored-by: nmzik <Nmzik@mail.ru>
This commit is contained in:
Brandon Strong
2026-09-02 16:57:10 -07:00
committed by GitHub
parent c85bd45604
commit b81f1fc774
2 changed files with 39 additions and 0 deletions
+37
View File
@@ -0,0 +1,37 @@
#include "common/abi.h"
#include "common/logging/log.h"
#include "libs/errno.h"
#include "libs/libs.h"
#include "loader/symbolDatabase.h"
namespace Libs {
LIB_VERSION("ConvertKeycode", 1, "ConvertKeycode", 1, 0);
namespace ConvertKeycode {
constexpr int CONVERT_KEYCODE_ERROR_INVALID_ADDRESS = -2135162831; // 0x80bc0031
constexpr int CONVERT_KEYCODE_ERROR_INVALID_USER_ID = -2135162864; // 0x80bc0010
static int KYTY_SYSV_ABI ConvertKeycodeGetImeKeyboardType(int32_t user_id, uint32_t* type) {
PRINT_NAME();
LOGF("\t user_id = %d\n", user_id);
if (type == nullptr) {
return CONVERT_KEYCODE_ERROR_INVALID_ADDRESS;
}
if (user_id < 0) {
return CONVERT_KEYCODE_ERROR_INVALID_USER_ID;
}
*type = 0;
return OK;
}
} // namespace ConvertKeycode
LIB_DEFINE(InitConvertKeycode_1) {
LIB_FUNC("mUuUOWI-C+0", ConvertKeycode::ConvertKeycodeGetImeKeyboardType);
}
} // namespace Libs
+2
View File
@@ -72,6 +72,7 @@ LIB_DEFINE(InitVideoOut_1);
LIB_DEFINE(InitAppContent_1);
LIB_DEFINE(InitAudio_1);
LIB_DEFINE(InitConvertKeycode_1);
LIB_DEFINE(InitDbgAddressSanitizer_1);
LIB_DEFINE(InitDialog_1);
LIB_DEFINE(InitFont_1);
@@ -93,6 +94,7 @@ LIB_DEFINE(InitUserService_1);
void InitAll(Loader::SymbolDatabase* s) {
InitAudio_1(s);
InitConvertKeycode_1(s);
LibAmpr::InitAmpr_1(s);
InitAppContent_1(s);
Coredump::InitCoredump_1(s);