• Dual Boot is broken. If XP works, DOS does not and vice-versa

    Home » Forums » AskWoody support » Windows » Windows Vista, XP and earlier » Questions: Vista, XP back to 3.1 » Dual Boot is broken. If XP works, DOS does not and vice-versa

    • This topic has 11 replies, 6 voices, and was last updated 12 years ago.
    Author
    Topic
    #488493

    Hi All:

    I have a spare WinXP Pro Sp3 setup that used to have multi-boot with WinXP, DOS, Recovery Console, or Ubuntu – with WinXp System drive on F: and DOS-7 on C:. Due to a hardware issue, I gave up on Ubuntu on this box when the following upgrade failed. No problem with deleting it (run from XP on J:, so just removed via Add-Remove Software), but somehow it wrecked the ability to boot to DOS — I get a “Invalid System Disk. Replace disk and press any key” message. Been doing PC stuff since the DOS-1.0 days, so I’m not a complete noobie… The C: drive is active and fine, as is the whole 500GB drive and all its partitions.

    I monkeyed around with things but the best I could do was to boot from a DOS-7 floppy and run SYS C:, which then only runs DOS from C: and D: (FAT partitions – the others are NTFS). Then I booted the WinXP Install CD’s Recovery Console to run 1) BootCFG /Default, 2) FixBoot C:. That restored the WinXP boot menu and I can run WinXP, but the on-disk recovery console and DOS were unable to run. So, I reinstalled the on-disk recovery console to the hard drive and now it works, but still no DOS — back to the old “Invalid System Disk” message. I still have the occasional DOS program I need to run that won’t execute on my main Win7-Pro workstation, neither in XP-Mode nor VirtualBox-XP, so it is inconvenient to have to floppy-boot the XP machine for that.

    I’m stumped. Any suggestions/things I should try? TIA to all.
    Rob

    Viewing 4 reply threads
    Author
    Replies
    • #1383134

      Rob,

      The first thing I would try is EasyBCD. This free program will edit the BCD Store and allow you to either correct the entry for DOS or create a new one and point to the DOS boot area of your drive.

      HTH :cheers:

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

    • #1383938

      Hi RG:

      This has been worthless for me. The program installs fine (although I HATE DotNet), but upon starting it, it tells me that “Boot configuration data could not be opened. The system cannot find the file specified.” Then, it offers to manually load a BCD registry, but ONLY if I’m using Win7/Vista/Win8. I am not. So, then trying to generate my own boot configuration file has been frustrating and confusing. I have to manually try to create a boot loader configuration, and at first everything is “greyed out” so I couldn’t even add a new entry to an empty configuration. I finally figured out how to create a blank configuration, but then could only load a single entry into it — attempting to add a second entry gives an “out of resources” message that I cannot bypass unless I completely restart the PC — and that usually results in a fatal error of “missing bootmgr” or some such and ends up with “Invalid system disk. Replace disk and press any key”. That’s pretty much what I started with.

      In short: NO JOY. Clearly EasyBCD is aimed at Vista and above, and support for XP is minimal. I’m sure this can all be fixed with the right combination of booting MS-DOS and WinXP install CD (since that was all I needed when I first set this up), but I’m out of ideas, and really don’t want to wipe my entire Windows System drive and start over from scratch.

      Any other ideas/suggestions? Thanx in advance.
      Rob

      • #1384058

        Clearly EasyBCD is aimed at Vista and above, and support for XP is minimal. I’m sure this can all be fixed with the right combination of booting MS-DOS and WinXP install CD (since that was all I needed when I first set this up), but I’m out of ideas, and really don’t want to wipe my entire Windows System drive and start over from scratch.

        XP doesn’t have a BCD, so it doesn’t surprise me EasyBCD didn’t work.

        You’ve fallen victim to Microsoft’s lame-brained, half-a**ed style of “multibooting”. You wouldn’t have this problem if you had setup a true multiboot in the first place. See my multibooting webpage for an explanation why the Microsoft method is not true multibooting. Substitute “DOS” for “Win98” in the example and you’ll have your exact situation.

        I can’t tell you how to repair it, though, since I never ever use Microsoft’s fake multibooting. My best advice would be to start from scratch and reinstall your multiboot the right way this time.

        Barring that, try restoring your DOS partition from a backup image . . . you do have backups of your partitions, right? That would restore your ntldr, boot.ini and bootsect.dos files and things might work again.

        If not, try poking around and see if you still have bootsect.dos and if your boot.ini is loading it when you select the DOS boot option.

        If all else fails (and you still don’t want to reinstall the right way), you might try the non-destructive reinstall talked about elsewhere on this forum. Set things up so it boots DOS again, then the non-destructive reinstall might give you a chance to rebuilt bootsect.dos and boot.ini. Then cross your fingers and hope the non-destructive reinstall sees the Windows partition as drive F: again and doesn’t try to reassign it a different letter.

        Dan

        • #1384106

          Hi Dan:

          Thanx for your quick and informative response.

          1) First off — I have always loaded DOS onto the C: drive, and whatever version of Windows into the F: partition. So, they are separated, and of course the Windows partition is NTFS, so DOS doesn’t see it (as mentioned in your website).
          2) I definitely have images of each partition, both O/S and data — a total of 7 partitions, stored on a rack-mounted removable 2 TB drive. Good thing, since at least I can restore the ability to boot into WinXP and Win Recovery Console. The sad part is that I have had to do that nearly a half dozen times while I try to get back to where I was when removal of Ubuntu screwed me up to lose access to DOS somehow.
          3) Yes, I do have a BOOTSECT.DOS and BOOT.INI in the root on C: — but that gives me an idea: The filedate on that BOOTSECT.DOS is from 2005, and I think I upgraded the hard drive from 160MB to 500MB since then — which might account for repeatedly getting an “invalid system disk” error, except that the C: partition is the same size as always, but may have different heads and sectors than the old drive. I will look into that, too.
          4) I have no particular dislike of 3rd party utilities, although my system used to work just fine with the native “false-multiboot” it used to have. I have gotten used to having distinct drive letters in either mode, however, and find having the F: drive change itself to be C: drive confuses me and the various other utility programs I use — I need to remember if I’m in windows that C: is disk(0)partition(4), but in DOS, the C: drive is disk(0)partition(1), so I can find my files when I want them. Ugly — at least to me.

          So, if RG can help me figure out how to use EasyBCD, I’m okay with that, but if I can just use native Micro$$oft tools I’m okay, too…

          Thanx again. I will report back any further progress or lack thereof…

          Rob

          • #1384225

            Hi All:

            Well, using the tip that Dan provided about BootSect.DOS, and remembering having replaced the original 160GB drive with a 500GB one, since I had a complete image of each partition, I bit the bullet and completely reformatted the C: (DOS) partition and loaded its system files. Then I tried a repair-in-place of WinXP on the F: partition. It didn’t recognize any previous windows installs, so I went ahead and did a complete install of WinXP into the F: partition. Then, I restored the existing WinXP image onto F:, and re-installed the Recovery Console from the WinXP Install CD, and now everything works as it should. I spent a quarter of the time I wasted monkeying with all the other stuff, and its now exactly as it had been before I had Ubuntu installed and removed.

            Thanx to all for your tips and suggestions.:):cool:

            • #1389874

              Simply boot from a DOS floppy diskette – it will see and access every DOS partition under 512 mb without problems… Some things are easy. If you want to see the NTFS partitions, NTFS4 DOS boot diskette make life easy. I do not understand why everyone always reinstalls an O/S for minor problems. Incidentally, it is a simple matter to rebuild the boot partition and the appropriate DOS and Windows loader links if you really want that as well….

            • #1389945

              This might help others with the same problem.

              When installing Ubuntu (or many other Linux distros) in a multiboot situation, DO NOT install GRUB or GRUB4DOS to the MBR of the boot drive. If you do, it rewrites the boot code and makes it difficult to fix the type of boot problem the OP encountered. Simply removing the Linux partition will not fix this problem – it might make it worse.

              I speak from experience.

    • #1390175

      It would be better to speak from understanding. 🙁 Windows uses and always has a DOS boot. Very simply, DOS can’t boot Linux period. A Linux boot loader is required, whether Grub or other. How the Linux boot loader is employed in the dual boot scheme depends on the user’s wishes.

      In this case, the poster used WUBI to create an empty file in the NTFS partition. Ubuntu installed itself to that file. It kept the Windows boot flag in the MBR intact, and modified boot.ini file to add an entry for Ubuntu pointing to grub4dos, which it placed in the c: and c:ubuntu folders. Grub4dos is chained to Grub2 in the Linux installation, because boot.ini can’t chain directly to a non-DOS loader.

      The other convention (not used here) is to replace the MBR entry with Grub2, and chain boot.ini to it.

      One of the two setups is indispensable. Both can create problems with uninstalling Ubuntu, although the WUBI approach typically does not. It did here, because the user had a separate dual boot DOS install. Only the boot files themselves were affected, and all he needed to actually do was restore the original boot files. The MBR was not disturbed.

      In the other case, the user needs to restore the MBR using the appropriate Windows command. Again, not at all difficult.

    • #1390185

      Funny, I managed to get Linux to boot just fine using EasyBCD. Just added an entry and pointed to the linux installation.
      When I decided to trash Linux I just killed the entry in EasyBCD then deleted the Linux partitions. HTH :cheers:

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

    • #1390198

      I’m sorry if I implied that you couldn’t use a third party product that chains bootloaders. Obviously you can. The point I was making was about the need for the Linux boot loader (refuting the poster who said it should be avoided). Easy BCD (http://en.wikipedia.org/wiki/EasyBCD) may do this behind the scenes, but under the hood it does what I described.

    Viewing 4 reply threads
    Reply To: Dual Boot is broken. If XP works, DOS does not and vice-versa

    You can use BBCodes to format your content.
    Your account can't use all available BBCodes, they will be stripped before saving.

    Your information: