-no-fd-bootchk option (Lonnie Mendez)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1976 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
bellard 2006-06-14 16:03:05 +00:00
parent 5cbfcd00b0
commit 52ca8d6af0
4 changed files with 22 additions and 4 deletions

View file

@ -193,6 +193,8 @@ static void cmos_init(int ram_size, int boot_device, BlockDriverState **hd_table
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':
@ -264,10 +266,6 @@ static void cmos_init(int ram_size, int boot_device, BlockDriverState **hd_table
}
}
rtc_set_memory(s, 0x39, val);
/* Disable check of 0x55AA signature on the last two bytes of
first sector of disk. XXX: make it the default ? */
// rtc_set_memory(s, 0x38, 1);
}
void ioport_set_a20(int enable)

View file

@ -228,6 +228,10 @@ Write to temporary files instead of disk image files. In this case,
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. It may
be needed to boot from old floppy disks.
@item -m megs
Set virtual RAM size to @var{megs} megabytes. Default is 128 MB.

15
vl.c
View file

@ -159,6 +159,7 @@ int vnc_display = -1;
#define MAX_CPUS 1
#endif
int acpi_enabled = 1;
int fd_bootchk = 1;
/***********************************************************/
/* x86 ISA bus support */
@ -4634,6 +4635,9 @@ void help(void)
"-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"
@ -4765,6 +4769,9 @@ enum {
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
@ -4828,6 +4835,9 @@ const QEMUOption qemu_options[] = {
{ "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 },
@ -5286,6 +5296,11 @@ int main(int argc, char **argv)
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;

1
vl.h
View file

@ -889,6 +889,7 @@ void acpi_bios_init(void);
/* 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);