From 16098c38c802cd0c361ee0d57194ad84fa846685 Mon Sep 17 00:00:00 2001 From: brian218 Date: Sun, 13 Nov 2022 22:15:26 +0800 Subject: [PATCH] sys_ss_appliance_info_manager(): Fixed VSH error 80029567 and 80029564 --- rpcs3/Emu/Cell/lv2/sys_ss.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/rpcs3/Emu/Cell/lv2/sys_ss.cpp b/rpcs3/Emu/Cell/lv2/sys_ss.cpp index ea13b1ad85..99f525fc9d 100644 --- a/rpcs3/Emu/Cell/lv2/sys_ss.cpp +++ b/rpcs3/Emu/Cell/lv2/sys_ss.cpp @@ -158,6 +158,11 @@ error_code sys_ss_appliance_info_manager(u32 code, vm::ptr buffer) case 0x19002: { // AIM_get_device_type + constexpr u8 product_code[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x89 }; + std::memcpy(buffer.get_ptr(), product_code, 16); + if (g_cfg.core.debug_console_mode) + buffer[15] = 0xA0; + break; } case 0x19003: { @@ -165,7 +170,7 @@ error_code sys_ss_appliance_info_manager(u32 code, vm::ptr buffer) constexpr u8 idps[] = { 0x00, 0x00, 0x00, 0x01, 0x00, 0x89, 0x00, 0x0B, 0x14, 0x00, 0xEF, 0xDD, 0xCA, 0x25, 0x52, 0x66 }; std::memcpy(buffer.get_ptr(), idps, 16); if (g_cfg.core.debug_console_mode) - buffer[5] = 0x81; + buffer[5] = 0xA0; break; } case 0x19004: @@ -178,6 +183,10 @@ error_code sys_ss_appliance_info_manager(u32 code, vm::ptr buffer) case 0x19005: { // AIM_get_open_ps_id + be_t psid[2] = { +g_cfg.sys.console_psid_high, +g_cfg.sys.console_psid_low }; + u8* psid_bytes = reinterpret_cast(psid); + std::memcpy(buffer.get_ptr(), psid_bytes, 16); + break; } case 0x19006: {