mirror of
https://github.com/TomHarte/CLK.git
synced 2024-11-28 21:49:27 +00:00
Revise guess on JMP (abs, x).
This commit is contained in:
parent
d33deb676f
commit
24c80060c8
@ -346,11 +346,14 @@ ProcessorStorage::ProcessorStorage(Personality personality) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Correct JMP (abs) and install JMP (abs, x).
|
// 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.
|
||||||
Install(0x6c, Program(CycleReadAddressHLoadAddressL, CycleReadPCLFromAddress, CycleReadPCHFromAddressLowInc, CycleReadPCHFromAddressFixed));
|
Install(0x6c, Program(CycleReadAddressHLoadAddressL, CycleReadPCLFromAddress, CycleReadPCHFromAddressLowInc, CycleReadPCHFromAddressFixed));
|
||||||
Install(0x7c, Program(
|
Install(0x7c, Program(
|
||||||
CycleReadAddressHLoadAddressL, // (3) read second byte of (addr)
|
CycleReadAddressHLoadAddressL, // (3) read second byte of (addr)
|
||||||
CycleAddXToAddressLowRead, // (4) calculate addr+x, read from (addr+x) with high byte not yet calculated
|
CycleAddYToAddressLow,
|
||||||
OperationCorrectAddressHigh, CycleReadPCLFromAddress, // (5) read from real (addr+x)
|
OperationCorrectAddressHigh, // (4?) read from incorrectly-calculated address
|
||||||
|
CycleReadPCLFromAddress, // (4/5) read from real (addr+x)
|
||||||
CycleReadPCHFromAddressInc // (6) read from addr+x+1
|
CycleReadPCHFromAddressInc // (6) read from addr+x+1
|
||||||
));
|
));
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user