summaryrefslogtreecommitdiff
path: root/Source/UnitTests/Core/MMIOTest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/UnitTests/Core/MMIOTest.cpp')
-rw-r--r--Source/UnitTests/Core/MMIOTest.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/Source/UnitTests/Core/MMIOTest.cpp b/Source/UnitTests/Core/MMIOTest.cpp
index f9173ce0c4..bb7f1c4714 100644
--- a/Source/UnitTests/Core/MMIOTest.cpp
+++ b/Source/UnitTests/Core/MMIOTest.cpp
@@ -25,11 +25,24 @@ TEST(UniqueID, UniqueEnough)
TEST(IsMMIOAddress, SpecialAddresses)
{
+ SConfig::Init();
+ SConfig::GetInstance().m_LocalCoreStartupParameter.bWii = true;
+
// WG Pipe address, should not be handled by MMIO.
EXPECT_FALSE(MMIO::IsMMIOAddress(0xCC008000));
// Memory zone used by games using the "MMU Speedhack".
EXPECT_FALSE(MMIO::IsMMIOAddress(0xE0000000));
+
+ // Uncached mirror of MEM1, shouldn't be handled by MMIO
+ EXPECT_FALSE(MMIO::IsMMIOAddress(0xC0000000));
+
+ // And lets check some valid addresses too
+ EXPECT_TRUE(MMIO::IsMMIOAddress(0xCC0000E0)); // Gamecube MMIOs
+ EXPECT_TRUE(MMIO::IsMMIOAddress(0xCD00008C)); // Wii MMIOs
+ EXPECT_TRUE(MMIO::IsMMIOAddress(0xCD800F10)); // Mirror of Wii MMIOs
+
+ SConfig::Shutdown();
}
class MappingTest : public testing::Test