diff options
| author | naari3 <naari.named@gmail.com> | 2026-02-21 14:38:38 +0900 |
|---|---|---|
| committer | naari3 <naari.named@gmail.com> | 2026-02-21 14:38:38 +0900 |
| commit | adbecd00ec9e526da37f50da5f117d306f2bd463 (patch) | |
| tree | c1d7c204c0112b0bc325559a8ab4bb7c93c389fa /Source/Core | |
| parent | a297bb8068bdd6a0a80c9e476ad50c0c54cd1c8a (diff) | |
AMMediaboard: fix TestHardware string endianness in legacy Execute path
The legacy Execute1 path (offset=0, length=0) was using Write_U32
(big-endian) to write the "TEST OK" status string. However, the PPC
display code in segaboot reads this buffer with lwz followed by manual
bswap32, so the data must be stored in little-endian. Use Write_U32_Swap
to match the other two TestHardware paths.
Diffstat (limited to 'Source/Core')
| -rw-r--r-- | Source/Core/Core/HW/DVD/AMMediaboard.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Source/Core/Core/HW/DVD/AMMediaboard.cpp b/Source/Core/Core/HW/DVD/AMMediaboard.cpp index 4a327449eb..181dae3225 100644 --- a/Source/Core/Core/HW/DVD/AMMediaboard.cpp +++ b/Source/Core/Core/HW/DVD/AMMediaboard.cpp @@ -2112,8 +2112,8 @@ u32 ExecuteCommand(std::array<u32, 3>& dicmd_buf, u32* diimm_buf, u32 address, u // On real systems it shows the status about the DIMM/GD-ROM here // We just show "TEST OK" - memory.Write_U32(0x54455354, s_media_buffer_32[12]); - memory.Write_U32(0x204F4B00, s_media_buffer_32[12] + 4); + memory.Write_U32_Swap(0x54455354, s_media_buffer_32[12]); + memory.Write_U32_Swap(0x204F4B00, s_media_buffer_32[12] + 4); s_media_buffer_32[1] = s_media_buffer_32[9]; break; |
