Windows 8.1 UEFI x64 & Windows XP x64 Dual-Boot

Solution 1:

Most (but not all) modern computers have EFIs that are reasonably flexible about boot mode (BIOS/CSM/legacy vs. EFI/UEFI). The trick is getting them to switch in a reasonable way. AFAIK, there are only two choices for this:

  • Using the firmware's boot manager -- Most EFIs provide a boot manager that you can access by hitting Esc or a function key. (Which key varies from one computer to another.) Using this feature, you can switch between boot loaders, including all the EFI boot loader(s) you've installed and at least one BIOS-mode boot loader.
  • Using rEFInd -- My rEFInd boot manager offers functionality similar to that just described, but it's a bit more accessible. To use it, though, you'll need to install rEFInd and edit the refind.conf file: Uncomment the scanfor line and ensure that hdbios is among the options.

In either case, you'll need to install Windows XP on an MBR-partitioned disk in a conventional BIOS manner. This means you'll need to adjust your firmware's settings to boot in BIOS/CSM/legacy mode and to disable Secure Boot. How you do this depends on your particular firmware, so I can't be more specific than this. I recommend unplugging your Windows 8.1 disk when installing Windows XP, to minimize the risk of problems. Also, you may need to ensure that your Windows XP disk appears to be the first disk to the computer, which may mean juggling drive cables.

Once XP and 8.1 are both installed (I assume 8.1 was pre-installed), you should ensure that your firmware is set to support both BIOS/CSM/legacy and EFI/UEFI booting. Do not re-enable Secure Boot. Some models have a restricted options regarding boot modes, though. If you've got such a model, set it for EFI/UEFI booting and install and configure rEFInd; it may be able to provide support for both boot modes even if the firmware doesn't provide that support itself. You may also want or need to install rEFInd even if your computer is more flexible in this respect; you'll just have to experiment, figure out what your firmware can do, and decide for yourself which method to use.

If you try all this and have no luck, your only option may be to re-install Windows 8.1 in BIOS/CSM/legacy mode. Most OEMs don't support this, so you may need to contact Microsoft to get a retail Windows 8.1 disc.