I've got another question for Revenant or for anyone who does SNES audio hacking: How useful do you consider the ability to disable individual audio channels (voices) in a SNES emulator?
I'm trying to remove redundant code to make the emulator easier for me to maintain and for Revenant to add new debugging features to, and the first thing I'm working on is the two different S-DSP implementations (that's the audio DSP, not the Pilotwings/Mario Kart one) One (the one I'm trying to get rid of) is the one written by blargg which is also used in later versions of snes9x and in many SPC music players; the other one is closely based on blargg's but rewritten by byuu to fit more directly into his framework and to match his coding style better. And one of the differences between the two DSP implementations is that blargg's supports disabling voices, but byuu's rewritten version doesn't. And I'm trying to decide whether to add that feature to byuu's when I make it the only S-DSP in bsnes-classic.
The thing is, in order to completely disable a voice from being heard, it's necessary to disable both its direct output and its echo output. blargg's DSP handles this, essentially, by continuously force-KOFFing the disabled voice(s). And the problem is that when you do the latter it's visible to software, since the echo buffer is in shared APU RAM. I doubt many (or any) games actually depend on reading back the echo buffer, but I'm still not entirely comfortable having a feature that looks deceptively cosmetic but actually can theoretically affect emulated program behavior (and I guess byuu wasn't either, which is why his version of the DSP code doesn't have any voice-disable capability)
I've never done any SNES audio work, but I know I find the ability to toggle video layers (BGs and sprites) very useful just as a quick way to see what layer a particular object or effect is on. And luckily, PPU layer toggling isn't visible to software in any way, just as long as an emulator still does the Range Over/Time Over tests even when sprites are disabled. But like I said, I have no idea if voice toggling is something people find indispensable, or if byuu added it to his UI just because it was already supported by blargg's code.
(If you just want to see what channel an instrument or sound effect is being played on, the "piano keyboard" window Revenant recently added to bsnes-plus can do that for you...)