Okay, I think I've tested everything I can, and I'm pretty confident in the current state of my emulator. (Beta available here:
https://dl.dropboxusercontent.com/u/883 ... ay23b3.zip
Other than the mod formula revision, there are a couple of things I've noticed in my tests:
1. There is no simple way to reset the phase of the mod table. $4085 only sets the "bias" accumulator, nothing more. When appending to the mod table (which can only be done when the mod table is halted via $4087), new entries will be written at its current playback position (there is no separate write position). Thus, the only way to reset the phase of the table is to halt it (via $4087) and write all 32 entries; when it is unhalted, the playback position will be at the current waveform (since it's gone a full once around). A lot of FDS NSFs seem to write $4085 immediately before writing the mod-table, so maybe it was presumed this could reset the phase.
2. Halting the unit via $4083 resets the wave phase to 0. It does not disable its output, so if the sample at $4040 is a value of 63, for example, it will be outputting that 63 constantly. You can affect this output with the volume and master volume. (Volume envelopes seem to be disabled when $4083 bit 7 is set, however, so you can only change the volume with a direct set.)
3. There appears to be a simple 1-pole lowpass on the output. In trying to match it the cutoff appears to be ~2000Hz.
4. The $4089 wave write bit will hold the waveform output at its current level, though the waveform will continue to play underneath if not halted via $4083, so when the write bit is cleared, the waveform output will simply jump to wherever it would have been, as if it had never been stopped (because it hadn't).
There are some other little details probably, but I'm going to do a full pass on the wiki page and explain.
I have a request:
if anyone with a PowerPak and an FDS would like to do a hotswap test, I want to make sure that the lack of $4085 phase reset isn't just a peculiar revision of my FDS only. The test is attached (fds_test_7.nes), run it, after the first buzz you have 5 seconds to hotswap to the FDS before the second buzz. After the second buzz it tries 12 times to reset the phase via $4085 and it should fail each time (you'll hear the characteristic mod loop continue unscathed).
Here is what the test sounded like through my Famicom+FDS:
https://dl.dropboxusercontent.com/u/883 ... est_7.flac
The only reason I'm unsure about this is that the Bio Miracle Bokutte Upa NSF track 2 sounds broken because of $4085 writes while the mod table is playing (which other emulators presume should reset phase). At this point it seems either my FDS is special, or the NSF is broken, but I'd like to hear some other recordings of this test to verify that it's not just my FDS.