TweakHomePC

Dual-booting all versions of Windows and Linux

   Dual-Boot    |    Win 8    |    Win 7    |    Vista    |    Win XP/2K/NT    |    Win9x/Me    |    How to    |    Legacy 9x Tweaks    |    SiteMap   


 

Here: Home > Dual-Boot > Dual-Boot Windows XP. 2000 or NT with other Operating Systems >


Add Windows 7 to your existing Windows XP + MS-DOS Dual-Boot
(Windows XP and MS-DOS dual-boot already created)

Last reviewed: June 2010

On this page:

Introduction

This guide shows how to create a native (natural) triple-boot of Windows XP, MS-DOS and Windows 7 on a computer with Windows XP already dual-booted with MS-DOS. You can then run any of those three operating systems by selecting one from a menu during bootup. No data loss will occur and a third-party boot utility will not be used.

If you have Windows XP installed and have not yet added MS-DOS, go here first.

The guide applies only to natural dual-boots of Windows XP and MS-DOS. It's not for use with a third-party booting utility.

The installation of Windows 7 on the Windows XP-controlled computer will automatically create a double dual-boot for you. The partition boot sector that currently controls the bootup will continue to do so but will be changed to the Windows 7 variety (that can be changed back to XP's type if you ever wish to remove Windows 7).

In this procedure you need to shrink the Windows XP drive to make room for Windows 7 unless you install Windows 7 on a second hard disk. Using a second disk simplifies the procedure but that's not a requirement. The example shown here uses a single hard disk. Any data on a partition selected for Windows 7 will be destroyed during installation.

You also need to determine if your computer has the minimum system requirements to run Windows 7.

Windows XP (Home or Pro) already dual-booted (natural) with MS-DOS 7.10 was used in testing. The computers used were (1) a 32-bit Dell Optiplex with Pentium 4 (2.26GHz), 2.0 GB RAM, 160 GB ATA hard disk, and (2) AMD Athlon 64-bit (2.4GHz), 2.0 GB RAM, 1 TB SATA hard disk.

The basic procedure is relatively easy and is suitable for most computer users. However, the Windows XP fix required to deal with the Restore Points problem with Windows XP is more difficult to apply.

How to Create a Triple-Boot with Win7 when a WinXP and MS-DOS Dual-Boot already exists

STEP 1: Install Windows 7

  1. Check the suitability of your computer at Microsoft's Windows 7 Compatibility Center
  2. Backup important data.
  3. Create sufficient Unallocated/Free space for Win7 at end of WinXP disk or on a second disk
    (you may need a partitioning utility to resize the XP partition - the free GParted works fine).
    Restart to WinXP twice after a resizing of the XP partition.
  4. Bootup from Win7 installation DVD and select Install Now.
    • Select Custom Install.
    • Select Unallocated space or the partition for Win7.
    • Select Advanced, and then Format (if XP uses NTFS then also use NTFS for Win7).
      Let the installation finish including the reboots.
    • In Win7, open Disk Management (right-click Computer, select Manage, select Disk Mamagement).
      Right-click any hard disk partition without a drive letter (but not any OEM/Reserved), select Change drive letters and paths..., and select Add
        - add any drive letter you prefer (the default is usually fine).
    • Optional: In right pane of Computer, slowly double-click the Win7 partition and label it something like wn_7 (for easier identification).

A Win7 + WinXP dual-boot has been created automatically by Windows 7. When "Earlier version of Windows" (XP) is selected, you will be presented with your original (and still functional) WinXP + DOS boot menu.

Win7 also creates a third boot option (for DOS) on the first boot menu but this usually does not work! In Step 2 we make it work and then eliminate the need for the second boot menu.

STEP2: Create a single Boot Menu

You can skip this Step if you wish. However most users would prefer to have a single Windows 7 boot menu that allows them to directly access all three operating systems without having to sometimes use a second menu.

You need to edit WinXP's Boot.ini which is a hidden system file in the root of C: (when booted to WinXP).

Win7 itself uses XP's Boot.ini during every bootup to determine the entries it will add to its own boot menu. If XP's Boot.ini does not contain Bootsect.dos in its pathway for MS-DOS, then the Win7 entry for MS-DOS does not work!

  1. Bootup to WinXP.
  2. Make hidden files visible. Read How to Show Hidden Files if necessary.
  3. Backup C:\Boot.ini
  4. Right-click C:\Boot.ini, select Properties, and uncheck the Read-only box. Click Apply.
  5. Right-click C:\Boot.ini, select Open (or edit).
    • In the [operating systems] section, change the C:\="..." line to
      C:\bootsect.dos="MS-DOS 7.10"
      Note: the only place you can use a space is in the name between the essential double quotes.
    • Make sure the default= line points to Windows XP.
    • Now change the Timeout= line to Timeout=2
  6. Save Boot.ini and reboot.

Congratulations!
Now all three entries in the Win7 boot menu will work. The original WinXP boot menu will appear only very briefly (2 seconds) when "Earlier version of Windows" is selected from the Win7 boot menu. You can make Timeout=0 if you prefer to never see the WinXP boot menu.

Finally you should restart computer to Windows XP and correct the Restore Points problem that occurs with Windows XP (read below)

[top of page]

Fix Restore Points Problem in XP

Windows XP does not understand some of the disk management techniques used by Windows 7 and Vista. Every time XP is booted, it destroys Win7's and Vista's Restore Points and all except the most recent backup files from Complete PC Backup - read Microsoft's Knowledge Base article 926185. The problem does not affect Windows 2000.

A small addition to XP's registry avoids this problem by making the Windows 7/Vista partition inaccessible when, and only when, XP is running. You must, however, use extreme care to ensure you enter the correct drive letter in the following corrective procedure. You must never enter the drive letter used by XP - that would prevent XP from starting! This fix is applied when XP is booted and not from any other Windows.

  1. Download this tiny xp_rstr_fix.reg file, xp_rstr_fix.zip, and unzip it to XP's Desktop.
  2. Startup to Windows XP. It must be XP and not any other version of Windows.
  3. Note the drive letter allocated to the Win7 partition in Windows Explorer.
  4. Right-click xp_rstr_fix.reg on the Desktop and select Edit. Look at this line in xp_rstr_fix:
    "\\DosDevices\\Z:"=dword:00000001
    • Carefully change that Z to the drive letter allocated to the Win7 partition
      (make sure you do not remove the \\ before the letter or the : after the letter).
    • Save the file back to the Desktop as xp_rstr_fix2.reg
    • Right-click xp_rstr_fix2.reg on the Desktop, click Merge, and click OK.
  5. Reboot to Win7, and create a new Restore Point (right-click Computer > Properties > System Protection).
  6. Delete the two .reg files on XP's Desktop when you're finished.

When XP is booted, you will be denied access to the Win7 partition and the partition will appear to be unformatted (RAW) even though the contents have not been changed. It will still be allocated a drive letter in XP. When you boot to Win7 you will have access to all your drives, including the Windows XP partition.

This is the full xp_rstr_fix.reg file: (the blank line is required)

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices\Offline]
"\\DosDevices\\Z:"=dword:00000001

[top of page]

Help! Remove Win7 and Repair XP Startup

If you wish to remove Win7 and return to a XP-controlled startup then follow these instructions.

  1. Boot up from your XP installation CD.
  2. Press R to enter the Recovery Console.
    Enter the number that represents XP (probably 1 for C:\Windows).
    Press Enter key for Administrator password (or type your password and then press Enter).
    • Type in and then press Enter after each line
      FIXMBR
      FIXBOOT
      EXIT
  3. Remove the CD.

Your computer will automatically boot to Windows XP without any boot menu if none existed previously.

You can now use your partitioning utility to delete the Win7 partition and then resize the XP partition to incorporate the free space left after deleting Win7, or you can simply Format the Win7 partition. However you must not do this if, for some strange reason, your Win7 partition comes before the XP partition.

[top of page]

Related Reading

[top of page]

Please remember that you alone are responsible for the consequences of any changes you make to your computer hardware or software.

Copyright © LarryM 1998-2015 thpc@mail.com