> Actually, implementing support for these registers, at least in my emulator, was quite trivial; but potential test ROMs using these registers are definitely going to be a nightmare.
I wasn't exactly thinking about the difficulty of supporting them; a cycle-accurate emulator could just grab the sample from the APU whenever it's clocked and pass it to the MMU whenever the registers are read. Seems relatively straightforward. It's just that, if you're OCD, a perfectionist, or someone who just can't sleep at night until your project emulates every little obscure hardware behavior, this is *grumble, grumble* yet another thing you have to look into
My DMG/GBC cores were never designed to be accurate in any regards. I'd really have to make a new core, because I'd be grafting so much code trying to get two conflicting designs to work. One of these days though.
> And yeah, I'd love seeing more demos using these.
I've always wanted to make full-screen TV-static transitions (like changing a channel) to jump from one scene of a demo to the next. Polling Sound 4's nibble in PCM34 is a lot simpler than coding my own LSFR, and definitely much faster. Setup a couple of writes to Sound 4's registers, initialize it, then read PCM34.
Also, just FYI, GBVisualizer works just fine on GBA units. So, even though this was undocumented and never used in commercial games (at least it's not supposed to be) they still kept it around (probably not worth removing from the GBA honestly).