While a virtual machine created in this manner might run under any OS X, Linux, or Windows host, the Windows XP Mode EULA states in part:
You may install, use, access, display and run one copy of the Software in a single virtual machine on a single computer, such as a workstation, terminal or other device ("Workstation Computer"), that contains a licensed copy of Windows 7 Professional, Enterprise or Ultimate edition. Virtualization software is required to use the Software on the Workstation Computer ... If you are using the Software with a properly licensed copy of Windows 7 Professional, Enterprise or Ultimate, activation of the Software is not required.
Download Windows XP Mode (WindowsXPMode_en-us.exe | MD5: bf3726d684d3acb98185665123c9efcf)
Extract xpm from WindowsXPMode_en-us.exe with a file archiver like PeaZip Portable.
Add .rar extension to xpm
Extract VirtualXPVHD from xpm.rar
Add .vdi extension to VirtualXPVHD
Create a new machine in VirtualBox, naming it XPMODE and specifying VirtualXPVHD.vdi as the hard disk
Start the new VM. If the mouse / cursor doesn't respond during initial setup, either disable mouse integration (Input > uncheck "Mouse Integration") or navigate via the keyboard.
Once setup is complete, uninstall Virtual PC Integration Components from Add/Remove Control Panel
Install Guest Additions (Devices > Install Guest Additions...)
Shut down the virtual machine
Download pcbios.bin (MD5: 12ccdc652b30c6d1e307c6f7deff5d24) from VMLite* Create pcbios.bin using the updated instructions below, then copy it to a directory on the host computer (e.g., C:\vm\)
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" setextradata XPMODE "VBoxInternal/Devices/pcbios/0/Config/BiosRom" "c:\vm\pcbios.bin"
(This command will add the following line to XPMODE.vbox: <ExtraDataItem name="VBoxInternal/Devices/pcbios/0/Config/BiosRom" value="c:\vm\pcbios.bin"/>)
* Due to changes in VirtualBox 5.1's handling of APIC, VMLite's pcbios.bin causes a black screen on boot. However, Chris McCarron has kindly provided instructions for making your own 5.1-compatible pcbios.bin by extracting VirtualBox's BIOS and inserting the XP Mode product key into the SLIC table:
Launch any Windows VM running inside VirtualBox 5.1†
Download SLIC ToolKit V3.2 and run it to dump the BIOS: Memory Access > Dump > Export > set filename same as original (e.g., pcbios.bin) and save
Open pcbios.bin using a hex editor (Chris recommends HxD Version 22.214.171.124)
Go to offset 913A‡ (Search > Goto... or Ctrl+G in HxD) and paste (Edit > "Paste write" or Ctrl+B) the XP Mode product key ("Windows_Virtual_XP_F9161D8E7FCC11DDBFAA369856D89593") in hexadecimal over 913A to 916C:
† As noted in guides below, VirtualBox BIOS extraction can also be effected by booting the virtual machine from a live Linux disc and running: $ sudo head -c 1048576 /dev/mem | tail -c 65536 > pcbios.bin
Other BIOS dumping methods include using DEBUG.COM and copying from VBoxDD2.dll. VBoxDD2.dll can also be edited directly for use in portable mode.
Thanks to cclloyd9785 for the VirtualXPVHD extraction steps.
Meticulously detailed guide with copious screenshots: XP ModeをVirtualBoxで動かす
Making XP Mode more performant with VirtualBox: Windows Hell for the Linux Admin. XP Mode and Virtualbox.
Creating and activating a Windows XP virtual machine on OEM hardware: Spuštění existující instalace Windows XP OEM - GMC-Dell ve VirtualBoxu 4.2.4 na Xubuntu 12.04 bez nutnosti Aktivace
Switching XP from IDE to SATA mode for better performance:
Virtualbox and Windows OEM Guest explains how to activate via the host hardware's SLIC ACPI table or by simulating its BIOS
/windows | Oct 21, 2012
Subscribe or visit the archives.