The disadvantage of these piezo buzzers is that the piezo element doesn't move very far to do its thing. This has the obvious consequence of lower amplitude, but it goes deeper than that.
Remember that the speaker-out on your motherboard is a digital output. It can only output a square wave. The change of state between 'ON' and 'OFF' is nearly instantaneous. However, speaker assemblies have mass, and so take time to accelerate and decelerate. So even though current is applied instantaneously, the magnet and paper cone take some time to travel.
Therefore, if you toggle the signal while the speaker is mid-travel, you can achieve an non-square-ish output.
Obviously, due to the construction and mechanism of the piezo buzzer, this travel time is relatively non-existant (orders of magnitude shorter!)
Some games (Dangerous Dave (3?), IIRC, maybe Duke Nukem) create unique effects by exploiting this, and they will probably sound either crappy, or totally wrong, if using one of these piezo buzzers.
These games also sound wrong in mainline DOSBox. Some of the CVS builds go some way to correcting for this, but I'm pretty sure Dangerous Dave still sounds wrong in ykhwong.
VogonsDrivers.com | Link | News Thread