Closed TakuikaNinja closed 2 years ago
The first one is an actual bug. The second one is an intended behaviour, AY works like that
Finally, let's look at this.
It appears that in order to write to the other channels' envelope mode, a write to the bank select register is necessary, which happens to be shared with channel 1's envelope mode...
Not fixable... :< (for now)
Oh, so it's a hardware quirk. Thanks for looking into that - at least I now know to work around it.
Requesting the AY-3-8910 issue be reconsidered. Effect 30 is supported for some FM chips by adjusting the release to a sharp falloff and delaying the next keyon while the envelope finishes. If this is supported for FM chips, then it should be supported for AY-3-8910 for consistency. This seems to be possible by quickly reenabling the envelope (specifically via $0D). A real-use example is PMD: it does this with its SSG sound effects, including its built-in percussion for music. Perhaps this could be a new effect specifically for SSG envelopes, since FM also uses this for SSG-EG, distinct from the ADSR envelope which the current effect affects.
If making a new issue is necessary to avoid issue resolution clutter, please let me know.
I've found 2 issues regarding non-looping envelope instruments. I apologize in advance if the behaviour I'm describing is a quirk of the chips themselves.
[AY8930] Whenever an envelope instrument is playing in one channel, playing another 8930 instrument (does not have to have to be audible or use any waveform) on the next channels will restart the envelope. This is especially bad when the other instrument uses an arpeggio macro. This behaviour persists when using 8930 instruments in the 8910.
[AY-3-8910] The envelope does not restart on new notes if the envelope mode has not changed since the last time it was set.