qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Lonnie Mendez <lmendez19@austin.rr.com>
To: qemu-devel@nongnu.org
Subject: [Qemu-devel] [patch] disable boot signature checking for floppy disks
Date: Tue, 23 May 2006 11:58:32 -0500	[thread overview]
Message-ID: <44733F38.3010309@austin.rr.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 407 bytes --]

   lo list.  There was someone having problems with booting a floppy 
that had an invalid boot signature (!0xaa55) in the irc channel earlier 
today.  They were however able to boot it in bochs using the option 
floppy_bootsig_check: disabled=1.

   This is something that can easily be enabled in the bios through 
qemu.  The attached patch allows for this by passing the argument 
-no-fd-bootchk to qemu.

[-- Attachment #2: qemu-fd-no-bootchk.diff --]
[-- Type: text/plain, Size: 2944 bytes --]

--- qemu/qemu-doc.texi	2006-05-13 11:55:46.000000000 -0500
+++ qemu/qemu-doc.texi	2006-05-23 11:09:18.000000000 -0500
@@ -228,6 +228,9 @@
 the raw disk image you use is not written back. You can however force
 the write back by pressing @key{C-a s} (@pxref{disk_images}). 
 
+@item -no-fd-bootchk
+Disable boot signature checking for floppy disks in Bochs bios.
+
 @item -m megs
 Set virtual RAM size to @var{megs} megabytes. Default is 128 MB.
 
--- qemu/vl.h	2006-05-21 11:30:15.000000000 -0500
+++ qemu/vl.h	2006-05-23 10:46:14.000000000 -0500
@@ -880,6 +880,7 @@
 /* pc.c */
 extern QEMUMachine pc_machine;
 extern QEMUMachine isapc_machine;
+extern int fd_bootchk;
 
 void ioport_set_a20(int enable);
 int ioport_get_a20(void);
--- qemu/vl.c	2006-05-21 11:30:15.000000000 -0500
+++ qemu/vl.c	2006-05-23 11:34:43.000000000 -0500
@@ -159,6 +159,7 @@
 #define MAX_CPUS 1
 #endif
 int acpi_enabled = 1;
+int fd_bootchk = 1;
 
 /***********************************************************/
 /* x86 ISA bus support */
@@ -4632,6 +4668,9 @@
            "-cdrom file     use 'file' as IDE cdrom image (cdrom is ide1 master)\n"
            "-boot [a|c|d]   boot on floppy (a), hard disk (c) or CD-ROM (d)\n"
 	   "-snapshot       write to temporary files instead of disk image files\n"
+#ifdef TARGET_I386
+           "-no-fd-bootchk  disable boot signature checking for floppy disks\n"
+#endif
            "-m megs         set virtual RAM size to megs MB [default=%d]\n"
            "-smp n          set the number of CPUs to 'n' [default=1]\n"
            "-nographic      disable graphical output and redirect serial I/Os to console\n"
@@ -4763,6 +4802,9 @@
     QEMU_OPTION_cdrom,
     QEMU_OPTION_boot,
     QEMU_OPTION_snapshot,
+#ifdef TARGET_I386
+    QEMU_OPTION_no_fd_bootchk,
+#endif
     QEMU_OPTION_m,
     QEMU_OPTION_nographic,
 #ifdef HAS_AUDIO
@@ -4826,6 +4868,9 @@
     { "cdrom", HAS_ARG, QEMU_OPTION_cdrom },
     { "boot", HAS_ARG, QEMU_OPTION_boot },
     { "snapshot", 0, QEMU_OPTION_snapshot },
+#ifdef TARGET_I386
+    { "no-fd-bootchk", 0, QEMU_OPTION_no_fd_bootchk },
+#endif
     { "m", HAS_ARG, QEMU_OPTION_m },
     { "nographic", 0, QEMU_OPTION_nographic },
     { "k", HAS_ARG, QEMU_OPTION_k },
@@ -5284,6 +5329,11 @@
             case QEMU_OPTION_fdb:
                 fd_filename[1] = optarg;
                 break;
+#ifdef TARGET_I386
+            case QEMU_OPTION_no_fd_bootchk:
+                fd_bootchk = 0;
+                break;
+#endif
             case QEMU_OPTION_no_code_copy:
                 code_copy_enabled = 0;
                 break;
--- qemu/hw/pc.c	2006-05-21 11:30:15.000000000 -0500
+++ qemu/hw/pc.c	2006-05-23 09:03:29.000000000 -0500
@@ -193,6 +193,8 @@
     case 'a':
     case 'b':
         rtc_set_memory(s, 0x3d, 0x01); /* floppy boot */
+        if (!fd_bootchk)
+            rtc_set_memory(s, 0x38, 0x01); /* disable signature check */
         break;
     default:
     case 'c':

                 reply	other threads:[~2006-05-23 16:58 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=44733F38.3010309@austin.rr.com \
    --to=lmendez19@austin.rr.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).