From e4c68c8b17f83ca38de4cd22d39d9a21c521b79b Mon Sep 17 00:00:00 2001 From: Lauchmelder <robert.trololo@gmail.com> Date: Sat, 30 Oct 2021 23:33:20 +0200 Subject: [PATCH] slightly tweaked ppu rendering --- NES Emulator/ppu.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/NES Emulator/ppu.c b/NES Emulator/ppu.c index 2756e34..40e8352 100644 --- a/NES Emulator/ppu.c +++ b/NES Emulator/ppu.c @@ -236,10 +236,15 @@ int tickPPU(struct PPU* ppu) switch (ppu->verticalPhase) { case PreRender: - break; + { + if (ppu->x == 280) + ppu->ppuAddress.raw = 0x2000 + 0x0400 * ppu->ppuCtrl.nametable; + } break; case Visible: { + if (!ppu->ppuMask.bgEnable) + break; // Fetching switch (ppu->horizontalPhase) { @@ -269,7 +274,7 @@ int tickPPU(struct PPU* ppu) case Attribute: { - ppu->tileData.attribute = ppu->nameTables[ppu->ppuCtrl.nametable][0x3C0 + ((tileY >> 2) * 8) + (tileX >> 2)]; + ppu->tileData.attribute = ppu->nameTables[ppu->ppuCtrl.nametable][0x3C0]; break; } @@ -282,6 +287,7 @@ int tickPPU(struct PPU* ppu) case PatternHigh: { ppu->tileData.tile.hi = readCartridgePPU(ppu->bus->cartridge, 0x1000 * ppu->ppuCtrl.bgTile + (ppu->tileData.nametable * 16) + (ppu->y % 8) + 8); + ppu->ppuAddress.raw++; break; } }