Added SET_LAST_POKE for STA/STX/STY using absolute addressing (frequently used wasting 1 cycle) and PHA.
This commit is contained in:
thrust26 2018-12-28 12:36:00 +01:00
parent 6987c06337
commit 84300914cc
2 changed files with 8 additions and 2 deletions

View File

@ -3017,7 +3017,7 @@ case 0x48:
{
peek(PC, DISASM_NONE);
}
// TODO - add tracking for this opcode
SET_LAST_POKE(myLastSrcAddressA)
{
poke(0x0100 + SP--, A, DISASM_WRITE);
}
@ -4602,6 +4602,7 @@ case 0x8d:
operandAddress = peek(PC++, DISASM_CODE);
operandAddress |= (uInt16(peek(PC++, DISASM_CODE)) << 8);
}
SET_LAST_POKE(myLastSrcAddressA)
{
poke(operandAddress, A, DISASM_WRITE);
}
@ -4687,6 +4688,7 @@ case 0x8e:
operandAddress = peek(PC++, DISASM_CODE);
operandAddress |= (uInt16(peek(PC++, DISASM_CODE)) << 8);
}
SET_LAST_POKE(myLastSrcAddressX)
{
poke(operandAddress, X, DISASM_WRITE);
}
@ -4722,6 +4724,7 @@ case 0x8c:
operandAddress = peek(PC++, DISASM_CODE);
operandAddress |= (uInt16(peek(PC++, DISASM_CODE)) << 8);
}
SET_LAST_POKE(myLastSrcAddressY)
{
poke(operandAddress, Y, DISASM_WRITE);
}

View File

@ -1842,7 +1842,7 @@ break;
// PHA
case 0x48:
M6502_IMPLIED
// TODO - add tracking for this opcode
SET_LAST_POKE(myLastSrcAddressA)
M6502_PHA
break;
@ -2228,6 +2228,7 @@ break;
case 0x8d:
M6502_ABSOLUTE_WRITE
SET_LAST_POKE(myLastSrcAddressA)
M6502_STA
break;
@ -2268,6 +2269,7 @@ break;
case 0x8e:
M6502_ABSOLUTE_WRITE
SET_LAST_POKE(myLastSrcAddressX)
M6502_STX
break;
//////////////////////////////////////////////////
@ -2288,6 +2290,7 @@ break;
case 0x8c:
M6502_ABSOLUTE_WRITE
SET_LAST_POKE(myLastSrcAddressY)
M6502_STY
break;
//////////////////////////////////////////////////