diff --git a/src/emu.zig b/src/emu.zig index 492268b..d297b4f 100644 --- a/src/emu.zig +++ b/src/emu.zig @@ -79,7 +79,7 @@ pub fn runUnsynchronized(quit: *Atomic(bool), sched: *Scheduler, cpu: *Arm7tdmi, runFrame(sched, cpu); if (audio_sync) syncToAudio(cpu); - tracker.completeFrame(); + tracker.tick(); } } else { while (!quit.load(.SeqCst)) { @@ -108,7 +108,7 @@ pub fn runSynchronized(quit: *Atomic(bool), sched: *Scheduler, cpu: *Arm7tdmi, f if (audio_sync) syncToAudio(cpu) else spinLoop(&timer, wake_time); wake_time = new_wake_time; - tracker.completeFrame(); + tracker.tick(); } } else { while (!quit.load(.SeqCst)) { diff --git a/src/util.zig b/src/util.zig index f2faa39..999a668 100644 --- a/src/util.zig +++ b/src/util.zig @@ -37,16 +37,12 @@ pub const FpsTracker = struct { }; } - // TODO: Rename - pub fn completeFrame(self: *Self) void { + pub fn tick(self: *Self) void { _ = self.count.fetchAdd(1, .Monotonic); } pub fn value(self: *Self) u32 { - const expected = @intToFloat(f64, std.time.ns_per_s); - const actual = @intToFloat(f64, self.timer.read()); - - if (actual >= expected) { + if (self.timer.read() >= std.time.ns_per_s) { self.fps = self.count.swap(0, .SeqCst); self.timer.reset(); }