mirror of
https://github.com/TomHarte/CLK.git
synced 2024-11-26 23:52:26 +00:00
Improved test reporting, attempted to resolve timing errors just introduced (i.e. to differentiate break/continue where a cycle may or may not be spent).
This commit is contained in:
parent
f84b66a5f4
commit
534b3d085d
@ -217,7 +217,7 @@ class MOS6502TimingTests: XCTestCase, CSTestMachineJamHandler {
|
|||||||
machine.runForNumber(ofCycles: 10)
|
machine.runForNumber(ofCycles: 10)
|
||||||
}
|
}
|
||||||
|
|
||||||
XCTAssert(self.endTime == expectedRunLength, "Took \(self.endTime) cycles to perform")
|
XCTAssert(self.endTime == expectedRunLength, "Took \(self.endTime) cycles to perform rather than \(expectedRunLength)")
|
||||||
}
|
}
|
||||||
|
|
||||||
func testMachine(_ machine: CSTestMachine!, didJamAtAddress address: UInt16) {
|
func testMachine(_ machine: CSTestMachine!, didJamAtAddress address: UInt16) {
|
||||||
|
@ -964,8 +964,9 @@ template <class T> class Processor {
|
|||||||
_address.bytes.low = nextAddress.bytes.low;
|
_address.bytes.low = nextAddress.bytes.low;
|
||||||
if(_address.bytes.high != nextAddress.bytes.high) {
|
if(_address.bytes.high != nextAddress.bytes.high) {
|
||||||
throwaway_read(_address.full);
|
throwaway_read(_address.full);
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
|
continue;
|
||||||
case CycleAddXToAddressLowRead:
|
case CycleAddXToAddressLowRead:
|
||||||
nextAddress.full = _address.full + _x;
|
nextAddress.full = _address.full + _x;
|
||||||
_address.bytes.low = nextAddress.bytes.low;
|
_address.bytes.low = nextAddress.bytes.low;
|
||||||
@ -976,8 +977,9 @@ template <class T> class Processor {
|
|||||||
_address.bytes.low = nextAddress.bytes.low;
|
_address.bytes.low = nextAddress.bytes.low;
|
||||||
if(_address.bytes.high != nextAddress.bytes.high) {
|
if(_address.bytes.high != nextAddress.bytes.high) {
|
||||||
throwaway_read(_address.full);
|
throwaway_read(_address.full);
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
|
continue;
|
||||||
case CycleAddYToAddressLowRead:
|
case CycleAddYToAddressLowRead:
|
||||||
nextAddress.full = _address.full + _y;
|
nextAddress.full = _address.full + _y;
|
||||||
_address.bytes.low = nextAddress.bytes.low;
|
_address.bytes.low = nextAddress.bytes.low;
|
||||||
@ -1061,8 +1063,9 @@ template <class T> class Processor {
|
|||||||
uint16_t halfUpdatedPc = _pc.full;
|
uint16_t halfUpdatedPc = _pc.full;
|
||||||
_pc.full = nextAddress.full;
|
_pc.full = nextAddress.full;
|
||||||
throwaway_read(halfUpdatedPc);
|
throwaway_read(halfUpdatedPc);
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
|
||||||
#undef BRA
|
#undef BRA
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user