Here's another revision. This one fixes Keen 1's sounds like NY00123s patch without breaking Monkey Island or Digger. Hard Drivin 2 motor sound now has a buzz, but it drowns out everything else. I need to investigate that more. A recording of Hard Drivin' 2's motor buzz from a real PC would be helpful.
Also, Hard Drivin 2 intro tune works if you use normal core and not dynamic core - dynamic core seems to change the timing of the port writes that affect the pc speaker.
Perestroika's whine is probably intentional. Games that use pulse width modulation with pc speaker suffer from whine if the carrier frequency is too low. Perestroika's seems to be around 9.5 kHz, which is clearly audible. How audible it is with a real spaker depends on the speaker's frequency response. Theoretically, by setting a lower "pcrate" in dosbox.conf you should be able to eliminate the whine (in this case, 16000 or less should eliminate frequencies above 8KHz). However, I need to implement proper filtering to the pc speaker code in order for that to be effective.