Thanks. it seems it's not written by Shiru, but by "Sam", and I can't really find his geocities page. Anyway, i took at look at his code, it seems fairly well written. It avoids creating unnecessary voices by ignoring fade-outs, which work by adding to the TL value of all the output operators, and in order to determine which operators are directly connected to the output, he uses a mask table. This is how sound drivers do it as well. Btw, the TL value is actually attenuation, not volume, so adding to it decreases the volume.
Downsides are that it's windows only and YM2612 only.
_________________ vampi.tech
|