ppu: Do not double render height unless in interlacing mode

This commit is contained in:
Rupert Carmichael 2024-08-03 21:44:19 -04:00
parent e285c5842e
commit df1ff72782
2 changed files with 2 additions and 2 deletions

View File

@ -196,7 +196,7 @@ auto PPU::refresh() -> void {
auto output = this->output;
auto pitch = 512;
auto width = 512;
auto height = 480;
auto height = ppu.display.interlace ? 480 : 240;
if(configuration.video.blurEmulation) {
for(uint y : range(height)) {
auto data = output + y * pitch;

View File

@ -1,7 +1,7 @@
auto PPU::Screen::scanline() -> void {
auto y = ppu.vcounter() + (!ppu.display.overscan ? 7 : 0);
lineA = ppu.output + y * 1024;
lineA = ppu.output + y * (ppu.display.interlace ? 1024 : 512);
lineB = lineA + (ppu.display.interlace ? 0 : 512);
if(ppu.display.interlace && ppu.field()) lineA += 512, lineB += 512;