APU set enable bits on NSF reset? (never mind, answered)

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
APU set enable bits on NSF reset? (never mind, answered)
by on (#91961)
I've noticed NSFPlay has an option to set the enable bits on the APU channels when the player resets. Turning this option off causes a few NSFs that never bother to set these bits to fail to play (e.g. Battletoads).

I know the spec tells us not to assume the state of anything on init except A and X, but there seems to be an expectation in a few NSFs that the APU should have its channels enabled. Even Loopy's PowerPak NSF reset routine does this.

Should I just make a note of this in the wiki? Is it important to fix the offending NSFs? Are there any NSFs that assume the enable bits are clear at reset?

Edit: ah, never mind. It was pointed out to me that it's actually stated in the "Properly initializing a tune" section: "Set volume register 4015h to 0Fh." I guess I was thrown off by "Do not assume the state of *anything* on entry to the init routine".