From 5716d2bc0ec1f4cd22c2343a64c3ea4f0655ed0b Mon Sep 17 00:00:00 2001 From: container1234 Date: Thu, 13 Oct 2016 23:33:17 +0900 Subject: [PATCH] Fix incorrect byte order when writing 3byte data to BBA_WRTXFIFOD --- Source/Core/Core/HW/EXI_DeviceEthernet.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Source/Core/Core/HW/EXI_DeviceEthernet.cpp b/Source/Core/Core/HW/EXI_DeviceEthernet.cpp index d6b3a1d7ea..f20cb1d456 100644 --- a/Source/Core/Core/HW/EXI_DeviceEthernet.cpp +++ b/Source/Core/Core/HW/EXI_DeviceEthernet.cpp @@ -345,6 +345,8 @@ void CEXIETHERNET::MXCommandHandler(u32 data, u32 size) case BBA_WRTXFIFOD: if (size == 2) data = Common::swap16(data & 0xffff); + else if (size == 3) + data = Common::swap32(data & 0xffffff) >> 8; else if (size == 4) data = Common::swap32(data); DirectFIFOWrite((u8*)&data, size);