diff options
| author | Scott Mansell <phiren@gmail.com> | 2015-09-09 12:31:00 +1200 |
|---|---|---|
| committer | Scott Mansell <phiren@gmail.com> | 2015-09-12 22:19:59 +1200 |
| commit | 44456bec0fcbbcbf3b074c30e19fc73d11e3880b (patch) | |
| tree | e4f3266b5b70918f4d33dba1ccab6bd15e128136 /Source/Core | |
| parent | 067d65bbf50f891d0b0e042bac295407bdd555a3 (diff) | |
Add some logging for depth tested efb color pokes.
Diffstat (limited to 'Source/Core')
| -rw-r--r-- | Source/Core/Core/PowerPC/MMU.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/Source/Core/Core/PowerPC/MMU.cpp b/Source/Core/Core/PowerPC/MMU.cpp index 44450c4269..240887316f 100644 --- a/Source/Core/Core/PowerPC/MMU.cpp +++ b/Source/Core/Core/PowerPC/MMU.cpp @@ -72,7 +72,11 @@ static u32 EFB_Read(const u32 addr) int x = (addr & 0xfff) >> 2; int y = (addr >> 12) & 0x3ff; - if (addr & 0x00400000) + if (addr & 0x00800000) + { + ERROR_LOG(MEMMAP, "Unimplemented Z+Color EFB read @ 0x%08x", addr); + } + else if (addr & 0x00400000) { var = g_video_backend->Video_AccessEFB(PEEK_Z, x, y, 0); DEBUG_LOG(MEMMAP, "EFB Z Read @ %i, %i\t= 0x%08x", x, y, var); @@ -91,7 +95,13 @@ static void EFB_Write(u32 data, u32 addr) int x = (addr & 0xfff) >> 2; int y = (addr >> 12) & 0x3ff; - if (addr & 0x00400000) + if (addr & 0x00800000) + { + // It's possible to do a z-tested write to EFB by writing a 64bit value to this address range. + // Not much is known, but let's at least get some loging. + ERROR_LOG(MEMMAP, "Unimplemented Z+Color EFB write. %08x @ 0x%08x", data, addr); + } + else if (addr & 0x00400000) { g_video_backend->Video_AccessEFB(POKE_Z, x, y, data); DEBUG_LOG(MEMMAP, "EFB Z Write %08x @ %i, %i", data, x, y); |
