mirror of
https://github.com/TomHarte/CLK.git
synced 2025-08-07 23:25:00 +00:00
Resolves incorrectly flow after setting up an absolute address.
This commit is contained in:
@@ -32,6 +32,11 @@ template <typename BusHandler> void Processor<BusHandler>::run_for(const Cycles
|
|||||||
const MicroOp operation = *next_op_;
|
const MicroOp operation = *next_op_;
|
||||||
++next_op_;
|
++next_op_;
|
||||||
|
|
||||||
|
#ifndef NDEBUG
|
||||||
|
// As a sanity check.
|
||||||
|
bus_value = nullptr;
|
||||||
|
#endif
|
||||||
|
|
||||||
switch(operation) {
|
switch(operation) {
|
||||||
|
|
||||||
//
|
//
|
||||||
@@ -208,7 +213,7 @@ template <typename BusHandler> void Processor<BusHandler>::run_for(const Cycles
|
|||||||
|
|
||||||
case OperationConstructAbsolute:
|
case OperationConstructAbsolute:
|
||||||
data_address_ = instruction_buffer_.value + data_bank_;
|
data_address_ = instruction_buffer_.value + data_bank_;
|
||||||
break;
|
continue;
|
||||||
|
|
||||||
case OperationConstructAbsoluteIndexedIndirect:
|
case OperationConstructAbsoluteIndexedIndirect:
|
||||||
data_address_ = (instruction_buffer_.value + x()) & 0xffff;
|
data_address_ = (instruction_buffer_.value + x()) & 0xffff;
|
||||||
|
Reference in New Issue
Block a user