1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-06-01 22:41:32 +00:00

Restore JMP (abs, x) length.

This commit is contained in:
Thomas Harte 2023-12-20 21:55:07 -05:00
parent 24c80060c8
commit 38c3d302a3

View File

@ -347,13 +347,13 @@ ProcessorStorage::ProcessorStorage(Personality personality) {
// Correct JMP (abs) and install JMP (abs, x).
//
// Guess: JMP (abs, x) uses the faster abs,x of ASL, LSL, etc rather than the older, slower of INC and DEC.
// Guess: JMP (abs, x), being listed at a fixed 6 cycles, uses the slower abs,x of INC and DEC.
Install(0x6c, Program(CycleReadAddressHLoadAddressL, CycleReadPCLFromAddress, CycleReadPCHFromAddressLowInc, CycleReadPCHFromAddressFixed));
Install(0x7c, Program(
CycleReadAddressHLoadAddressL, // (3) read second byte of (addr)
CycleAddYToAddressLow,
OperationCorrectAddressHigh, // (4?) read from incorrectly-calculated address
CycleReadPCLFromAddress, // (4/5) read from real (addr+x)
CycleAddYToAddressLowRead,
OperationCorrectAddressHigh, // (4) read from incorrectly-calculated address
CycleReadPCLFromAddress, // (5) read from real (addr+x)
CycleReadPCHFromAddressInc // (6) read from addr+x+1
));