question on mmc5 pulse 1

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
question on mmc5 pulse 1
by on (#145640)
I'm trying to use a sfx sample used in a game, that writes 4 values to $4000-$4003 only once. Now, I tried replacing the $4000-$4003 to $5000-$5003, and what happens is the first note is played and is forever sustained, not shutting off nor finishing the sfx itself. I don't know what else to do, or if it deals with the lack of sweep I've read about. I don't much of this sort of thing. Thanks for any advice / suggestions. :-)
Re: question on mmc5 pulse 1
by on (#145654)
Unless you write to the channel a second time, there are only 3 ways it can be turned off:

1. Use the envelope to create a volume ramp that turns off the unit when finished.
2. Use the length counter to cut off the unit after a certain amount of time.
3. Use the sweep to change the pitch (and turns off automatically when an extreme is reached).

For the MMC5, the 3rd method won't work. It is likely that many emulators do not emulate method 2 either for MMC5, since none of the extant games use it. MMC5's length counter also operates at double the APU's speed (again: may not be emulated correctly).