Gerd Hoffmann wrote: > On Sun, Feb 28, 2021 at 02:22:53PM -0000, Yiguang Chen wrote: > > Most time, When a vm with seabios start. The bios will > > display such info: > > ----- > > Seabios (version rel-1.13-0 ......) > > Machine UUID ... > > > > IPXE .. > > > > IPXE.. > > > > Booting from DVD/CD... > > Press any key to boot from CD or DVD. > > --- > > > > It means that have a bootable cdrom to boot. But If we want to boot > > from cdrom, we must press any key as what the warning had said. If it > > is possible to boot from DVD/CD automatically, instead of pressing a > > key by hand? > This is a windows install iso, right?
You are right. The cdrom is a windows install iso.
> This isn't seabios, the windows boot loader does that. I think windows > does this only in case it finds a bootable hard disk. So when booting > the guest with a fresh & blank virtual hard disk it should boot the > windows installer without asking for a key press.
It seems that the windows install iso cause this behavior and the seabios source code prove this. --- roms/seabios/src/boot.c static void boot_cdrom(struct drive_s *drive) { if (! CONFIG_CDROM_BOOT) return; printf("Booting from DVD/CD...\n");
int status = cdrom_boot(drive); if (status) { printf("Boot failed: Could not read from CDROM (code %04x)\n", status); return; }
u8 bootdrv = CDEmu.emulated_drive; u16 bootseg = CDEmu.load_segment;
tpm_add_cdrom(bootdrv, MAKE_FLATPTR(bootseg, 0), 512);
/* Canonicalize bootseg:bootip */ u16 bootip = (bootseg & 0x0fff) << 4; bootseg &= 0xf000;
call_boot_entry(SEGOFF(bootseg, bootip), bootdrv); } ---
Best regards, YiguangChen