From 61473d526ebb8b62059ca4aa979ea325446167fd Mon Sep 17 00:00:00 2001 From: Zopolis4 Date: Mon, 15 Aug 2022 10:07:59 +1000 Subject: [PATCH] maybe fix command parsin thging why is it designed this way --- Source/Core/Core/HW/SI/SI_DeviceBaseboard.cpp | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/Source/Core/Core/HW/SI/SI_DeviceBaseboard.cpp b/Source/Core/Core/HW/SI/SI_DeviceBaseboard.cpp index 9ed61ebfb129..04a500b3e2b4 100644 --- a/Source/Core/Core/HW/SI/SI_DeviceBaseboard.cpp +++ b/Source/Core/Core/HW/SI/SI_DeviceBaseboard.cpp @@ -140,18 +140,21 @@ int CSIDevice_Baseboard::RunBuffer(u8* buffer, int request_length) #undef ptr } // (tmbinc) hotfix: delay output by one command to work around their broken parser. this took me a month to find. ARG! - static unsigned char last[2][0x80]; - static int lastptr[2]; + // + // + // mebbe fix games not takingthe input for soeme reason + // static unsigned char last[2][0x80]; + // static int lastptr[2]; - memcpy(last + 1, buffer, 0x80); - memcpy(buffer, last, 0x80); - memcpy(last, last + 1, 0x80); + // memcpy(last + 1, buffer, 0x80); + // memcpy(buffer, last, 0x80); + // memcpy(last, last + 1, 0x80); - lastptr[1] = request_length; - request_length = lastptr[0]; - lastptr[0] = lastptr[1]; + // lastptr[1] = request_length; + // request_length = lastptr[0]; + // lastptr[0] = lastptr[1]; - position = request_length; + // position = request_length; break; } default: