From 678ae00e0a4dc7fbe7b4027a1ed7bc3bcd253cec Mon Sep 17 00:00:00 2001 From: StapleButter Date: Wed, 5 Jul 2017 18:46:19 +0200 Subject: support 16-bit reads to the div/sqrt registers --- src/NDS.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'src') diff --git a/src/NDS.cpp b/src/NDS.cpp index 5aa5f00..a2f77eb 100644 --- a/src/NDS.cpp +++ b/src/NDS.cpp @@ -1463,8 +1463,30 @@ u16 ARM9IORead16(u32 addr) case 0x04000248: return GPU::VRAMCNT[7] | (GPU::VRAMCNT[8] << 8); case 0x04000280: return DivCnt; + case 0x04000290: return DivNumerator[0] & 0xFFFF; + case 0x04000292: return DivNumerator[0] >> 16; + case 0x04000294: return DivNumerator[1] & 0xFFFF; + case 0x04000296: return DivNumerator[1] >> 16; + case 0x04000298: return DivDenominator[0] & 0xFFFF; + case 0x0400029A: return DivDenominator[0] >> 16; + case 0x0400029C: return DivDenominator[1] & 0xFFFF; + case 0x0400029E: return DivDenominator[1] >> 16; + case 0x040002A0: return DivQuotient[0] & 0xFFFF; + case 0x040002A2: return DivQuotient[0] >> 16; + case 0x040002A4: return DivQuotient[1] & 0xFFFF; + case 0x040002A6: return DivQuotient[1] >> 16; + case 0x040002A8: return DivRemainder[0] & 0xFFFF; + case 0x040002AA: return DivRemainder[0] >> 16; + case 0x040002AC: return DivRemainder[1] & 0xFFFF; + case 0x040002AE: return DivRemainder[1] >> 16; case 0x040002B0: return SqrtCnt; + case 0x040002B4: return SqrtRes & 0xFFFF; + case 0x040002B6: return SqrtRes >> 16; + case 0x040002B8: return SqrtVal[0] & 0xFFFF; + case 0x040002BA: return SqrtVal[0] >> 16; + case 0x040002BC: return SqrtVal[1] & 0xFFFF; + case 0x040002BE: return SqrtVal[1] >> 16; case 0x04000300: return PostFlag9; case 0x04000304: return PowerControl9; -- cgit v1.2.3