summaryrefslogtreecommitdiff
path: root/lib/nes/nes.cc
diff options
context:
space:
mode:
authorHannes Schulze <haschu0103@outlook.de>2025-01-23 23:18:42 +0100
committerHannes Schulze <haschu0103@outlook.de>2025-01-23 23:18:42 +0100
commitbdb2114b9d2557c6700f3176128a0488a779421e (patch)
treef578d514654056ce1817e75a6afc8ea817e3544c /lib/nes/nes.cc
parenta8fc40d4badfd73917171b081f57b88b80bd1e69 (diff)
some cleanup
Diffstat (limited to 'lib/nes/nes.cc')
-rw-r--r--lib/nes/nes.cc27
1 files changed, 12 insertions, 15 deletions
diff --git a/lib/nes/nes.cc b/lib/nes/nes.cc
index cd0c39b..498ecd7 100644
--- a/lib/nes/nes.cc
+++ b/lib/nes/nes.cc
@@ -30,16 +30,21 @@ namespace nes
step(cycle_count::from_duration(delta));
}
+ auto nes::step() -> void
+ {
+ cpu_.step();
+ while (ppu_.get_cycles() < cpu_.get_cycles())
+ {
+ ppu_.step();
+ }
+ }
+
auto nes::step(cycle_count const delta) -> void
{
current_cycles_ += delta;
while (cpu_.get_cycles() < current_cycles_)
{
- cpu_.step();
- while (ppu_.get_cycles() < cpu_.get_cycles())
- {
- ppu_.step();
- }
+ step();
}
}
@@ -47,19 +52,11 @@ namespace nes
{
while (cpu_.is_nmi_pending())
{
- cpu_.step();
- while (ppu_.get_cycles() < cpu_.get_cycles())
- {
- ppu_.step();
- }
+ step();
}
while (!cpu_.is_nmi_pending())
{
- cpu_.step();
- while (ppu_.get_cycles() < cpu_.get_cycles())
- {
- ppu_.step();
- }
+ step();
}
}