diff --git a/src/ppu.c b/src/ppu.c index 12042b7..45bc16a 100644 --- a/src/ppu.c +++ b/src/ppu.c @@ -285,7 +285,16 @@ int nes_ppu_run(nes_ppu* ppu, int cycles) { result = ppu_Result_VBlank_On; } - } else /*if (ppu->scanline % 8 == 1)*/ { + } else { + if ( ppu->scanline > nes_ppu_prerender && + ppu->scanline < nes_ppu_render) { + ppu->scroll_y++; + if (ppu->scroll_y >= nes_ppu_render_h) { + ppu->scroll_y -= nes_ppu_render_h; + ppu->control ^= 0b10; + } + } + result = ppu_Result_Ready; } } diff --git a/src/sdl_render.c b/src/sdl_render.c index cdd2d0c..61a204d 100644 --- a/src/sdl_render.c +++ b/src/sdl_render.c @@ -817,21 +817,6 @@ static void render_scanline(nes_ppu* ppu, int line, data->target, &dst_rect); } } - - /*if (line + 1 < nes_ppu_height)*/ { - ppu->scroll_y++; - if (ppu->scroll_y >= nes_ppu_render_h) { - ppu->scroll_y -= nes_ppu_render_h; - ppu->control ^= 0b10; - } -/* - // We check for hits if EITHER layer is enabled. - render_bg_scanline(ppu, background); - if (ppu->hit_line <= 0) { - update_scanline_hit(ppu, background, line + 1); - } -*/ - } } static int sdl_render(nes_Renderer* rend, nes_ppu* ppu) {