diff --git a/rpcs3/Emu/Cell/Modules/cellSysutil.cpp b/rpcs3/Emu/Cell/Modules/cellSysutil.cpp index b1b4542ed9..0a4c538f60 100644 --- a/rpcs3/Emu/Cell/Modules/cellSysutil.cpp +++ b/rpcs3/Emu/Cell/Modules/cellSysutil.cpp @@ -28,6 +28,7 @@ void fmt_class_string::format(std::string& out, u64 arg) STR_CASE(CELL_SYSUTIL_ERROR_BUSY); STR_CASE(CELL_SYSUTIL_ERROR_STATUS); STR_CASE(CELL_SYSUTIL_ERROR_MEMORY); + STR_CASE(CELL_SYSUTIL_ERROR_3D_SUPPORT); } return unknown; @@ -221,68 +222,68 @@ error_code cellSysutilGetSystemParamInt(CellSysutilParamId id, vm::ptr valu { case CELL_SYSUTIL_SYSTEMPARAM_ID_LANG: *value = g_cfg.sys.language; - break; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_ENTER_BUTTON_ASSIGN: *value = static_cast(g_cfg.sys.enter_button_assignment.get()); - break; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_DATE_FORMAT: *value = CELL_SYSUTIL_DATE_FMT_DDMMYYYY; - break; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_TIME_FORMAT: *value = CELL_SYSUTIL_TIME_FMT_CLOCK24; - break; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_TIMEZONE: *value = 180; - break; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_SUMMERTIME: *value = 0; - break; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_GAME_PARENTAL_LEVEL: *value = CELL_SYSUTIL_GAME_PARENTAL_OFF; - break; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_GAME_PARENTAL_LEVEL0_RESTRICT: *value = CELL_SYSUTIL_GAME_PARENTAL_LEVEL0_RESTRICT_OFF; - break; + break; // Report user has an NP account when np_psn_status is Fake or RPCN case CELL_SYSUTIL_SYSTEMPARAM_ID_CURRENT_USER_HAS_NP_ACCOUNT: *value = g_cfg.net.psn_status != np_psn_status::disabled; - break; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_CAMERA_PLFREQ: *value = CELL_SYSUTIL_CAMERA_PLFREQ_DISABLED; - break; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_PAD_RUMBLE: *value = CELL_SYSUTIL_PAD_RUMBLE_ON; - break; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_KEYBOARD_TYPE: *value = g_cfg.sys.keyboard_type; - break; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_JAPANESE_KEYBOARD_ENTRY_METHOD: - *value = 0; - break; + *value = CELL_SYSUTIL_KEYBOARD_ENTRY_METHOD_ROMAJI_INPUT; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_CHINESE_KEYBOARD_ENTRY_METHOD: - *value = 0; - break; + *value = CELL_SYSUTIL_KEYBOARD_ENTRY_METHOD_ZHUYIN_INPUT; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_PAD_AUTOOFF: - *value = 0; - break; + *value = CELL_SYSUTIL_PAD_AUTOOFF_OFF; + break; case CELL_SYSUTIL_SYSTEMPARAM_ID_MAGNETOMETER: - *value = 0; - break; + *value = CELL_SYSUTIL_MAGNETOMETER_OFF; + break; default: return CELL_SYSUTIL_ERROR_VALUE; diff --git a/rpcs3/Emu/Cell/Modules/cellSysutil.h b/rpcs3/Emu/Cell/Modules/cellSysutil.h index 0caba70e78..b111c986eb 100644 --- a/rpcs3/Emu/Cell/Modules/cellSysutil.h +++ b/rpcs3/Emu/Cell/Modules/cellSysutil.h @@ -4,15 +4,58 @@ using CellSysutilUserId = u32; +enum +{ + CELL_SYSUTIL_ERROR_BASE_INTERNAL = 0x8002b000, + CELL_SYSUTIL_ERROR_BASE_COMMON = 0x8002b100, + CELL_SYSUTIL_ERROR_BASE_SYSTEMPARAM = 0x8002b200, + CELL_SYSUTIL_ERROR_BASE_MSGDIALOG = 0x8002b300, + CELL_SYSUTIL_ERROR_BASE_SAVEDATA = 0x8002b400, + CELL_SYSUTIL_ERROR_BASE_OSKDIALOG = 0x8002b500, + CELL_SYSUTIL_ERROR_BASE_GAMEDATA = 0x8002b600, + CELL_SYSUTIL_ERROR_BASE_AVC = 0x8002b700, + CELL_SYSUTIL_ERROR_BASE_NETCTL = 0x8002b800, + CELL_SYSUTIL_ERROR_BASE_WEBBROWSER = 0x8002b900, + CELL_SYSUTIL_ERROR_BASE_HDDGAME = 0x8002ba00, + CELL_SYSUTIL_ERROR_BASE_SYSCONF = 0x8002bb00, + CELL_SYSUTIL_ERROR_BASE_SYSCACHE = 0x8002bc00, + CELL_SYSUTIL_ERROR_BASE_DISCGAME = 0x8002bd00, + CELL_SYSUTIL_ERROR_BASE_STORAGEDATA = 0x8002be00, + CELL_SYSUTIL_ERROR_BASE_IMEJP = 0x8002bf00, + CELL_SYSUTIL_ERROR_BASE_FILE_SELECT = 0x8002c000, + CELL_SYSUTIL_ERROR_BASE_MUSIC = 0x8002c100, + CELL_SYSUTIL_ERROR_BASE_PHOTO_EXPORT_UTIL = 0x8002c200, + CELL_SYSUTIL_ERROR_BASE_USERINFO = 0x8002c300, + CELL_SYSUTIL_ERROR_BASE_PRINT = 0x8002c400, + CELL_SYSUTIL_ERROR_BASE_REC = 0x8002c500, + CELL_SYSUTIL_ERROR_BASE_MUSIC_EXPORT_UTIL = 0x8002c600, + CELL_SYSUTIL_ERROR_BASE_PHOTO_IMPORT = 0x8002c700, + CELL_SYSUTIL_ERROR_BASE_SEARCH = 0x8002c800, + CELL_SYSUTIL_ERROR_BASE_PHOTO_DECODE = 0x8002c900, + CELL_SYSUTIL_ERROR_BASE_VIDEO_EXPORT_UTIL = 0x8002ca00, + CELL_SYSUTIL_ERROR_BASE_GAME = 0x8002cb00, + CELL_SYSUTIL_ERROR_BASE_GAMEUPDATE = 0x8002cc00, + CELL_SYSUTIL_ERROR_BASE_AP = 0x8002cd00, + CELL_SYSUTIL_ERROR_BASE_COMBOPLAY = 0x8002cd80, + CELL_SYSUTIL_ERROR_BASE_BGDL = 0x8002ce00, + CELL_SYSUTIL_ERROR_BASE_VIDEO_UPLOAD_UTIL = 0x8002d000, + CELL_SYSUTIL_ERROR_BASE_SCREENSHOT = 0x8002d100, + CELL_SYSUTIL_ERROR_BASE_AUTHDIALOG = 0x8002d200, + CELL_SYSUTIL_ERROR_BASE_BGMPLAYBACK_EX = 0x8002d300, + CELL_SYSUTIL_ERROR_BASE_SYSTEM_CHAT = 0x8002d400, + CELL_SYSUTIL_ERROR_BASE_PHOTO_NETWORK_SHARING = 0x8002d500, +}; + enum CellSysutilError : u32 { - CELL_SYSUTIL_ERROR_TYPE = 0x8002b101, - CELL_SYSUTIL_ERROR_VALUE = 0x8002b102, - CELL_SYSUTIL_ERROR_SIZE = 0x8002b103, - CELL_SYSUTIL_ERROR_NUM = 0x8002b104, - CELL_SYSUTIL_ERROR_BUSY = 0x8002b105, - CELL_SYSUTIL_ERROR_STATUS = 0x8002b106, - CELL_SYSUTIL_ERROR_MEMORY = 0x8002b107, + CELL_SYSUTIL_ERROR_TYPE = 0x8002b101, + CELL_SYSUTIL_ERROR_VALUE = 0x8002b102, + CELL_SYSUTIL_ERROR_SIZE = 0x8002b103, + CELL_SYSUTIL_ERROR_NUM = 0x8002b104, + CELL_SYSUTIL_ERROR_BUSY = 0x8002b105, + CELL_SYSUTIL_ERROR_STATUS = 0x8002b106, + CELL_SYSUTIL_ERROR_MEMORY = 0x8002b107, + CELL_SYSUTIL_ERROR_3D_SUPPORT = 0x8002b108, }; // Parameter IDs @@ -76,6 +119,19 @@ enum CELL_SYSUTIL_SYSTEMPARAM_CURRENT_USERNAME_SIZE = 0x40 }; +enum +{ + CELL_SYSUTIL_KEYBOARD_ENTRY_METHOD_ROMAJI_INPUT = 0, + CELL_SYSUTIL_KEYBOARD_ENTRY_METHOD_KANA_INPUT = 1, +}; + +enum +{ + CELL_SYSUTIL_KEYBOARD_ENTRY_METHOD_ZHUYIN_INPUT = 0, + CELL_SYSUTIL_KEYBOARD_ENTRY_METHOD_PINYIN_INPUT = 1, + CELL_SYSUTIL_KEYBOARD_ENTRY_METHOD_CANGJIE_INPUT = 2, +}; + enum { CELL_SYSUTIL_REQUEST_EXITGAME = 0x0101, @@ -152,6 +208,24 @@ enum CELL_SYSUTIL_PAD_RUMBLE_ON = 1, }; +enum +{ + CELL_SYSUTIL_PAD_AUTOOFF_OFF = 0, + CELL_SYSUTIL_PAD_AUTOOFF_ON = 1, +}; + +enum +{ + CELL_SYSUTIL_MAGNETOMETER_OFF = 0, + CELL_SYSUTIL_MAGNETOMETER_ON = 1, +}; + +enum +{ + CELL_SYSUTIL_INTERNET_BROWSER_START_RESTRICT_OFF = 0, + CELL_SYSUTIL_INTERNET_BROWSER_START_RESTRICT_ON = 1, +}; + enum { CELL_SYSCACHE_RET_OK_CLEARED = 0,