From 960de7bd7b8280dcd2bd1293f7d88bc715408713 Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Tue, 30 May 2017 11:59:07 -0400 Subject: [PATCH] Marginally reduced test machine costs based on usage. --- .../Mac/Clock SignalTests/Bridges/TestMachineZ80.mm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/OSBindings/Mac/Clock SignalTests/Bridges/TestMachineZ80.mm b/OSBindings/Mac/Clock SignalTests/Bridges/TestMachineZ80.mm index 10e811be3..000b3984d 100644 --- a/OSBindings/Mac/Clock SignalTests/Bridges/TestMachineZ80.mm +++ b/OSBindings/Mac/Clock SignalTests/Bridges/TestMachineZ80.mm @@ -121,9 +121,6 @@ static CPU::Z80::Register registerForRegister(CSTestMachineZ80Register reg) { _cppTrapHandler = new MachineTrapHandler(self); _busOperationHandler = new BusOperationHandler(self); _busOperationCaptures = [[NSMutableArray alloc] init]; - - _processor.set_trap_handler(_cppTrapHandler); - _processor.set_memory_access_delegate(_busOperationHandler); } return self; } @@ -162,6 +159,7 @@ static CPU::Z80::Register registerForRegister(CSTestMachineZ80Register reg) { } - (void)addTrapAddress:(uint16_t)trapAddress { + _processor.set_trap_handler(_cppTrapHandler); _processor.add_trap_address(trapAddress); } @@ -186,6 +184,11 @@ static CPU::Z80::Register registerForRegister(CSTestMachineZ80Register reg) { #pragma mark - Bus operation accumulation +- (void)setCaptureBusActivity:(BOOL)captureBusActivity { + _captureBusActivity = captureBusActivity; + _processor.set_memory_access_delegate(captureBusActivity ? _busOperationHandler : nullptr); +} + - (void)testMachineDidPerformBusOperation:(CPU::Z80::BusOperation)operation address:(uint16_t)address value:(uint8_t)value timeStamp:(int)timeStamp { int length = timeStamp - _lastOpcodeTime; _lastOpcodeTime = timeStamp;