How to dual boot Vista and XP (with Vista installed first)
We need to shrink the Vista partition on the hard disk and create enough space for an installation of XP. This can be done in three ways – using the GPartEd Live CD, the DISKPART utility on the Vista DVD or the Vista Disk Management GUI – and we’ll cover all three. We’ll then install XP and install EasyBCD to reinstate the Vista bootloader which will be overwritten during the XP installation, and then use EasyBCD to configure Vista’s bootloader to boot the XP partition.
Create Free Space in Windows XP
We assume that before you start this tutorial, you have backed up the drive (partitions and data) that will host the two operating systems.
Your first step will be to modify the Windows Vista system partition to make space for XP. There are three ways you can do this: GParted, DISKPART, or Disk Management. We recommend using the GParted solution.
Option 1: Gparted
The GParted Live CD ISO is available here – burn it to CD and boot the system from the disc. The version we used was 0.3.7-7.
When you boot from the GParted LiveCD, depending on your system, you should just need to select the auto-configuration boot option.

During boot, press Enter twice when prompted to select the keymap and language settings.
When the main GUI loads, right-click on the main Windows XP NTFS partition (depending on your setup, probably /dev/hda1) and select Resize/Move.

Use the slider to reduce the partition size and free up enough room to install XP (at least 5GB) and click Resize/Move.

The changes haven’t actually been made, they’ve just been scheduled to run. To commit the changes and resize the partition, click Apply. GParted will ask to confirm the changes – hit OK and away you go.
Option 2: Using DISKPART
Boot the machine from the Vista DVD. Select the appropriate language and then “Install Now”.
On the product key page, press SHIFT + F10 to launch a Windows PE 2.0 command window. Then type in DISKPART and press enter to get into the DISKPART utility.

Now type in LIST VOLUME – this gives you a readout of the volumes available on the system. Select the main Windows XP volume by typing in SELECT VOLUME 0 (in most cases it will be Volume 0 – in our lab in was Volume 1).

Now type in SHRINK. Vista will reduce the size the selected Volume by around 50%.

Type “exit’ to get out of DISKPART and then “exit’ again to close the command window.
Option 3: Disk Management
Using the Disk Management GUI is really no different to using DISKPART (it’s the GUI frontend to the DISKPART utility), but using the GUI does mean that you can make the changes within Vista before rebooting to install XP, without needing to use the Vista DVD.
Right-click on Computer and select Manage. In Computer Management, expand Storage and select Disk Management.

Right-click the primary partition (the one you need to make space on) and select Shrink Volume

The default values which Vista provides represent a fairly aggressive shrink – as long as the values will give you enough space to install XP, accept the defaults and select Shrink.
Vista will churn away for a moment, and then you’ll see the newly-created free space on the primary disk. Now you can reboot and install XP.

Install Windows XP
When the Windows XP setup reaches the point where you’re prompted where it is to be installed, you’ll see that while XP can see the space we created earlier, it can also see the partition with Vista on it.
You should be able to see the space you reclaimed on the disk earlier which has become “unallocated space”.

Create a second partition using the Windows XP installer screen above by selecting the free space on the drive and pressing “C” to create a partition (if prompted, choose NTFS as the file system.)
Irritatingly, XP assigns a drive letter to this partition (C:) which means that it will use the next available drive letter after all the other physical drives have been taken into account.
This means that the system drive of the XP installation won’t be C:.
From XP’s perspective this isn’t really a problem – it’s smart enough to figure out where everything should go – but some applications make assumptions about where they should install to, and can’t cope with a non-standard Windows configuration.
This was also the case with our tutorial on dualbooting Ubuntu and XP, where Ubuntu had been installed first. However in that scenario, even though the XP system drive had a non-standard drive letter, it couldn’t read the Linux partitions so there was no danger of the two systems overlapping. This is not the case with Vista/XP.
Nonetheless, install XP as normal – there’s no need to do anything differently.
After the initial file copy, Windows XP reboots and loads up the GUI-based component of the install. You may get the following error: “A disk read error occurred – press Ctrl-Alt-Del to continue”. This is caused by a corrupt bootloader.
Optional: Fix corrupt boot loader
If the Windows XP bootloader corrupts during the install, performing a reinstall won’t fix it, nor will going into the XP Recovery Mode and attempting to repair the MBR.
Luckily, the install was up to the stage where all you need to do is be able to boot from the Windows XP partition, and the install will pick up from where it left off.
To do this you will need to restore the Vista bootloader so that you can then boot into Vista, install EasyBCD and create a boot entry for Windows XP. Once this has been done you can boot into the XP partition and the installation will continue.
When the system reboots it won’t bring up a boot menu. Although XP recognises the Vista partition it doesn’t recognise Vista itself. This is because the Windows XP bootloader gets installed to the MBR, thus overwriting the Vista bootloader and so Vista can no longer boot – the XP bootloader can’t be made to recognise Vista.
Boot from the Vista DVD and on the screen where you’re prompted to “Install now”, select “Repair your computer”.

The next screen searches for local Vista installations – there should only be one, so click Next.

This loads the System Recovery Options screen. Select the first option – Startup Repair. This looks for problems which would prevent Vista from loading (like a missing bootloader) and automatically fixes them.

If you click on “Click here for diagnostic and repair details” and scroll to the bottom of the list, it shows that the problem detected and repaired was a corrupt boot sector (according to Vista, anyway).
Click Close and then Finish, and the system will restart and boot into Vista.
Enable Dual Booting
Now we are at a point, depending on the result of the last step, where we must add the other OS to our bootloader. To do this we will use an application called EasyBCD.
Once the system is up and running, download and install Microsoft .NET Framework 2.0, and then download and install EasyBCD (version 1.7.2 at the time of writing). If you are running Vista already you may not need the .NET framework update.
Launch the application. EasyBCD isn’t looking at the XP bootloader – it has found the bootloader on the Vista partition, so this is what you’re directly editing.
Go to the “Add/Remove Entries” tab. You’ll see that there’s only one option available in the Vista bootloader at the moment. In the “Add an Entry” section, change the Drive in the dropdown menu from C:\ to E:\. Change Type to “Windows NT/2k/XP/2k3″, and the Name to “Microsoft Windows XP”. Then click “Add Entry” and “Save”.

Then go to the “Manage Bootloader” tab. Make sure that “Reinstall the Vista Bootloader” is selected and then click “Write MBR” and restart the system.

On reboot, the Vista bootloader is now active and you’ll see two boot options.

Maina said,
When I used EasyBCD, my computer totally freaked out. I had to get the vista cd and fixed it. It took me 4 months to find it.