mirror of
https://github.com/TomHarte/CLK.git
synced 2024-12-25 03:32:01 +00:00
Merge pull request #1124 from TomHarte/65816Branches
65816: Fix test (and commentary) for shortened emulated branches.
This commit is contained in:
commit
d641a9c2b1
@ -856,7 +856,7 @@ template <typename BusHandler, bool uses_ready_line> void Processor<BusHandler,
|
||||
\
|
||||
if( \
|
||||
!registers_.emulation_flag || \
|
||||
(registers_.pc & 0xff00) == (instruction_buffer_.value & 0xff00) \
|
||||
(registers_.pc & 0xff00) == (data_buffer_.value & 0xff00) \
|
||||
) { \
|
||||
++next_op_; \
|
||||
} \
|
||||
|
@ -600,9 +600,9 @@ struct CPU::WDC65816::ProcessorStorageConstructor {
|
||||
static void relative(AccessType, bool, const std::function<void(MicroOp)> &target) {
|
||||
target(CycleFetchIncrementPC); // Offset.
|
||||
|
||||
target(OperationPerform); // The branch instructions will all skip one or three
|
||||
target(OperationPerform); // The branch instructions will skip zero, one or three
|
||||
// of the next cycles, depending on the effect of
|
||||
// the jump. It'll also calculate the correct target
|
||||
// the jump. They'll also calculate the correct target
|
||||
// address, placing it into the data buffer.
|
||||
|
||||
target(CycleFetchPreviousPCThrowaway); // IO.
|
||||
|
Loading…
Reference in New Issue
Block a user