aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorStapleButter <thetotalworm@gmail.com>2017-07-05 18:46:19 +0200
committerStapleButter <thetotalworm@gmail.com>2017-07-05 18:46:19 +0200
commit678ae00e0a4dc7fbe7b4027a1ed7bc3bcd253cec (patch)
tree6679ce00a93396eb2eb071389fc4624c1ce24787 /src
parentd5376b41846778f690a25814cca5bc171b29ddeb (diff)
support 16-bit reads to the div/sqrt registers
Diffstat (limited to 'src')
-rw-r--r--src/NDS.cpp22
1 files changed, 22 insertions, 0 deletions
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;