It is VirtualBox BIOS bug. 1. Normally, BIOS writes number of hard disk drives to memory at address 0x475. In VirtualBox this byte is always 1, no matter how many disk is installed. This is bug. 2. When you select non-first hard disk in BIOS boot selection menu, in most (all?) PCs I have tried, the selected drive gets drive number 0x80 and other drives get 0x81,0x82 ... . In VirtualBox, the selected drive have the same drive number as when it is not selected. If you select second hard disk, it gets drive number 0x81. This can be considered non-bug, just different behavior. 1+2 together : You cannot boot GRUB4DOS from second drive. Workaround : Don't use F12 and 2. Change drives order in Settings storage page.