From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.30) id 1BHBHN-0001wr-4d for qemu-devel@nongnu.org; Fri, 23 Apr 2004 20:44:25 -0400 Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.30) id 1BHBGp-0001kz-Qz for qemu-devel@nongnu.org; Fri, 23 Apr 2004 20:44:23 -0400 Received: from [209.239.47.192] (helo=host18.christianwebhost.com) by monty-python.gnu.org with esmtp (Exim 4.30) id 1BHBGp-0001kE-Gg for qemu-devel@nongnu.org; Fri, 23 Apr 2004 20:43:51 -0400 Received: from mail.grandin.org (68.116.132.55.ts46v-04.otna2.ftwrth.tx.charter.com [68.116.132.55]) by host18.christianwebhost.com (8.12.10/8.12.10) with SMTP id i3O0hnKK031434 for ; Fri, 23 Apr 2004 20:43:50 -0400 Date: Fri, 23 Apr 2004 19:43:49 -0500 From: Keith Grandin Message-ID: <20040424004349.GA20718@vpnk.keith.intranet.intrig.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Kj7319i9nmIyA2yE" Content-Disposition: inline Subject: [Qemu-devel] Patch for disabling audio Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org --Kj7319i9nmIyA2yE Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Here is a simple patch that allows you to have the --disable-audio option on the command line. This is handy for running windows inside the emulation. --Keith --Kj7319i9nmIyA2yE Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="disable.audio.diff" Index: vl.c =================================================================== RCS file: /cvsroot/qemu/qemu/vl.c,v retrieving revision 1.61 diff -u -r1.61 vl.c --- vl.c 22 Apr 2004 00:35:09 -0000 1.61 +++ vl.c 23 Apr 2004 23:01:17 -0000 @@ -111,6 +111,7 @@ SerialState *serial_console; QEMUTimer *gui_timer; int vm_running; +static int audio_enabled = 1; /***********************************************************/ /* x86 io ports */ @@ -1731,8 +1732,11 @@ qemu_run_timers(&active_timers[QEMU_TIMER_VIRTUAL], qemu_get_clock(vm_clock)); - /* XXX: add explicit timer */ - SB16_run(); + if (audio_enabled) + { + /* XXX: add explicit timer */ + SB16_run(); + } /* run dma transfers, if any */ DMA_run(); @@ -1781,6 +1785,7 @@ "Debug/Expert options:\n" "-s wait gdb connection to port %d\n" "-p port change gdb connection port\n" + "-disable-audio disable sound blaster emulation (x86 emulation only)\n" "-d item1,... output log to %s (use -d ? for a list of log items)\n" "-hdachs c,h,s force hard disk 0 geometry (usually qemu can guess it)\n" "-L path set the directory for the BIOS and VGA BIOS\n" @@ -1829,6 +1834,7 @@ { "macaddr", 1, NULL, 0 }, { "user-net", 0, NULL, 0 }, { "dummy-net", 0, NULL, 0 }, + { "disable-audio", 0, NULL, 0 }, { NULL, 0, NULL, 0 }, }; @@ -2020,6 +2026,10 @@ case 19: net_if_type = NET_IF_DUMMY; break; + case 20: + audio_enabled = 0; + fprintf(stderr, "Disabling audio\n"); + break; } break; case 'h': @@ -2301,7 +2311,8 @@ #if defined(TARGET_I386) pc_init(ram_size, vga_ram_size, boot_device, ds, fd_filename, snapshot, - kernel_filename, kernel_cmdline, initrd_filename); + kernel_filename, kernel_cmdline, initrd_filename, + audio_enabled); #elif defined(TARGET_PPC) ppc_init(ram_size, vga_ram_size, boot_device, ds, fd_filename, snapshot, Index: vl.h =================================================================== RCS file: /cvsroot/qemu/qemu/vl.h,v retrieving revision 1.20 diff -u -r1.20 vl.h --- vl.h 21 Apr 2004 23:27:19 -0000 1.20 +++ vl.h 23 Apr 2004 23:01:17 -0000 @@ -458,7 +458,7 @@ void pc_init(int ram_size, int vga_ram_size, int boot_device, DisplayState *ds, const char **fd_filename, int snapshot, const char *kernel_filename, const char *kernel_cmdline, - const char *initrd_filename); + const char *initrd_filename, int audio_enabled); /* monitor.c */ void monitor_init(void); Index: hw/pc.c =================================================================== RCS file: /cvsroot/qemu/qemu/hw/pc.c,v retrieving revision 1.9 diff -u -r1.9 pc.c --- hw/pc.c 7 Apr 2004 21:30:08 -0000 1.9 +++ hw/pc.c 23 Apr 2004 23:01:17 -0000 @@ -282,7 +282,7 @@ void pc_init(int ram_size, int vga_ram_size, int boot_device, DisplayState *ds, const char **fd_filename, int snapshot, const char *kernel_filename, const char *kernel_cmdline, - const char *initrd_filename) + const char *initrd_filename, int audio_enabled) { char buf[1024]; int ret, linux_boot, initrd_size, i, nb_nics1, fd; @@ -402,8 +402,11 @@ #ifndef _WIN32 /* no audio supported yet for win32 */ - AUD_init(); - SB16_init(); + if (audio_enabled) + { + AUD_init(); + SB16_init(); + } #endif floppy_controller = fdctrl_init(6, 2, 0, 0x3f0, fd_table); --Kj7319i9nmIyA2yE--