Temporal freeze and slowdown while using emulated sb16

Bug #1295587 reported by alvarez on 2014-03-21
This bug affects 5 people
Affects Status Importance Assigned to Milestone

Bug Description

I have been carrying around this bug since previous versions and on different machines: When I use the -soundhw sb16 option, while playing any sound on the virtual machine it temporally freezes the emulated machine and loops the last bit of such sound effect for 1-2 minutes, then goes back to normal speed (until a new sound is played).

Console shows:

 sb16: warning: command 0xf9,1 is not truly understood yet
 sb16: warning: command 0xf9,1 is not truly understood yet
main-loop: WARNING: I/O thread spun for 1000 iterations

-One of my emulated machines is Windows 3.11: I managed to overrun this bug by switching from the local 1.5 version of the sound blaster driver to the 1.0, although since I updated qemu it freezes that machine, so I can't test if it still works.

I am using the 1.7.90 version, but I suffered this bug for over one year (confirmed in version 2.0.0-rc0 too)

this bug happens anytime I use the -soundhw sb16 switch, but the full command I am using in this specific case is:

qemu-system-i386 -localtime -cpu pentium -m 32 -display sdl -vga cirrus -hda c.img -cdrom win95stuff.iso -net nic,model=ne2k_pci -net user -soundhw sb16

This bug appears on all my machines: Pentium III running Slackware 13.0 and freeBSD 10; Dual core T2400, both in Arch, Gentoo and Slackware 14.1 (all 32 bits), and a Dual core T4400 64 bits with Gentoo and Slackware. Same problem in all of those systems after compiling instead of using the distro packages....

alvarez (alvarezviu) on 2014-03-21
description: updated
alvarez (alvarezviu) on 2014-03-21
description: updated
alvarez (alvarezviu) on 2014-03-21
description: updated
Cole Robinson (crobinso) wrote :

sb16 isn't actively maintained in qemu these days, so it's unlikely this bug fix will be prioritized.

that said, if you help narrow down the commit where this regressed, it will increase your chances.

Finding the last working qemu version is a start. From there, consider trying a git bisect to locate the exact commit that caused failure.

alvarez (alvarezviu) wrote :

Wow, I didn't know sb16 is not mantained anymore, in fact I tough it was one of the main "features"!

I will try to do that when I have time. Maybe with a diff on both source codes will put some light on. Thank you!

dennis123123123 (dennis123321) wrote :

I have this exact same isue.

Windows 98 I had to switch to ES1370 emulation, but Windows 3.1 I can't find a driver for es1370. Thank-you for the suggestion to use the Microsoft 1.0 driver - that appears to work OK for now.

With regards to 2.0 freezing a Win3.1 machine - there is a patch, but it isn't implemented yet for some reason...

Torbjörn Rathsman (milasudril) wrote :

On Windows 98 SE:

 * SB16: System hangs as described in this bug report
 * ES1370: Causes system freeze with back screen at boot time
 * AC97 (as suggested here: https://smcv.pseudorandom.co.uk/2015/discworldnoir/): BSODs during the installation
 * GUS: Device is not even detected

Conclusion: At the moment, there is no way to get audio output from Windows 98 se VM.

Torbjörn Rathsman (milasudril) wrote :

Addendum: Since this report is from 2014, I should mention that I am currently on 16.04.

Blake Lee (phucktank) wrote :

Is there any fix or workaround for this bug? Some old games won't use the AC97 and require SB16.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers