A fix that does not clear sounds which have been paused
Pre-release
Pre-release
With this build it clears the dma_in_progress flag on a set_time_constant command rather than any received command as it was in the previous build.
When clearing the flag on any command it would stop sounds for commands that have nothing to do with starting a new sound. This was seen in Wolfenstein 3D where many game sounds didn't play because it would issue a pause command which incorrectly cleared the in progress flag.
Clearing the in progress flag on the set time constant command may also be the wrong solution, but it narrows the impact of the change. With this change both The Secret of Monkey Island and Wolfenstein 3D have working sound without freezes.
The real root cause and solution still needs to be investigated.