Since we've learned that Sleep()'s accuracy on win32 is not to be trusted, I removed it as much as possible in favor of:
1) usleep, which I reverted to the old (and accurate) version of that uses high resolution timers. (QueryPerformanceCounter, etc) or 2) SwitchToThread, which is like Sleep(0) in that it gives up the rest of the quantum scheduled for that thread. The result is that while FreeSCI will still use a high amount of CPU, it won't affect other applications as much. A nice side effect is that the threads don't appear to starve eachother as much either. The "slow sound" problem still exists sometimes at startup with the polled_ss, but it sounds much better now when it doesn't have that problem. -- http://www.clock.org/~matt
