Page 1 of 1
can't get WinXP phys-to-virt conversion to boot
Posted: 6. Dec 2010, 00:15
by gonewest
I'm trying to convert an old WinXP machine into a virtual machine under Win7.
I ran Sysinternals disk2vhd on the old c: drive. Moved the VHD over to the Win7 machine. Configured a VM to boot from the VHD. And now if I try to boot the VM it simply resets over and over.
Specifically I get the Oracle splash screen for a few seconds, then the window clears to black and resizes to some other dimension (maybe 640x480? or 800x600?) and then immediately resets to the Oracle splash screen. This cycles over and over (Oracle splash, resize to black screen, Oracle spash, resize to black screen, etc...) and doesn't get any farther.
I'm more than willing to roll up my sleeves and try to fix this but without any diagnostic or error message I can't figure out where to start.
Any suggestions? Thanks in advance.
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 6. Dec 2010, 01:32
by stefan.becker
Post the exact Guest Settings.
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 6. Dec 2010, 02:12
by gonewest
<?xml version="1.0"?>
Code: Select all
<VirtualBox xmlns="http://www.innotek.de/VirtualBox-settings" version="1.10-windows">
<Machine uuid="{52254dab-7625-431d-aa16-61a3b80bd67c}" name="WinXP" OSType="WindowsXP" lastStateChange="2010-12-06T00:01:54Z">
<ExtraData>
<ExtraDataItem name="GUI/InfoDlgState" value="400,450,normal"/>
<ExtraDataItem name="GUI/LastCloseAction" value="powerOff"/>
<ExtraDataItem name="GUI/LastGuestSizeHint" value="640,480"/>
<ExtraDataItem name="GUI/LastWindowPostion" value="347,231,640,523"/>
<ExtraDataItem name="GUI/MiniToolBarAlignment" value="bottom"/>
<ExtraDataItem name="GUI/SaveMountedAtRuntime" value="yes"/>
<ExtraDataItem name="GUI/ShowMiniToolBar" value="yes"/>
</ExtraData>
<Hardware version="2">
<CPU count="1" hotplug="false">
<HardwareVirtEx enabled="true" exclusive="false"/>
<HardwareVirtExNestedPaging enabled="true"/>
<HardwareVirtExVPID enabled="true"/>
<PAE enabled="false"/>
<HardwareVirtForce enabled="false"/>
</CPU>
<Memory RAMSize="1500" PageFusion="false"/>
<HID Pointing="PS2Mouse" Keyboard="PS2Keyboard"/>
<HPET enabled="false"/>
<Boot>
<Order position="1" device="HardDisk"/>
<Order position="2" device="Floppy"/>
<Order position="3" device="DVD"/>
<Order position="4" device="None"/>
</Boot>
<Display VRAMSize="128" monitorCount="1" accelerate3D="false" accelerate2DVideo="false"/>
<RemoteDisplay enabled="false" port="3389" authType="Null" authTimeout="5000">
<VideoChannel enabled="false" quality="75"/>
</RemoteDisplay>
<BIOS>
<ACPI enabled="true"/>
<IOAPIC enabled="false"/>
<Logo fadeIn="true" fadeOut="true" displayTime="0"/>
<BootMenu mode="MessageAndMenu"/>
<TimeOffset value="0"/>
<PXEDebug enabled="false"/>
</BIOS>
<USBController enabled="false" enabledEhci="true"/>
<Network>
<Adapter slot="0" enabled="true" MACAddress="0800270EE21C" cable="true" speed="0" type="Am79C973">
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</Adapter>
<Adapter slot="1" enabled="false" MACAddress="0800276F6A88" cable="true" speed="0" type="Am79C973">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="2" enabled="false" MACAddress="080027C3A4C0" cable="true" speed="0" type="Am79C973">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="3" enabled="false" MACAddress="0800277400F6" cable="true" speed="0" type="Am79C973">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="4" enabled="false" MACAddress="0800278BDDC6" cable="true" speed="0" type="Am79C973">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="5" enabled="false" MACAddress="080027DE5C3E" cable="true" speed="0" type="Am79C973">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="6" enabled="false" MACAddress="0800272D7E37" cable="true" speed="0" type="Am79C973">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
<Adapter slot="7" enabled="false" MACAddress="08002771FBE2" cable="true" speed="0" type="Am79C973">
<DisabledModes>
<NAT>
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
</NAT>
</DisabledModes>
</Adapter>
</Network>
<UART>
<Port slot="0" enabled="false" IOBase="0x3f8" IRQ="4" hostMode="Disconnected"/>
<Port slot="1" enabled="false" IOBase="0x2f8" IRQ="3" hostMode="Disconnected"/>
</UART>
<LPT>
<Port slot="0" enabled="false" IOBase="0x378" IRQ="4"/>
<Port slot="1" enabled="false" IOBase="0x378" IRQ="4"/>
</LPT>
<AudioAdapter controller="AC97" driver="DirectSound" enabled="true"/>
<RTC localOrUTC="local"/>
<SharedFolders/>
<Clipboard mode="Bidirectional"/>
<IO>
<IoCache enabled="true" size="5"/>
<IoBandwidth max="0"/>
</IO>
<Guest memoryBalloonSize="0"/>
<GuestProperties>
<GuestProperty name="/VirtualBox/HostInfo/GUI/LanguageID" value="en_US" timestamp="1291593713157648200" flags=""/>
</GuestProperties>
</Hardware>
<StorageControllers>
<StorageController name="IDE Controller" type="PIIX4" PortCount="2" useHostIOCache="true">
<AttachedDevice type="HardDisk" port="0" device="0">
<Image uuid="{b5c8c083-a00e-4f43-a717-2d53c1524a54}"/>
</AttachedDevice>
<AttachedDevice passthrough="false" type="DVD" port="1" device="0"/>
</StorageController>
</StorageControllers>
</Machine>
</VirtualBox>
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 6. Dec 2010, 13:17
by mpack
You are best to start again - Windows XP installations should be prepared before you try to migrate them. All on the source PC before imaging you should: First run the
MergeIDE utility, second you should open a command prompt window and type "disable processor" (this isn't as insane at it sounds - it will have no ill effect on the host PC). Finally you should go to "
My Computer | Properties | Advanced tab | Startup and Recover Settings Button" and unclick the "
Automatically restart" button. This last step ensures that even if you get another BSOD, you'll at least be able to see the exact error message.
Now you can image the source PC again, and try again to boot it. If it still fails to boot then try toggling the state of the "IO APIC" VM setting.
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 9. Dec 2010, 10:18
by gonewest
No luck.
- ran MergEIDE
- opened a command prompt and typed "disable processor" but it didn't recognize that command
- unclicked the automatically restart button
- reimaged the C: drive with disk2vhd
- copied the new vhd to my win7 machine
- attached the new vhd to my VM as IDE drive on primary master
- booted
and got exactly the same cyclical splash screen. Toggled the IO APIC setting, no difference.
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 9. Dec 2010, 17:23
by mpack
Well, I've already given you the extent of my knowledge, so I doubt I'll be able to help you further. The continuous reset feature is a mystery, because I've only ever seen that with a "hard" hardware error such as marginal power supply - which can't be the case with virtual hardware. If I didn't know better I would suspect that you haven't actually turned off the reset-on-error feature, and/or not mounted the correct VHD in the VM.
Re the "disable processor" command. AFAIK the "disable" command is available in all XP Pro installations, I don't know about XP Home. Your OP was not specific about which flavor of XP was used. An alternative is to simply delete intelppm.sys from the drivers folder on the source PC, or boot the VM up in safe mode and delete the file from the virtual image.
Which reminds me... does the VM boot up in safe mode?
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 12. Dec 2010, 19:03
by gonewest
Re: "disable processor" this is 32 bit XP Home SP3.
And I can't be mounting the wrong VHD because it's the only VHD on this particular host machine.
And no, the VM does not boot up in safe mode.
However, I let the VM cycle through the boot sequence for a while and I noticed the Windows boot loaded actually prints something on screen. Whatever it is it clears very quickly. I haven't been able to read the message fully, but I think it's referring to an invalid boot.ini. So I booted a separate Linux VM, attached the VHD, and mounted the Windows volume. Years ago I added a line to the boot.ini to dual boot a Linux partition. I removed that line from the boot.ini. But still no luck booting in safe mode.
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 13. Dec 2010, 12:14
by mpack
Well, at least you've proved that the VHD is ok - and that you had the opportunity to delete "intelppm.sys" from the drivers folder in the image, but you didn't mention doing so? And please be specific as possible, i.e. confirm that the symptoms are the same as before or perhaps it now hangs at a black screen. Don't say vague things like "but no luck".
The only new thing I can suggest is to boot the VM from the original (or compatible) setup CD and choose "Repair Installation". By compatible I mean that if the XP installation was an OEM XP Home, then the compatible CD must be the same. As you've already discovered, the various XP flavors (OEM vs Retail, Pro vs Home) have slight differences.
If you find the CD then you'll find that an ISO image of it is very convenient for mounting in a VM. That means you'd need a ISO imager app. ImgBurn is pretty good, and free.
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 19. Dec 2010, 07:31
by mkrumpe
What I have done may help. It's worked for me anyways. I've used this guys method to create a rawdisk vmdk pointing back to my main hard drive.
http://mesbalivernes.blogspot.com/2008/ ... sting.html
I've done this on a number of different PC's now, and so it proved helpful to be able to go back to the Windows Partition and view the Event Viewer to see the errors that the VirtualBox version in Linux was generating. I worked through the errors, and finally got it to work through Linux/Virtualbox entirely. Once I did that, I can create an image of the Windows Partion, and pull it now have a portable image, by using something similar to this guys method
http://jlorenzen.blogspot.com/2010/07/r ... using.html or as covered in the VirtualBox MigrateWindows suggestions.
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 19. Dec 2010, 11:42
by stefan.becker
I still have one idea: Have you checked PIIX3 instead of PIIX4 for the IDE Controller Type?
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 19. Dec 2010, 11:43
by stefan.becker
And another idea could be using the VMWARE Converter.
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 19. Dec 2010, 20:01
by gonewest
@mpack - I looked for intelppm.sys but couldn't find it anywhere in the windows folder or subordinate folders. I tried booting from a setup CD but as this is an OEM flavor of XP the recovery CD fails because the virtual hardware isn't recognized as belonging to that vendor.
@mkrumpe - interesting idea, thanks for the suggestion.
@stefan - I just tried PIIX3 but that also didn't work.
So throughout these suggestions the symptoms have remained exactly as originally reported - VM boots to an Oracle splash screen, then very briefly switches to a solid black window with a different size and aspect ratio, and then immediately returns to the Oracle splash screen, and repeats over and over and over ad infinitum. Sometimes in the black window I can make out some text that says "invalid boot.ini" but the screen disappears so quickly, changing back to the Oracle splash screen, that I don't think the full message even has a chance to print.
At this point I'm going to give up and do something else. It's just not worth the additional effort.
Re: can't get WinXP phys-to-virt conversion to boot
Posted: 22. Dec 2010, 15:57
by yves001
In virtualbox, with your vm selected
Configuration - Systeme - [X] Activate IO-APIC
Does-it work now ?
Yves