summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorSepalani <sepalani@hotmail.fr>2026-02-04 19:49:09 +0400
committerJordan Woyak <jordan.woyak@gmail.com>2026-02-15 20:14:15 -0600
commit2ffa7cec0781afde855a071ae9e4bdc24ce0a825 (patch)
treed6b63a4cf61c3e8b7f724ed2387bdf762f739ccb /Source/Core
parentcbc7c2d3858aab404974a16be2b3cf54e98c923a (diff)
SI_DeviceAMBaseboard: Fix log issues related to GeneralDriverOutput
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Core/HW/SI/SI_DeviceAMBaseboard.cpp17
1 files changed, 12 insertions, 5 deletions
diff --git a/Source/Core/Core/HW/SI/SI_DeviceAMBaseboard.cpp b/Source/Core/Core/HW/SI/SI_DeviceAMBaseboard.cpp
index 326362bacf..060ff44773 100644
--- a/Source/Core/Core/HW/SI/SI_DeviceAMBaseboard.cpp
+++ b/Source/Core/Core/HW/SI/SI_DeviceAMBaseboard.cpp
@@ -2349,17 +2349,24 @@ int CSIDevice_AMBaseboard::RunBuffer(u8* buffer, int request_length)
break;
}
- if (!validate_jvs_io(std::max(bytes, 3u), "GeneralDriverOutput"))
+ if (!validate_jvs_io(bytes, "GeneralDriverOutput"))
break;
- const u16 seat_state = Common::swap16(jvs_io + 1) >> 2;
INFO_LOG_FMT(SERIALINTERFACE_JVSIO,
"JVS-IO: Command 0x32, GPO: delay=0x{:02x}, rx_reply=0x{:02x},"
- " seat_state=0x{:04x}, bytes={}, buffer:\n{}",
- delay, m_rx_reply, seat_state, bytes, HexDump(jvs_io, bytes));
- jvs_io += bytes;
+ " bytes={}, buffer:\n{}",
+ delay, m_rx_reply, bytes, HexDump(jvs_io, bytes));
+
+ if (bytes < 3)
+ {
+ jvs_io += bytes;
+ break;
+ }
// Handling of the motion seat used in F-Zero AXs DX version
+ const u16 seat_state = Common::swap16(jvs_io + 1) >> 2;
+ jvs_io += bytes;
+
switch (seat_state)
{
case 0x70: