vs "IOProc" formats (why would you ever want them to be different?), or
their behavior. It's possible that the available IOProc formats depend
on the current physical format, or vice versa, so let's try setting up
one before querying the other.
BROKEN_DRIVER_2 on the other hand, plays the sound fine, except it seems to change volume, but not during game play, or when it gets a buffer underrun in which case it emits this awful buzzing sound. That happens mostly before the start of a song. However, the position returned is completely invalid.
One of these must work eventually. *sigh*
Remove SAFE_* since that still couldn't be used in that function. Oh well.
Fix the bug that was crashing SM.
This driver actually works. When I say, "works," I mean that the position of the playing sound is actually returned correctly. The sound, however, is absolutely awful.