Awesome! Your feedback is greatly appreciated - especially since I've never seen these particular issues before.
The audio engine relies on "flywheel sync" with the game logic in order to provide constant latency sub-sample accurate timing (as opposed to typical engines that just play sound effects as soon as they see the commands, "quantized" to buffer boundaries) - but this will fail miserably if proper timestamps are not available, similarly to the rendering and game logic.
If you set the skill level high enough (or play far enough into the game), you will probably end up in a situation where you have to keep retrying for a good while before you can progress. So, indeed; you'll never run out of lives, and could keep retrying forever, but you may well end up in a situation where you just can't progress, and have to start a new campaign instead.
Of course, there could be a limit of five rewinds in a campaign or something - but then you wouldn't have the option of coming back later, and see if you've honed your skills enough to continue that "impossible" campaign. :-)
I see! That makes (some) sense, as 3D accelerated windowed mode is notoriously problematic. I'm guess it is indeed one of those cases of the driver not synchronizing every frame, but I'm not quite sure what to do about it, as that's something that's supposed to Just Work(TM) with SDL. (I'm not using OpenGL/Direct3D directly in this game, so I don't have direct access to the full APIs.)
I'll see if I can make a build with the latest versions one of these days, so we can see if that has any effect on it.
Well, I've seen a number of ATI/AMD specific issues through the years, and even did the occasional hack to get applications to work with them, so it's not all that far off to assume they're at fault yet again. ;-)
Not much I actually can do through the SDL API, as it wraps these details - but I wouldn't be surprised if there are workarounds in newer versions of the library. You might want to try replacing the SDL.DLL that comes with the game with the latest one (2.0.12, 32 bit) from here:
https://www.libsdl.org/download-2.0.php