Use the correct slow path for block read/write

This commit is contained in:
RSDuck 2020-07-23 19:12:25 +00:00
parent 961b4252e2
commit e85d2e2cf3
1 changed files with 10 additions and 10 deletions

View File

@ -643,22 +643,22 @@ s32 Compiler::Comp_MemAccessBlock(int rn, BitSet16 regs, bool store, bool preinc
if (Num == 0) if (Num == 0)
{ {
MOV(X3, RCPU); MOV(X3, RCPU);
switch (preinc * 2 | store) switch (store * 2 | NDS::ConsoleType)
{ {
case 0: QuickCallFunction(X4, SlowBlockTransfer9<false, false>); break; case 0: QuickCallFunction(X4, SlowBlockTransfer9<false, 0>); break;
case 1: QuickCallFunction(X4, SlowBlockTransfer9<false, true>); break; case 1: QuickCallFunction(X4, SlowBlockTransfer9<false, 1>); break;
case 2: QuickCallFunction(X4, SlowBlockTransfer9<true, false>); break; case 2: QuickCallFunction(X4, SlowBlockTransfer9<true, 0>); break;
case 3: QuickCallFunction(X4, SlowBlockTransfer9<true, true>); break; case 3: QuickCallFunction(X4, SlowBlockTransfer9<true, 1>); break;
} }
} }
else else
{ {
switch (preinc * 2 | store) switch (store * 2 | NDS::ConsoleType)
{ {
case 0: QuickCallFunction(X4, SlowBlockTransfer7<false, false>); break; case 0: QuickCallFunction(X4, SlowBlockTransfer7<false, 0>); break;
case 1: QuickCallFunction(X4, SlowBlockTransfer7<false, true>); break; case 1: QuickCallFunction(X4, SlowBlockTransfer7<false, 1>); break;
case 2: QuickCallFunction(X4, SlowBlockTransfer7<true, false>); break; case 2: QuickCallFunction(X4, SlowBlockTransfer7<true, 0>); break;
case 3: QuickCallFunction(X4, SlowBlockTransfer7<true, true>); break; case 3: QuickCallFunction(X4, SlowBlockTransfer7<true, 1>); break;
} }
} }