DMC sample fetch

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
DMC sample fetch
by on (#41144)
From wiki:

Quote:
Any time the sample buffer is in an empty state and bytes remaining is not zero, the following occur:

* The sample buffer is filled with the next sample byte read from the current address, subject to whatever mapping hardware is present. The CPU is suspend for four clock cycles.


- If the CPU is suspend for 4 cycles, what happens with the PPU/APU? Does it render background pixels (color index at 3F00), or just "skip" 16 dots? Actually, my PPU render does 16 clocks (or dots) instead of just 3.

by on (#41146)
It's as if the current CPU instruction had 4 extra clocks of execution. So if it were executing a NOP when the DMC DMA occurred, it would take 6 clocks instead of the usual 2.