lidnariq wrote:Not only that, but the older PPUs (rev B/C, all the Vs. System alternate PPUs, maybe others?) reads from $3Fxx just go from the underlying RAM: there's no way to read the palette RAM.
Woah, now that I did not know about! (I never had a use for reading the palette, personally, but I did test it on my NES! I never realized it wasn't always supported.)
I can actually understand that as a conceptual reason to do the PPU memory viewer this way... though I still think for practical purposes: people will expect palette data to appear where it was written and it's useful to be able to find it here (nesrocks demonstrates one reason why), and I doubt anyone will have practical use for reading CHR RAM data from here.
nesrocks wrote:Yeah but isn't it possible to have mid-scanline changes? That'd be crazy. Maybe stop the support at mid-frame changes, but at full scanline. Anyway, this is just a bonus feature on my tool, I guess adding support for all effects would be overkill and out of purpose. I don't know of any practical reason to add such a feature to an emulator anyway.
If you know how the raster split is done, you can set breakpoints on the write that causes it and do a couple of dumps. I've done this several times to make diagrams...
Actually on Mesen you can use "Scanline == 100" or similar for a breakpoint condition, so maybe it's pretty easy to manually set a few breakpoints to dump a frame, which is pretty cool! (I haven't yet done this in Mesen, but noticing it's there I'm sure I will someday.)
Edit: ...or you can click on the "Break on..." button at the top right and type a scanline number for a one time advance-and-break to a specific scanline! I didn't notice that before. Ha ha Mesen is so good.