Opened 13 years ago
Last modified 4 years ago
#8885 closed defect
Multiboot FreeBSD doesn't work because the BIOS always claims to have 1 hard disk — at Initial Version
Reported by: | mlw | Owned by: | |
---|---|---|---|
Component: | other | Version: | VirtualBox 4.0.6 |
Keywords: | Cc: | ||
Guest type: | BSD | Host type: | Linux |
Description
I have a VM with three virtual IDE hard disks, each one containing a different version of FreeBSD. The mbr on the first disk runs grub to boot/chainload the FreeBSD boot loader from the appropriate disk. This works under VMware server.
When I tried the same thing in VirtualBox, the FreeBSD boot loader fails to detect the second and third disks, so it can't boot from them.
The problem is that the BIOS boot sequence is setting the byte at 0x0475 to 1 unconditionally in hard_drive_post even though the correct value was set by ata_detect (using the variable hdcount).
Please consider adding the attached patch.
Patch for src/VBox/Devices/PC/BIOS/rombios.c