Question about KVM and PC speaker
Hello everybody,
I do my first Stepps with KVM on my Debian Lenny system. I recognized the following:
If I boot the Debian Install CD on the wirtsystem a audible signal is played if the boot menu appears. If I boot the CD in the virtual KVM machine, the audible bell is not played.
I hear the beep if I am in the bash of the wirtsystem and press the backspace key on the start of the line. The PC speaker works therefore.
How can I configure KVM so that the PC speaker also works in the VM? Supports the BIOS PC Speaker beeps?
The environment variable QEMU_AUDIO_DRV=alsa is set and I run KVM with the option -soundhw all.
Thank you very much for your help in advance.
Simon
Website: <http://www.linux-fuer-blinde.de>
Quoted 9 lines · Simon Bienlein
Hello everybody,
I do my first Stepps with KVM on my Debian Lenny system. I recognized the following:
If I boot the Debian Install CD on the wirtsystem a audible signal is played if the boot menu appears. If I boot the CD in the virtual KVM machine, the audible bell is not played.
Quoted 5 lines
I hear the beep if I am in the bash of the wirtsystem and press the backspace key on the start of the line. The PC speaker works therefore.
How can I configure KVM so that the PC speaker also works in the VM? Supports the BIOS PC Speaker beeps?
Nope, not yet. Neither QEMU nor KVM (with its in-kernel handling of the involved timer chip) translates the guest's speaker settings into anything audible. But that should be feasible.
For KVM's in-kernel handling some new interface would have to be established, for QEMU it should even be simpler. It just takes someone with time and motivation to dig into this.
Quoted 3 lines
The environment variable QEMU_AUDIO_DRV=alsa is set and I run KVM with the option -soundhw all.
You may succeed with this approach when redirecting the guest's console beep to the sound card of your virtual machine. There is
http://www.carcosa.net/jason/software/beep which claims to do that, but I never tried.
Quoted 6 lines
Thank you very much for your help in advance.
Simon
Website: <http://www.linux-fuer-blinde.de>
Jan
Quoted 10 lines · Jan Kiszka, le Thu 23 Apr 2009 09:45:17 +0200, a écrit :
Quoted 5 lines · Simon Bienlein
I hear the beep if I am in the bash of the wirtsystem and press the backspace key on the start of the line. The PC speaker works therefore.
How can I configure KVM so that the PC speaker also works in the VM? Supports the BIOS PC Speaker beeps?
Nope, not yet. Neither QEMU nor KVM (with its in-kernel handling of the involved timer chip) translates the guest's speaker settings into anything audible. But that should be feasible.
Err, have you read the first paragraph? The speaker does work.
Quoted 5 lines
Quoted 2 lines
The environment variable QEMU_AUDIO_DRV=alsa is set and I run KVM with the option -soundhw all.
You may succeed with this approach when redirecting the guest's console beep to the sound card of your virtual machine.
The problem is not the guest's console beep: as mentioned above, that one does work. The one that doesn't is the syslinux beep of the debian installer CD, which is supposed to be implemented in the bios.
Samuel
Quoted 5 lines · Samuel Thibault
Quoted 4 lines · Jan Kiszka, le Thu 23 Apr 2009 09:45:17 +0200, a écrit :
Quoted 3 lines · Simon Bienlein
I hear the beep if I am in the bash of the wirtsystem and press the backspace key on the start of the line. The PC speaker works therefore.
Quoted 7 lines
Quoted 5 lines
Quoted 2 lines
How can I configure KVM so that the PC speaker also works in the VM? Supports the BIOS PC Speaker beeps?
Nope, not yet. Neither QEMU nor KVM (with its in-kernel handling of the involved timer chip) translates the guest's speaker settings into anything audible. But that should be feasible.
Err, have you read the first paragraph? The speaker does work.
It works on the host, but not in the guest.
Admittedly, "wirtssystem" doesn't look like a proper English word, so that might not have been obvious for you. ;-)
Kevin
Quoted 12 lines · Kevin Wolf, le Thu 23 Apr 2009 11:06:30 +0200, a écrit :
Quoted 11 lines · Samuel Thibault
Quoted 9 lines · Jan Kiszka, le Thu 23 Apr 2009 09:45:17 +0200, a écrit :
Quoted 5 lines · Simon Bienlein
I hear the beep if I am in the bash of the wirtsystem and press the backspace key on the start of the line. The PC speaker works therefore.
How can I configure KVM so that the PC speaker also works in the VM? Supports the BIOS PC Speaker beeps?
Nope, not yet. Neither QEMU nor KVM (with its in-kernel handling of the involved timer chip) translates the guest's speaker settings into anything audible. But that should be feasible.
Quoted 6 lines
Quoted 1 line
Err, have you read the first paragraph? The speaker does work.
It works on the host, but not in the guest.
Admittedly, "wirtssystem" doesn't look like a proper English word, so that might not have been obvious for you. ;-)
Oh, ok. Err, what is the current use of the -soundhw pcspkr choice then? Just making the guest happy? :)
Samuel
Quoted 5 lines · Samuel Thibault
Quoted 4 lines · Jan Kiszka, le Thu 23 Apr 2009 09:45:17 +0200, a écrit :
Quoted 3 lines · Simon Bienlein
I hear the beep if I am in the bash of the wirtsystem and press the backspace key on the start of the line. The PC speaker works therefore.
Quoted 7 lines
Quoted 5 lines
Quoted 2 lines
How can I configure KVM so that the PC speaker also works in the VM? Supports the BIOS PC Speaker beeps?
Nope, not yet. Neither QEMU nor KVM (with its in-kernel handling of the involved timer chip) translates the guest's speaker settings into anything audible. But that should be feasible.
Err, have you read the first paragraph? The speaker does work.
Misunderstanding: "Wirt" means host in English. So it works on his host system, but not inside the guest. And that's consistent with QEMU code:
there is no handling of port 0x61 in user space, only dummy code in the KVM kernel part, and no one bother about the counter value of PIT channel 2 (which defines the beeper frequency).
Quoted 9 lines
Quoted 5 lines
Quoted 3 lines
The environment variable QEMU_AUDIO_DRV=alsa is set and I run KVM with the option -soundhw all.
You may succeed with this approach when redirecting the guest's console beep to the sound card of your virtual machine.
The problem is not the guest's console beep: as mentioned above, that one does work. The one that doesn't is the syslinux beep of the debian installer CD, which is supposed to be implemented in the bios.
Doing beep via the BIOS is surely another to-do, and a useful hint in this context. But unless you add a paravirt firmware beep channel or BIOS support for sound cards or, and that' probably the best approach, PC speaker emulation, how should the beep be emitted?
Jan
Signature · 2 lines
Siemens AG, Corporate Technology, CT SE 2 Corporate Competence Center Embedded Linux
Quoted 2 lines · Jan Kiszka, le Thu 23 Apr 2009 11:15:46 +0200, a écrit :
that's consistent with QEMU code: there is no handling of port
0x61in user space,
? I can see it in hw/pcspkr.c
Quoted 4 lines
Doing beep via the BIOS is surely another to-do, and a useful hint in this context. But unless you add a paravirt firmware beep channel or BIOS support for sound cards or, and that' probably the best approach, PC speaker emulation, how should the beep be emitted?
I thought the PC speaker emulation was already implemented in hw/pcspkr.c..
Samuel
Quoted 6 lines · Samuel Thibault
Quoted 2 lines · Jan Kiszka, le Thu 23 Apr 2009 11:15:46 +0200, a écrit :
that's consistent with QEMU code: there is no handling of port
0x61in user space,? I can see it in
hw/pcspkr.c
Quoted 7 lines
Quoted 4 lines
Doing beep via the BIOS is surely another to-do, and a useful hint in this context. But unless you add a paravirt firmware beep channel or BIOS support for sound cards or, and that' probably the best approach, PC speaker emulation, how should the beep be emitted?
I thought the PC speaker emulation was already implemented in
hw/pcspkr.c..
Huh, it is! Then the problem is a KVM-only thing: The kernel part hooks onto those resources but doesn't communicate changes to this user space backend.
Jan
Signature · 2 lines
Siemens AG, Corporate Technology, CT SE 2 Corporate Competence Center Embedded Linux
Quoted 4 lines · Jan Kiszka
Huh, it is! Then the problem is a KVM-only thing: The kernel part hooks onto those resources but doesn't communicate changes to this user space backend.
In this case, the -no-kvm-pit option should help.
Signature · 1 line
error compiling committee.c: too many arguments to function
Quoted 7 lines · Avi Kivity
Quoted 4 lines · Jan Kiszka
Huh, it is! Then the problem is a KVM-only thing: The kernel part hooks onto those resources but doesn't communicate changes to this user space backend.
In this case, the -no-kvm-pit option should help.
Probably fine in many cases (where the PIT is no longer used anyway), just a bit unintuitive for users.
I wonder why KVM moved port 0x61 handling into kernel space at all. By leaving it in pcspk hands and extending the latter to sync with the in-kernel PIT on sample generation, this speaker regression (of kvm-userspace) should have been avoidable.
Jan
Signature · 2 lines
Siemens AG, Corporate Technology, CT SE 2 Corporate Competence Center Embedded Linux
Quoted 9 lines · Jan Kiszka
Quoted 7 lines · Avi Kivity
Quoted 5 lines · Jan Kiszka
Huh, it is! Then the problem is a KVM-only thing: The kernel part hooks onto those resources but doesn't communicate changes to this user space backend.
Quoted 6 lines
Quoted 2 lines
In this case, the -no-kvm-pit option should help.
Probably fine in many cases (where the PIT is no longer used anyway), just a bit unintuitive for users.
Yes, it's only a workaround.
Quoted 5 lines
I wonder why KVM moved port
0x61handling into kernel space at all. By leaving it in pcspk hands and extending the latter to sync with the in-kernel PIT on sample generation, this speaker regression (of kvm-userspace) should have been avoidable.
I'd rather not have partial components in the kernel. This case is particularly icky though.
Signature · 1 line
error compiling committee.c: too many arguments to function
Quoted 18 lines · Avi Kivity
Quoted 8 lines · Jan Kiszka
Quoted 6 lines · Avi Kivity
Quoted 4 lines · Jan Kiszka
Huh, it is! Then the problem is a KVM-only thing: The kernel part hooks onto those resources but doesn't communicate changes to this user space backend.
Quoted 6 lines
Quoted 2 lines
In this case, the -no-kvm-pit option should help.
Probably fine in many cases (where the PIT is no longer used anyway), just a bit unintuitive for users.
Yes, it's only a workaround.
Quoted 8 lines
Quoted 5 lines
I wonder why KVM moved port
0x61handling into kernel space at all. By leaving it in pcspk hands and extending the latter to sync with the in-kernel PIT on sample generation, this speaker regression (of kvm-userspace) should have been avoidable.I'd rather not have partial components in the kernel. This case is particularly icky though.
But you surely don't want to issue the sound from kernel space. Moreover, these are separate components: the PIT doesn't bother about the speaker, if it's on or off. We just need to make pcspk KVM-aware. I think I will post a patch later today.
Jan
Signature · 2 lines
Siemens AG, Corporate Technology, CT SE 2 Corporate Competence Center Embedded Linux
Hello Jan,
thank you very much for processing my request.
I [1]patched the KVM sources from Lenny and created a new Debian packet. When I boot the VM from the Lenny CD, there is no audible signal tone. It does not make a difference whether I start the KVM with or without the option -no-kvm-pit. What do I have to do in order to test the new function?
Thanks in advance for the further help.
Simon
Quoted 4 lines · Simon Bienlein
Hello Jan,
thank you very much for processing my request.
I [1]patched the KVM sources from Lenny and created a new Debian packet.
Did you patch both kernel and user space? Note that my kernel patch was against the kernel git repository, not against the external modules delivered with kvm releases. Feasible to convert them, but maybe not straightforward.
Quoted 4 lines
When I boot the VM from the Lenny CD, there is no audible signal tone. It does not make a difference whether I start the KVM with or without the option -no-kvm-pit. What do I have to do in order to test the new function?
Hmm, I successfully tested with '-soundbw pcspk' + my patches or -no-kvm-pit. There is probably a different, unrelated issue with your setup.
Jan
Quoted 4 lines · Jan Kiszka, le Mon 04 May 2009 22:29:39 +0200, a écrit :
Quoted 1 line
When I boot the VM from the Lenny CD, there is no audible signal tone.
Hmm, I successfully tested with '-soundbw pcspk' + my patches or -no-kvm-pit. There is probably a different, unrelated issue with your setup.
Remember that the BIOS support for beeps is probably still missing. Simon, you should also test beeps from an installed Linux guest.
Samuel
Quoted 8 lines · Samuel Thibault
Quoted 3 lines · Jan Kiszka, le Mon 04 May 2009 22:29:39 +0200, a écrit :
Quoted 1 line
When I boot the VM from the Lenny CD, there is no audible signal tone.
Hmm, I successfully tested with '-soundbw pcspk' + my patches or -no-kvm-pit. There is probably a different, unrelated issue with your setup.
Remember that the BIOS support for beeps is probably still missing. Simon, you should also test beeps from an installed Linux guest.
Yeah, I forgot... :)
Indeed, I only tested the console beep of a fully installed Linux guest.
Jan
Hello Jan,
Am 04.05.2009 23:00, schrieb Jan Kiszka:
Quoted 6 lines
Quoted 5 lines · Samuel Thibault
Quoted 3 lines · Jan Kiszka, le Mon 04 May 2009 22:29:39 +0200, a écrit :
Quoted 1 line
When I boot the VM from the Lenny CD, there is no audible signal tone.
Hmm, I successfully tested with '-soundbw pcspk' + my patches or -no-kvm-pit. There is probably a different, unrelated issue with your setup.
Quoted 7 lines
Quoted 3 lines
Remember that the BIOS support for beeps is probably still missing. Simon, you should also test beeps from an installed Linux guest.
Yeah, I forgot... :)
Indeed, I only tested the console beep of a fully installed Linux guest.
In this surrounding, the beep works fine at my place at well. However, the beep worked without the patching of the sources when I entered -no-kvm-pit. For me as a user there is no noticeable change with the patch.
Is a support for BIOS worked on right now?
Thanks in advance for the further help.
Simon
Quoted 1 line · Simon Bienlein
Is a support for BIOS worked on right now?
The vgabios (vgabios.c) has a "FIXME should beep". Volker, do you plan to fix this?
Which frequency should be used for the beep? Which delay? Getting a delay using "inb(0x61) & 0x10" is still a no go on qemu, right?
- Sebastian
Quoted 7 lines · Sebastian Herbszt
Quoted 1 line · Simon Bienlein
Is a support for BIOS worked on right now?
The vgabios (
vgabios.c) has a "FIXME should beep". Volker, do you plan to fix this?Which frequency should be used for the beep? Which delay?
I would try 1 KHz and some hundred milliseconds.
Quoted 1 line
Getting a delay using "inb(0x61) &
0x10" is still a no go on qemu, right?
Looks like (should be far too inaccurate for longer delays). What about 0x40:0x6c, the BIOS' daily timer counter?
Jan
Signature · 2 lines
Siemens AG, Corporate Technology, CT SE 2 Corporate Competence Center Embedded Linux
Quoted 10 lines · Jan Kiszka
Quoted 7 lines · Sebastian Herbszt
Quoted 1 line · Simon Bienlein
Is a support for BIOS worked on right now?
The vgabios (
vgabios.c) has a "FIXME should beep". Volker, do you plan to fix this?Which frequency should be used for the beep? Which delay?
I would try 1 KHz and some hundred milliseconds.
I just looked at some vga bios and it uses about 896,45 Hz.
Quoted 4 lines
Quoted 1 line
Getting a delay using "inb(0x61) &
0x10" is still a no go on qemu, right?Looks like (should be far too inaccurate for longer delays). What about 0x40:0x6c, the BIOS' daily timer counter?
The bios i looked at used the refresh request port 0x61. This is supported by bochs and there is also a patch for qemu to replace the dummy [1]. The rombios uses this to provide INT 15h AH=86h functionality; this is likely broken with the dummy code in qemu.
Anyway, using "timer ticks since midnight" should be possible (INT 08h handler is set up before vga bios is called).
[1] http://article.gmane.org/gmane.comp.emulators.bochs.devel/7594
- Sebastian
Quoted 20 lines · Sebastian Herbszt
Quoted 10 lines · Jan Kiszka
Quoted 7 lines · Sebastian Herbszt
Quoted 1 line · Simon Bienlein
Is a support for BIOS worked on right now?
The vgabios (
vgabios.c) has a "FIXME should beep". Volker, do you plan to fix this?Which frequency should be used for the beep? Which delay?
I would try 1 KHz and some hundred milliseconds.
I just looked at some vga bios and it uses about 896,45 Hz.
Quoted 5 lines
Quoted 2 lines
Getting a delay using "inb(0x61) &
0x10" is still a no go on qemu, right?Looks like (should be far too inaccurate for longer delays). What about 0x40:0x6c, the BIOS' daily timer counter?
Quoted 6 lines
The bios i looked at used the refresh request port
0x61. This is supported by bochs and
there is also a patch for qemu to replace the dummy [1]. The rombios uses this to provide
INT 15h AH=86h functionality; this is likely broken with the dummy code in qemu.
I see no problem with improving qemu's emulation accuracy this way a bit. But I wouldn't built new delay implementations on top of it, specifically if the code is in fact aware of running over a hypervisor. Such micro-timings are far too inaccurate for longer delays in an environment where you cannot be sure of running all the time during that period.
Quoted 9 lines
Anyway, using "timer ticks since midnight" should be possible (INT 08h handler is set up
before vga bios is called).[1] http://article.gmane.org/gmane.comp.emulators.bochs.devel/7594
- Sebastian
Jan
Signature · 2 lines
Siemens AG, Corporate Technology, CT SE 2 Corporate Competence Center Embedded Linux
Quoted 28 lines · Jan Kiszka
Quoted 20 lines · Sebastian Herbszt
Quoted 10 lines · Jan Kiszka
Quoted 7 lines · Sebastian Herbszt
Quoted 1 line · Simon Bienlein
Is a support for BIOS worked on right now?
The vgabios (
vgabios.c) has a "FIXME should beep". Volker, do you plan to fix this?Which frequency should be used for the beep? Which delay?
I would try 1 KHz and some hundred milliseconds.
I just looked at some vga bios and it uses about 896,45 Hz.
Quoted 5 lines
Quoted 2 lines
Getting a delay using "inb(0x61) &
0x10" is still a no go on qemu, right?Looks like (should be far too inaccurate for longer delays). What about 0x40:0x6c, the BIOS' daily timer counter?
Quoted 6 lines
The bios i looked at used the refresh request port
0x61. This is supported by bochs and
there is also a patch for qemu to replace the dummy [1]. The rombios uses this to provide
INT 15h AH=86h functionality; this is likely broken with the dummy code in qemu.
Quoted 6 lines
I see no problem with improving qemu's emulation accuracy this way a bit. But I wouldn't built new delay implementations on top of it, specifically if the code is in fact aware of running over a hypervisor. Such micro-timings are far too inaccurate for longer delays in an environment where you cannot be sure of running all the time during that period.
Volker, mind to resubmit the patch once again?
Quoted 3 lines
Quoted 3 lines
Anyway, using "timer ticks since midnight" should be possible (INT 08h handler is set up
before vga bios is called).
I have implemented the beep for vgabios-6b and it works on bochs but fails on qemu. With "-soundhw pcspk" i should hear it thru the hosts pc speaker, right?
- Sebastian
Quoted 9 lines · Sebastian Herbszt
Quoted 4 lines · Jan Kiszka
Quoted 3 lines · Sebastian Herbszt
Anyway, using "timer ticks since midnight" should be possible (INT 08h handler is set up
before vga bios is called).I have implemented the beep for vgabios-6b and it works on bochs but fails on qemu.
With "-soundhw pcspk" i should hear it thru the hosts pc speaker, right?
Yep, that's how it should work. Mind to share your code and tell us which test case you used?
Jan
Quoted 6 lines · Jan Kiszka
Quoted 3 lines
I have implemented the beep for vgabios-6b and it works on bochs but fails on qemu.
With "-soundhw pcspk" i should hear it thru the hosts pc speaker, right?Yep, that's how it should work. Mind to share your code and tell us which test case you used?
FreeDOS floppy with "debug" command and assembly code:
mov ax,0e07
xor bx,bx
int 10
With the modified vgabios (see below) it does beep on bochs on vista, but not on qemu.
- Sebastian
vgabios.c 2009-05-12 22:24:32.000000000 +0200 renamed from vgabios.c.orig 2009-05-12 22:24:22.000000000 +0200 +0 -0
@@ -80,6 +80,9 @@
static void memcpyb();
static void memcpyw();
+static void delay_ticks();
+static void beep();
+
static void biosfn_set_video_mode();
static void biosfn_set_cursor_shape();
static void biosfn_set_cursor_pos();
@@ -1965,7 +1968,7 @@
switch(car)
{
case 7:
- //FIXME should beep
+ beep();
break; case 8:
@@ -3765,6 +3768,57 @@ASM_END
}
+ void
+delay_ticks(ticks)
+ Bit16u ticks;
+{
+ASM_START
+ pusha + push ds + xor dx,dx + mov ds,dx + mov cx,4[bp] + add cx,0x46c + adc dx,0x46e + sti +delay_ticks_wait: + hlt + mov ax,0x46c + mov bx,0x46e + cmp dx,bx + jb delay_ticks_out + cmp cx,ax + ja delay_ticks_wait
+delay_ticks_out:
+ pop ds
+ popa
+ASM_END
+}
+
+void beep()
+{
+ASM_START
+ pusha + mov al,#0xb6 + out #0x43,al + mov al,#0x33 + out #0x42,al + mov al,#0x5 + out #0x42,al + in al,#0x61 + push ax + or al,#0x03 + out #0x61,al + mov cx,#0x4 + push cx + call _delay_ticks + pop cx + pop ax + out #0x61,al + popa
+ASM_END
+}
+
#ifdef DEBUG
void unimplemented()
{
Quoted 8 lines · Sebastian Herbszt
Quoted 6 lines · Jan Kiszka
Quoted 3 lines
I have implemented the beep for vgabios-6b and it works on bochs but fails on qemu.
With "-soundhw pcspk" i should hear it thru the hosts pc speaker, right?Yep, that's how it should work. Mind to share your code and tell us which test case you used?
Quoted 7 lines
FreeDOS floppy with "debug" command and assembly code:
mov ax,0e07
xor bx,bx
int 10With the modified vgabios (see below) it does beep on bochs on vista, but not on qemu.
Works fine for me!
Did you check twice that your modified vgabios is actually loaded by qemu (e.g. via strace)? Moreover, does sound work at all with your qemu? The image I tried [1] issues two beeps after loading (obviously via direct hw access) - a good way to check general support. Note that one reason for broken host sound with qemu can be OSS. For that reason I always configure my qemu with --audio-drv-list=alsa.
Jan
PS: Your patch was mangled by your mail client. Fortunately, it was small enough for manual fixing.
[1]http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/unofficial/balder/balder10.img
Quoted 8 lines · Jan Kiszka
Quoted 2 lines · Sebastian Herbszt
With the modified vgabios (see below) it does beep on bochs on vista, but not on qemu.
Works fine for me!
Did you check twice that your modified vgabios is actually loaded by qemu (e.g. via strace)?
Yes, it uses the right rom.
Quoted 5 lines
Moreover, does sound work at all with your qemu?
The image I tried [1] issues two beeps after loading (obviously via direct hw access) - a good way to check general support. Note that one reason for broken host sound with qemu can be OSS. For that reason I always configure my qemu with --audio-drv-list=alsa.
Thats a good hint :)
Seems i used to compile qemu without "--audio-drv-list". Since "dsound" and "fmod" drivers don't compile here (i likely miss some libs in my mingw), i used "sdl". Now i can hear those two beeps with the image you suggested. Tho those are coming thru my sound card and not the hosts pc speaker (even with "-soundhw pcspk", but maybe that option means something different).
With INT 10h AH=0Eh i now can hear a beep too, but it doesn't stop and qemu somewhat freezes.
Quoted 4 lines
Jan
PS: Your patch was mangled by your mail client. Fortunately, it was small enough for manual fixing.
Unfortunatelly Windows Mail tends to do this and i failed to find an option to fix it.
- Sebastian
Quoted 3 lines · Sebastian Herbszt, le Wed 13 May 2009 00:21:25 +0200, a écrit :
Tho those are coming thru my sound card and not the hosts pc speaker (even with "-soundhw pcspk", but maybe that option means something different).
-soundhw pcspk means to emulate the PC speaker for the guest, it doesn't have to do with how it is rendered by the host.
Quoted 5 lines
Quoted 2 lines
PS: Your patch was mangled by your mail client. Fortunately, it was small enough for manual fixing.
Unfortunatelly Windows Mail tends to do this and i failed to find an option to fix it.
Then change your mail client :)
Samuel
Quoted 18 lines · Sebastian Herbszt
Quoted 8 lines · Jan Kiszka
Quoted 2 lines · Sebastian Herbszt
With the modified vgabios (see below) it does beep on bochs on vista, but not on qemu.
Works fine for me!
Did you check twice that your modified vgabios is actually loaded by qemu (e.g. via strace)?
Yes, it uses the right rom.
Quoted 5 lines
Moreover, does sound work at all with your qemu?
The image I tried [1] issues two beeps after loading (obviously via direct hw access) - a good way to check general support. Note that one reason for broken host sound with qemu can be OSS. For that reason I always configure my qemu with --audio-drv-list=alsa.
Quoted 4 lines
Thats a good hint :)
Seems i used to compile qemu without "--audio-drv-list". Since "dsound" and "fmod" drivers don't compile here (i likely miss some libs in my mingw), i used "sdl".
Don't do that. Here's a nice tutorial Kazu made that will probably help
you: http://www.h7.dion.ne.jp/~qemu-win/Audio-en.html
Quoted 5 lines
Now i can hear those two beeps with the image you suggested. Tho those are coming
thru my sound card and not the hosts pc speaker (even with "-soundhw pcspk", but maybe
that option means something different).
And it will always come through your soundcard. pcspk is not a passthrough thing.
Quoted 2 lines
With INT 10h AH=0Eh i now can hear a beep too, but it doesn't stop and qemu somewhat freezes.
Huh?
Quoted 12 lines
Quoted 4 lines
Jan
PS: Your patch was mangled by your mail client. Fortunately, it was small enough for manual fixing.
Unfortunatelly Windows Mail tends to do this and i failed to find an option to fix it.
- Sebastian
Signature · 1 line
mailto:[email protected]
Quoted 9 lines · malc
Quoted 7 lines · Sebastian Herbszt
Quoted 5 lines · Jan Kiszka
Moreover, does sound work at all with your qemu?
The image I tried [1] issues two beeps after loading (obviously via direct hw access) - a good way to check general support. Note that one reason for broken host sound with qemu can be OSS. For that reason I always configure my qemu with --audio-drv-list=alsa.
Quoted 6 lines
Quoted 4 lines
Thats a good hint :)
Seems i used to compile qemu without "--audio-drv-list". Since "dsound" and "fmod" drivers don't compile here (i likely miss some libs in my mingw), i used "sdl".Don't do that. Here's a nice tutorial Kazu made that will probably help you: http://www.h7.dion.ne.jp/~qemu-win/Audio-en.html
So you're saying the use of sdl for audio is not recommended?
Quoted 8 lines
Quoted 5 lines
Now i can hear those two beeps with the image you suggested. Tho those are coming
thru my sound card and not the hosts pc speaker (even with "-soundhw pcspk", but maybe
that option means something different).And it will always come through your soundcard. pcspk is not a passthrough thing.
Thanks for the clarification.
Quoted 4 lines
Quoted 2 lines
With INT 10h AH=0Eh i now can hear a beep too, but it doesn't stop and qemu somewhat freezes.
Huh?
With this INT 10h function qemu should beep once, but it does loop the beep infinitely. Normally i can exit qemu by clicking on the [x] window close "icon", but while it does endlessly beep that doesn't work (vista says process doesn't respond). Using "quit" in the monitor window doesn't work either.
- Sebastian
Quoted 16 lines · Sebastian Herbszt
Quoted 15 lines · malc
Quoted 12 lines · Sebastian Herbszt
Quoted 5 lines · Jan Kiszka
Moreover, does sound work at all with your qemu?
The image I tried [1] issues two beeps after loading (obviously via direct hw access) - a good way to check general support. Note that one reason for broken host sound with qemu can be OSS. For that reason I always configure my qemu with --audio-drv-list=alsa.Thats a good hint :)
Seems i used to compile qemu without "--audio-drv-list". Since "dsound" and
"fmod" drivers don't compile here (i likely miss some libs in my mingw), i used "sdl".
Quoted 4 lines
Quoted 2 lines
Don't do that. Here's a nice tutorial Kazu made that will probably help you:
http://www.h7.dion.ne.jp/~qemu-win/Audio-en.htmlSo you're saying the use of sdl for audio is not recommended?
Yes.
Quoted 18 lines
Quoted 10 lines
Quoted 7 lines
Now i can hear those two beeps with the image you suggested. Tho those are coming
thru my sound card and not the hosts pc speaker (even with "-soundhw pcspk",
but maybe
that option means something different).And it will always come through your soundcard. pcspk is not a passthrough thing.
Thanks for the clarification.
Quoted 4 lines
Quoted 2 lines
With INT 10h AH=0Eh i now can hear a beep too, but it doesn't stop and qemu somewhat freezes.
Huh?
Quoted 8 lines
With this INT 10h function qemu should beep once, but it does loop the beep infinitely.
Normally i can exit qemu by clicking on the [x] window close "icon", but while it does
endlessly beep that doesn't work (vista says process doesn't respond). Using "quit" in the
monitor window doesn't work either.
Can you post some .com file sparing me from writing the code for one myself?
Signature · 1 line
mailto:[email protected]