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;
 				}
 				}