I'll go through the steps of how I load my rooms in my game here:
-Turns off the PPU, hides sprites, gets pointers, loads the palettes, loads the song, sets a flag to tell the game to read in data for the attribute table.
-After vblank, it performs all the math and writes the specific 64 bytes into memory. It then sets the aforementioned flag to false (don't need to do math twice)
-For my next frame, during vblank, I want to have it so it loads in that data that was written to memory into the attribute table. The only problem is, it doesn't work. I right now have this empty step in vblank that does nothing but increments the jump table index so that the next one will do the attribute writes. This method works.
If I perform the writes in that specific part, nothing loads right. Random BG tiles are written too, which makes no sense.
Any thoughts?
-Turns off the PPU, hides sprites, gets pointers, loads the palettes, loads the song, sets a flag to tell the game to read in data for the attribute table.
-After vblank, it performs all the math and writes the specific 64 bytes into memory. It then sets the aforementioned flag to false (don't need to do math twice)
-For my next frame, during vblank, I want to have it so it loads in that data that was written to memory into the attribute table. The only problem is, it doesn't work. I right now have this empty step in vblank that does nothing but increments the jump table index so that the next one will do the attribute writes. This method works.
If I perform the writes in that specific part, nothing loads right. Random BG tiles are written too, which makes no sense.
Any thoughts?