I am aware that the PPU exposes various registers to the CPU (PPUCTRL/2000, PPUSTATUS/2002, PPUADDR/2006, PPUDATA/2007, etc), from a CPU perspective, is this a unidirectional way of communication to the PPU? For example something like this:
In emulator development, if a CPU makes a memory-mapped read/write on a specific PPU register, does that make direct access to the PPU RAM right away? Or is it held in the PPU registers and then written to PPU Memory by the PPU. Stupid question, I know... but getting a bit confused when reading the wiki docs.
Code:
PPU Request
[CPU] -------------> [PPU]
[CPU] -------------> [PPU]
In emulator development, if a CPU makes a memory-mapped read/write on a specific PPU register, does that make direct access to the PPU RAM right away? Or is it held in the PPU registers and then written to PPU Memory by the PPU. Stupid question, I know... but getting a bit confused when reading the wiki docs.