Use the correct slow path for block read/write
This commit is contained in:
parent
961b4252e2
commit
e85d2e2cf3
|
@ -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;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue