diff --git a/src/timing.c b/src/timing.c index 14776671..0ad8c535 100644 --- a/src/timing.c +++ b/src/timing.c @@ -169,6 +169,7 @@ void cpu_thread(void *dummyptr) { unsigned long dbg_ticks = 0; int speaker_neg_feedback = 0; int speaker_pos_feedback = 0; + unsigned int dbg_cycles_executed = 0; #endif do @@ -217,6 +218,9 @@ void cpu_thread(void *dummyptr) { { cycles_adjust = ~cycles_adjust +1; // cycles_adjust *= -1 } +#ifndef NDEBUG + dbg_cycles_executed += cpu65_cycle_count; +#endif unsigned int uExecutedCycles = cpu65_cycle_count; MB_UpdateCycles(uExecutedCycles); // Update 6522s (NB. Do this before updating g_nCumulativeCycles below) @@ -277,7 +281,8 @@ void cpu_thread(void *dummyptr) { dbg_ticks += EXECUTION_PERIOD_NSECS; if ((dbg_ticks % NANOSECONDS) == 0) { - LOG("tick:(%ld.%ld) real:(%ld.%ld) ... speaker cycles feedback: %d/%d", t0.tv_sec, t0.tv_nsec, ti.tv_sec, ti.tv_nsec, speaker_neg_feedback, speaker_pos_feedback); + LOG("tick:(%ld.%ld) real:(%ld.%ld) cycles exe: %d ... speaker feedback: %d/%d", t0.tv_sec, t0.tv_nsec, ti.tv_sec, ti.tv_nsec, dbg_cycles_executed, speaker_neg_feedback, speaker_pos_feedback); + dbg_cycles_executed = 0; dbg_ticks = 0; speaker_neg_feedback = 0; speaker_pos_feedback = 0; diff --git a/src/timing.h b/src/timing.h index 48a209db..d83004fb 100644 --- a/src/timing.h +++ b/src/timing.h @@ -23,7 +23,7 @@ #define NANOSECONDS 1000000000 -// timing values cribbed from AppleWin +// timing values cribbed from AppleWin ... should double-check _Understanding the Apple IIe_ // 14318181.81... #define _M14 (157500000.0 / 11.0)