From 842f256931bda784c96039b7c0e57aad041b3c96 Mon Sep 17 00:00:00 2001 From: Steven Hugg Date: Sat, 11 Jul 2020 12:26:37 -0500 Subject: [PATCH] probe recorder test, fixes --- src/common/baseplatform.ts | 2 +- src/common/devices.ts | 4 ++-- src/common/recorder.ts | 49 ++++++++++++++++++++++++++++---------- test/cli/testplatforms.js | 17 ++++++++++++- 4 files changed, 55 insertions(+), 17 deletions(-) diff --git a/src/common/baseplatform.ts b/src/common/baseplatform.ts index 39200ab3..0e6f2743 100644 --- a/src/common/baseplatform.ts +++ b/src/common/baseplatform.ts @@ -1109,7 +1109,7 @@ export abstract class BaseMachinePlatform extends BaseDebugPl // so probe views stick around runToVsync() { if (this.probeRecorder) { - this.probeRecorder.reset(); + this.probeRecorder.clear(); this.probeRecorder.singleFrame = false; } super.runToVsync(); diff --git a/src/common/devices.ts b/src/common/devices.ts index e83078b2..300950da 100644 --- a/src/common/devices.ts +++ b/src/common/devices.ts @@ -311,7 +311,7 @@ export abstract class BasicScanlineMachine extends BasicMachine implements Raste var steps = 0; this.probe.logNewFrame(); for (var sl=0; sl 0) { this.fclk += clocks; if (this.lastOp() == ProbeFlags.CLOCKS) @@ -221,7 +231,7 @@ export class ProbeRecorder implements ProbeAll { logNewFrame() { this.log(ProbeFlags.FRAME); this.sl = 0; - if (this.singleFrame) this.reset(); + if (this.singleFrame) this.clear(); } logExecute(address:number, SP:number) { // record stack pushes/pops (from last instruction) @@ -263,8 +273,21 @@ export class ProbeRecorder implements ProbeAll { logIllegal(address:number) { this.log(address | ProbeFlags.ILLEGAL); } + countEvents(op : number) : number { + var count = 0; + for (var i=0; i