|
|
|
@ -1283,22 +1283,38 @@ void CheatCode::Apply() const
|
|
|
|
(DoMemoryRead<u8>(address + 14) == f15 || f15 == wildcard) &&
|
|
|
|
(DoMemoryRead<u8>(address + 14) == f15 || f15 == wildcard) &&
|
|
|
|
(DoMemoryRead<u8>(address + 15) == f16 || f16 == wildcard))
|
|
|
|
(DoMemoryRead<u8>(address + 15) == f16 || f16 == wildcard))
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if (r1 != wildcard) DoMemoryWrite<u8>(address , r1 );
|
|
|
|
if (r1 != wildcard)
|
|
|
|
if (r2 != wildcard) DoMemoryWrite<u8>(address+1 , r2 );
|
|
|
|
DoMemoryWrite<u8>(address, r1);
|
|
|
|
if (r3 != wildcard) DoMemoryWrite<u8>(address+2 , r3 );
|
|
|
|
if (r2 != wildcard)
|
|
|
|
if (r4 != wildcard) DoMemoryWrite<u8>(address+3 , r4 );
|
|
|
|
DoMemoryWrite<u8>(address + 1, r2);
|
|
|
|
if (r5 != wildcard) DoMemoryWrite<u8>(address+4 , r5 );
|
|
|
|
if (r3 != wildcard)
|
|
|
|
if (r6 != wildcard) DoMemoryWrite<u8>(address+5 , r6 );
|
|
|
|
DoMemoryWrite<u8>(address + 2, r3);
|
|
|
|
if (r7 != wildcard) DoMemoryWrite<u8>(address+6 , r7 );
|
|
|
|
if (r4 != wildcard)
|
|
|
|
if (r8 != wildcard) DoMemoryWrite<u8>(address+7 , r8 );
|
|
|
|
DoMemoryWrite<u8>(address + 3, r4);
|
|
|
|
if (r9 != wildcard) DoMemoryWrite<u8>(address+8 , r9 );
|
|
|
|
if (r5 != wildcard)
|
|
|
|
if (r10 != wildcard) DoMemoryWrite<u8>(address+9 , r10);
|
|
|
|
DoMemoryWrite<u8>(address + 4, r5);
|
|
|
|
if (r11 != wildcard) DoMemoryWrite<u8>(address+10, r11);
|
|
|
|
if (r6 != wildcard)
|
|
|
|
if (r12 != wildcard) DoMemoryWrite<u8>(address+11, r12);
|
|
|
|
DoMemoryWrite<u8>(address + 5, r6);
|
|
|
|
if (r13 != wildcard) DoMemoryWrite<u8>(address+12, r13);
|
|
|
|
if (r7 != wildcard)
|
|
|
|
if (r14 != wildcard) DoMemoryWrite<u8>(address+13, r14);
|
|
|
|
DoMemoryWrite<u8>(address + 6, r7);
|
|
|
|
if (r15 != wildcard) DoMemoryWrite<u8>(address+14, r15);
|
|
|
|
if (r8 != wildcard)
|
|
|
|
if (r16 != wildcard) DoMemoryWrite<u8>(address+15, r16);
|
|
|
|
DoMemoryWrite<u8>(address + 7, r8);
|
|
|
|
|
|
|
|
if (r9 != wildcard)
|
|
|
|
|
|
|
|
DoMemoryWrite<u8>(address + 8, r9);
|
|
|
|
|
|
|
|
if (r10 != wildcard)
|
|
|
|
|
|
|
|
DoMemoryWrite<u8>(address + 9, r10);
|
|
|
|
|
|
|
|
if (r11 != wildcard)
|
|
|
|
|
|
|
|
DoMemoryWrite<u8>(address + 10, r11);
|
|
|
|
|
|
|
|
if (r12 != wildcard)
|
|
|
|
|
|
|
|
DoMemoryWrite<u8>(address + 11, r12);
|
|
|
|
|
|
|
|
if (r13 != wildcard)
|
|
|
|
|
|
|
|
DoMemoryWrite<u8>(address + 12, r13);
|
|
|
|
|
|
|
|
if (r14 != wildcard)
|
|
|
|
|
|
|
|
DoMemoryWrite<u8>(address + 13, r14);
|
|
|
|
|
|
|
|
if (r15 != wildcard)
|
|
|
|
|
|
|
|
DoMemoryWrite<u8>(address + 14, r15);
|
|
|
|
|
|
|
|
if (r16 != wildcard)
|
|
|
|
|
|
|
|
DoMemoryWrite<u8>(address + 15, r16);
|
|
|
|
address = address + 15;
|
|
|
|
address = address + 15;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -1488,7 +1504,7 @@ void CheatCode::Apply() const
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
{
|
|
|
|
{
|
|
|
|
Log_ErrorPrintf("Invalid command in second slide parameter 0x%02hhX", write_type);
|
|
|
|
Log_ErrorPrintf("Invalid command in second slide parameter 0x%02X", static_cast<unsigned>(write_type));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
index += 2;
|
|
|
|
index += 2;
|
|
|
|
|