Currently there are two reported working methods for installing Windows XP Professional on to an SDHC card for use on the EeePC. Method 1 as discussed by CorvetteZ0606 on the EeeUser Forums. Method 2 as discussed by DonkeyBeliever makes use of nLite for the bootable CD Creation and Acronis True Image Home v11 for the clone of the XP Install.
Also there is a simplification of both methods, so you don't have to bother about changing the driver-files of XP before installation using the freeware xp3eSD.
There is also a method reported in eeepcnews.de-forum which uses instead of Arconis and Winhex the Linux PartedMagic-CD and copys all files with the prompt to the SD-Card.
This first method of installing XP on to an SD or SDHC card was documented and tested by CorvetteZ0606, the first documented user to successfully boot XP from an SDHC on an EeePC. His methods are on the EeeUser Forums Related discussion thread and has been successfully replicated by several users on the forum.
You will need:
First, the BIOS needs set up. Here are my settings:
Advanced:
Boot:
After setting up your Eee BIOS, you need to go back to your other PC to make a custom XP install disk. I suggest using a rewritable in case you screw up the first time.
Discussion of this topic is in http://forum.eeeuser.com/viewtopic.php?id=1433
Making the disk: Note: this procedure was taken from http://www.ngine.de/index.jsp?pageid=4176). Thank them for inventing this!
1. Copy all files from your XP disk to a folder on your C drive.
2. Move these files from your C:\XP_disk\i386 folder to a separate temp dir:
TXTSETUP.SIF
DOSNET.INF
USB.IN_
USBPORT.IN_
USBSTOR.IN_
3. Install Microsoft cabsdk to the temp folder; cabsdk can be downloaded here
4. Open a command prompt. Type the following:
cabarc x USBSTOR.IN_
cabarc x USBPORT.IN_
cabarc x USB.IN_
Cabarc is located in the BIN directory created by CabSDK.
Cabarc does not support wildcards like '*' or '?'
5. Delete the following files:
USB.IN_
USBPORT.IN_
USBSTOR.IN_
6. Edit the files to match the following:
txtsetup.sif:
move the following lines from [InputDevicesSupport.Load] to [BootBusExtenders.Load]
usbehci = usbehci.sys
usbohci = usbohci.sys
usbuhci = usbuhci.sys
usbhub = usbhub.sys
usbstor = usbstor.sys
7. Move the following lines from [InputDevicesSupport] to [BootBusExtenders]
usbehci = “Enhanced Host Controller”,files.usbehci,usbehci
usbohci = “Open Host Controller”,files.usbohci,usbohci
usbuhci = “Universal Host Controller”,files.usbuhci,usbuhci
usbhub = “Generic USB Hub Driver”,files.usbhub,usbhub
usbstor = “USB Storage Class Driver”,files.usbstor,usbstor
8. Add the following line to the end of [HiveInfs.Fresh]
AddReg = usbboot.inf,usbservices
9. Add the following line to the beginning of [SourceDisksFiles]
usbboot.inf = 1,,,,,,_x,3,,3
10. Save file
11. Open Dosnet.inf
12. Change [Files] block so it looks like this:
[Files]
d1,usbboot.inf
d1,_default.pif
d1,12520437.cpx
d1,12520850.cpx
…
Question to author: original data looks like this: d1,usetup.exe,system32\smss.exe d1,ntdll.dll,system32\ntdll.dll Needs to be added at the bottom, or needs to be removed???
Answer from someone else: There are two [Files] sections. Try to find the one with a long listing of *.cpx files, and place it at the top of that one.
13. Save and close file
14. Open USB.inf
15. Change these two sections so they look like this:
16. Change the [StandardHub.AddService] and [CommonClassParent.AddService] sections:
[StandardHub.AddService]
DisplayName = %StandardHub.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbhub.sys
LoadOrderGroup = Boot Bus Extender
[CommonClassParent.AddService]
DisplayName = %GenericParent.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbccgp.sys
LoadOrderGroup = Boot Bus Extender
17. Save and close file.
Open usbport.inf:
Change the [EHCI.AddService], [OHCI.AddService] , [UHCI.AddService] and [ROOTHUB.AddService] sections:
[EHCI.AddService]
DisplayName = %EHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbehci.sys
LoadOrderGroup = Boot Bus Extender
[OHCI.AddService]
DisplayName = %OHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbohci.sys
LoadOrderGroup = Boot Bus Extender
[UHCI.AddService]
DisplayName = %UHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbuhci.sys
LoadOrderGroup = Boot Bus Extender
[ROOTHUB.AddService]
DisplayName = %ROOTHUB.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbhub.sys
LoadOrderGroup = Boot Bus Extender
18. Save and close file.
Open USBSTOR.inf:
Change / Add the lines in the [USBSTOR.AddService] section:
[USBSTOR.AddService]
DisplayName = %USBSTOR.SvcDesc%
ServiceType = 1
StartType = 0
Tag = 3
ErrorControl = 1
ServiceBinary = %12%\USBSTOR.SYS
LoadOrderGroup = Boot Bus Extender
19. Save and close.
20. Create a new file:
new file: USBBOOT.INF
Create a new file called USBBOOT.INF in the same directory as your other changed files, and put the following content into it:
[usbservices] HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","DisplayName",0x00000000,"USB Mass Storage Driver" HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ImagePath",0x00020000,"system32\DRIVERS\USBSTOR.SYS" HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Type",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","DisplayName",0x00000000,"USB 2.0 Enhanced Host Controller Miniport Driver" HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ImagePath",0x00020000,"system32\DRIVERS\usbehci.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Type",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","DisplayName",0x00000000,"USB2 Enabled Hub" HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ImagePath",0x00020000,"system32\DRIVERS\usbhub.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Type",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","DisplayName",0x00000000,"Microsoft USB Universal Host Controller Miniport Driver" HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ImagePath",0x00020000,"system32\DRIVERS\usbuhci.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Type",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","DisplayName",0x00000000,"Microsoft USB Open Host Controller Miniport Driver" HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ImagePath",0x00020000,"system32\DRIVERS\usbohci.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Type",0x00010001,1
Save and close file.
21. Repack the files:
At the command prompt in the directory where you changed the files, type the following:
cabarc n USB.IN_ usb.inf
cabarc n USBPORT.IN_ usbport.inf
cabarc n USBSTOR.IN_ usbstor.inf
22. Delete the files:
usb.inf
usbport.inf
usbstor.inf
23. Move the following files back into your i386 directory for windows XP:
USBBOOT.INF
DOSNET.INF
TXTSETUP.SIF
USB.IN_
USBPORT.IN_
USBSTOR.IN_
24. You now can proceed in two ways. You can either continue here, or move to shrinking your new image with nlite. For the latter please refer to the nlite wiki page. Note that you need to skip step 5 in that guide and use the folder where you modified all these files. After running nlite and burning an image, continue at step 30.
25. Unpack your Bootextract software to a temp directory.
If you are a member of codeproject.com you can download it here
Use BootExtract to read the bootsector from your XPSP1 CD. Here’s the text from when I did it:
C:\BootExtract\Release>BootExtract.exe F:
CD/DVD-BootImage-Extractor v1.0 © Jochen Kalmbach
http://blog.kalmbachnet.de/
Reading boot-record-volume from sector 0×11
Valid boot-record-volume found…
Reading boot-catalog from sector 0×13
PlatformID: 80×86
ID-String: Microsoft Corporation
Processing Initial/Default-Entry…
Boot-Indicator: Bootable
Emulation: No emulation
Load segment: 0×0000
Sector count: 4 (2048 bytes)
Starting sector: 0×142
Writing 'Drive-F.NoEmulation_Segment-0000_SecCount-4.bin'
C:\BootExtract\Release>
26. Start up Nero, put your blank disk in, and start a new bootable CD project.
27. On the boot tab, select the file that bootextract made for your bootsector. Enable Expert settings. Set “Kind of Emulation” to “No emulation” set load segment of sectors to 0000. Set number of loaded sectors to 4. (note, these settings should match what Bootextract reported. If your XP CD gives you different info, then use that info.)
28. Add the files you have on your hard drive to the CD project.
29. Burn!
30. Ok, so now you have the xp install CD. Put it in your external CD reader and attach it to your Eee. Do not insert your SDHC card. Boot the CD. At BIOS start, hit the ESC button to get the boot menu. Select the DVD drive and let it boot into windows setup. If it fails to boot, you did something wrong on your XP CD.
31. Proceed with Installing XP onto the 4GB internal flash drive with a FAT32 partition. Make sure you delete all four linux partitions. Durring install you’ll see a lot of windows about unregistered drivers. Just hit continue anyways on all of these windows.
32. When windows boots for the first time, do not install any drivers or anything. First, you need to turn off the swap file, system restore, and the screensaver.
33. Then stick your USB thumb drive into the EEE with the following programs on it: Winhex installer, Hitachi Microdrive Filter.
34. Next copy the files from your thumb drive to the desktop and then properly remove the thumb drive.
35. Unzip the microdrive files to a folder on the desktop. And Insert your SDHC Card into the EEE.
36. You need to then Hit Start go to run, and type regedit. Navigate to HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\USBSTOR\
Inside that you should find a directory called something like Disk&Ven_USB2.0&Prod_CardReader_SD0&Rev_0100. Open it. Inside that you should find another directory wich is just a bunch of numbers. Open it. In the right pane you should see a key called “Hardware ID” Right click on it, and select modify. It should list about 7 lines of text. Copy ONLY the first line to the clipboard. Hit cancel, close regedit.
37. Open cfadisk.inf in the directory you unzipped the microdrive filter to
38. Edit the section called [cfadisk_device] so that rather than containing 11 lines, just have one line. The line begins with: %MicroDrive_devdesc% = cfadisk_install,
After the comma, hit ctrl V to paste what you coppied from the registry into the file.
39.Save the file.
40. Go to Device manager. Under disk drives, you should see SiliconMotion and USB2.0 Card Reader. Right click on the card reader and click update driver. Direct the driver updater window to the Hitachi driver you just edited. It won’t detect the driver automatically, you have to specifty that your supplying the disk for the hardware and force it to use the driver. After the driver is updated, you need to reboot.
41. After rebooting, Install Winhex on your Eee.
42. Open Winhex, go to the tools menu and select disk tools and then clone disk.
43. For the source media, select HD0 from under “Physical Media”. Note this is not selected by default. Select HD1 Usb card reader for the destination under “physical media” not logical drives.
44. Make sure Copy entire medium is checked. Select Simultaneous IO. Set Start sector to 0. Hit ok. It will give you a help screen for some reason. Hit close. And then hit ok in the clone disk window again. This process will take about 20 minutes. Make sure you move your mouse every few minutes so that windows doesn’t think there’s no activity. Do not use the computer AT ALL while this is running. Afterwards, close the application.
45. Set your windows background to something different so that you can tell that you’re booting to the internal SSD instead of the SDHC.
46. Reboot your computer, hit ESC at bios so that you can select to boot from the card reader.
47. When you boot, you should see windows with your old background. (IE, you’ve booted from the SDHC.)
48. At this point you have windows running on the SDHC. I assume that you can use a partition tool to recover the 4GB that you lost on your SDHC by doing this and also you should be able to restore your Linux to the SSD. I haven’t tried either yet.
This second method of installing XP on to an SD or SDHC card was documented and tested by DonkeyBeliever. This method was derived from CorvetteZ0606's guide and uses an easier method to create a bootable image without the need of having to buy Nero or download additional software.
However this method makes use of Acronis True Image Home v11 to clone the install to the SD/SDHC/Flash Drive (Referred to from now on as a Flash Storage Device to minimize confusion), Acronis currently retails for a reasonable $35.99 on NewEgg and is an extremely useful tool that can be used to make images of any harddrives.
Acronis is preferred because it will automatically resize the partition to fit the destination (for example when moving a 4gb XP Pro Image to an 8gb Flash Storage Device, Acronis will automatically resize the partition to the full 8gb, conversely if you move a 4gb image to a 2gb Flash Storage Device Acronis will downsize the image to fit [assuming the actual data stored in the image was not larger than the destination]). Acronis also stores its images in a .TIB format which can be easily stored to allow for mulitple Flash Storage Devices to be made with the same Image (a 2gb image of XP takes less than 5 minutes to clone). A discussion forum is here http://forum.eeeuser.com/viewtopic.php?pid=90330#p90330
You will need:
I did not change any of the stock BIOS Settings, rather I used the EeePC's boot menu (hit the ESC key durring boot) to boot to the needed device.
If you've bought your Acronis in store or the boxed version on NewEgg the install CD can also act as a bootable recovery disk, if you opted to buy the slightly cheaper Digital Download you will need to create a Bootable Rescue Media Disk. Simply open Acronis and Select Tools→Create Bootable Rescue Media and follow the on screen prompts to create a bootable rescue disk, If you don't know what you're doing I'd suggest you stick with the defaults and don't play around with any of the additional options.
You can skip this step if you don't care about the original OS or you want to reinstall using the included Asus DVD, I'd made some pretty drastic changes to the OS that I didn't want to lose when I installed XP and that I wanted to quickly recover.
I did not want to lose Xandros OS just to get Windows XP on my Flash Storage Device, so the first step I did was make an Acronis Image of the harddrive. I'm going to assume you have some general working knowledge of Acronis if not heres a very very brief overview
With the External USB Optical Drive connected to your EeePC stick in the Acronis Bootable Rescue Media CD (see above) and hit ESC during boot to boot from the external Optical Drive. Select Acronis True Image Home to boot (Don't click the Privacy Clearer unless you want to kiss your current install goodbye).
After Acronis has booted select “Backup” and choose ALL of the partitions and choose backup, you will need to define a place to store the image, I had an external USB harddrive, however you can also setup a Windows File Share and shoot over the image via the wired Ethernet network, for more information consult the acronis users guide or drop me (DonkeyBeliever) a PM on the forums, however I will not answer questions that could have been answered if you googled them.
After you've backed up your current OS Setup you can proceed to create your XP installation disk and install XP.
If you want to recover your old OS install at any time, simply pop the Acronis bootable rescue media again and choose Recovery and point it to your .TIB of your old harddrive
NOTE This procedure is very similar to the one listed above, however I found using Nlite to handle the creation of the bootable CD easier to follow, I've also added a few hints for users along the guide. If someone (perhaps CorvetteZ0606) would like to perhaps merge these two parts to shorten the wiki feel free.
After setting up your Eee BIOS, you need to go back to your other PC to make a custom XP install disk. I'm a big fan of using CDR's just because they are cheap and generally work better with cheaper External Optical Drives, however YMMV.
Making the disk: Note: this procedure was taken from http://www.ngine.de/index.jsp?pageid=4176). Thank them for inventing this! Also thank you to everyone on the forums CorvetteZ0606, and everyone editing the wiki
1. Copy all files from your XP disk to a folder on your C drive. To do this we will use NLite, Open NLite and select Next, then point it to your XP Professional SP2 CD, next when it asks you for a location to save the files type “C:\xpsdhc” *Note you can use whatever path you want, but this guide will assume this path*
After Nlite has finished extracting the files minimize the application and continue with step 2
2. Download and Extract Microsoft cabsdk to the Desktop, Inside the extracted folder there is a folder named BIN, rename this folder to cabsdk and place it in the root of c:\ (thus resulting in c:\cabsdk); cabsdk can be downloaded here
3. Move these files from your C:\xpsdhc\i386 folder to c:\cabsdk
TXTSETUP.SIF
DOSNET.INF
USB.IN_
USBPORT.IN_
USBSTOR.IN_
4. Open a command prompt. (Start→Run→cmd) Type the following:
cd c:\cabsdk
cabarc x USBSTOR.IN_
cabarc x USBPORT.IN_
cabarc x USB.IN_
Leave the command prompt open for convenience. 5. Delete the following files:
USB.IN_
USBPORT.IN_
USBSTOR.IN_
6. Edit the files (*NOTE I recommend using Notepad2 (freeware) to edit files*) to match the following:
txtsetup.sif:
move the following lines from [InputDevicesSupport.Load] to [BootBusExtenders.Load]
usbehci = usbehci.sys
usbohci = usbohci.sys
usbuhci = usbuhci.sys
usbhub = usbhub.sys
usbstor = usbstor.sys
7. Move the following lines from [InputDevicesSupport] to [BootBusExtenders]
usbehci = “Enhanced Host Controller”,files.usbehci,usbehci
usbohci = “Open Host Controller”,files.usbohci,usbohci
usbuhci = “Universal Host Controller”,files.usbuhci,usbuhci
usbhub = “Generic USB Hub Driver”,files.usbhub,usbhub
usbstor = “USB Storage Class Driver”,files.usbstor,usbstor
8. Add the following line to the end of [HiveInfs.Fresh]
AddReg = usbboot.inf,usbservices
9. Add the following line to the beginning of [SourceDisksFiles]
usbboot.inf = 1,,,,,,_x,3,,3
10. Save file
11. Open Dosnet.inf
12. Change [Files] block so it looks like this:
[Files]
d1,usbboot.inf
d1,_default.pif
d1,12520437.cpx
d1,12520850.cpx
…
13. Save and close file
14. Open USB.inf
15. Change these two sections so they look like this:
16. Change the [StandardHub.AddService] and [CommonClassParent.AddService] sections:
[StandardHub.AddService]
DisplayName = %StandardHub.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbhub.sys
LoadOrderGroup = Boot Bus Extender
[CommonClassParent.AddService]
DisplayName = %GenericParent.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbccgp.sys
LoadOrderGroup = Boot Bus Extender
17. Save and close file.
Open usbport.inf:
Change the [EHCI.AddService], [OHCI.AddService] , [UHCI.AddService] and [ROOTHUB.AddService] sections:
[EHCI.AddService]
DisplayName = %EHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbehci.sys
LoadOrderGroup = Boot Bus Extender
[OHCI.AddService]
DisplayName = %OHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbohci.sys
LoadOrderGroup = Boot Bus Extender
[UHCI.AddService]
DisplayName = %UHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbuhci.sys
LoadOrderGroup = Boot Bus Extender
[ROOTHUB.AddService]
DisplayName = %ROOTHUB.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbhub.sys
LoadOrderGroup = Boot Bus Extender
18. Save and close file.
Open USBSTOR.inf:
Change / Add the lines in the [USBSTOR.AddService] section:
[USBSTOR.AddService]
DisplayName = %USBSTOR.SvcDesc%
ServiceType = 1
StartType = 0
Tag = 3
ErrorControl = 1
ServiceBinary = %12%\USBSTOR.SYS
LoadOrderGroup = Boot Bus Extender
19. Save and close.
20. Create a new file:
new file: USBBOOT.INF
Create a new file called USBBOOT.INF in the same directory as your other changed files, and put the following content into it:
[usbservices] HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","DisplayName",0x00000000,"USB Mass Storage Driver" HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ImagePath",0x00020000,"system32\DRIVERS\USBSTOR.SYS" HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Type",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","DisplayName",0x00000000,"USB 2.0 Enhanced Host Controller Miniport Driver" HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ImagePath",0x00020000,"system32\DRIVERS\usbehci.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Type",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","DisplayName",0x00000000,"USB2 Enabled Hub" HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ImagePath",0x00020000,"system32\DRIVERS\usbhub.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Type",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","DisplayName",0x00000000,"Microsoft USB Universal Host Controller Miniport Driver" HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ImagePath",0x00020000,"system32\DRIVERS\usbuhci.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Type",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","DisplayName",0x00000000,"Microsoft USB Open Host Controller Miniport Driver" HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ErrorControl",0x00010001,1 HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Group",0x00000000,"System Reserved" HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ImagePath",0x00020000,"system32\DRIVERS\usbohci.sys" HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Start",0x00010001,0 HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Type",0x00010001,1
21. Repack the files:
At the command prompt in the directory where you changed the files (c:\cabsdk), type the following:
cabarc n USB.IN_ usb.inf
cabarc n USBPORT.IN_ usbport.inf
cabarc n USBSTOR.IN_ usbstor.inf
22. Delete the files:
usb.inf
usbport.inf
usbstor.inf
23. Move the following files back into c:\xpsdhc\i386\:
USBBOOT.INF
DOSNET.INF
TXTSETUP.SIF
USB.IN_
USBPORT.IN_
USBSTOR.IN_
24. You now can proceed in two ways. You can either continue here, or move to shrinking your new image with nlite. Either way we need to maximize NLite (it should still be running in the background from Step 1). If you wish to strip down your XP install select options from the list as per the Wiki Guide, if you'd rather have an untouched XP install simply select the Create Bootable ISO Option and click next.
[INSERT IMAGE HERE]
25. I'm assuming you just want to make a bootable Image, simply click the Make ISO button and make your ISO, make sure to note where you've saved the image!
26. Burn the Image with CD Burning software that supports the ISO format (I used the freeware ImgBurn program)
27. Ok, so now you have the xp install CD. Put it in your external CD reader and attach it to your Eee. Do not insert your SDHC card. Boot the CD. At BIOS start, hit the ESC button to get the boot menu. Select the Optical drive and let it boot into windows setup. If it fails to boot, you did something wrong on your XP CD, although this is unlikely unless you've nlited something out, this guide is assuming your using an untouched image (minus the USB changes).
28. Proceed with Installing XP onto the 4GB internal flash drive with a FAT32 partition. It is important to use FAT32 to minimize the number of writes on the SSD and eventually the Flash Storage Device. Make sure you delete all four linux partitions, If you've backed them up as described above you can recover them at the end of the process. Durring install you’ll see a lot of windows about unregistered drivers, this is because we've modified them, however don't worry your system will still run stable. Just hit continue anyways on all of these windows.
29. When windows boots for the first time, do not install any drivers or anything. First, you need to turn off the swap file, system restore, and the screensaver. On my install this slimed down the XP install to 900mb small enough for my 2gb SD card.
30. Now we need to shutdown the EeePC and insert our Acronis Bootable Recovery Media that was discussed above, once again boot into Acronis True Image Home.
31. This is the tricky part, I couldn't seem to get Acronis True Image home to recognize my SD Card as a Harddrive, rather it decided it was a removable device, thus I had to use this weird work around. Basically we need to make an Acronis TIB of the SSD in the EeePC, and then transfer it to the PC we've been using to create the XP install disk. I am assuming that you've installed True Image Home on this machine also. There are a number of ways to get the image over there (USB Harddrive, Network, or heck even loading it on the SD card you're about to install windows on [assuming its big enough]). Again I'm assuming you know how to use Acronis, if not follow this very vague guide (and search google, its the same process).
- Select Backup
- Select the SSD thats in the EeePC, assuming you don't have any USB harddrives hooked up it should be the only harddisk image, make sure that you take the entire image including the MBR or you're boned
- Back this image up to a source that you can access on your main PC that you have Acronis True Image Home v11 installed on
32. Now on your main PC where you have True Image Home installed, insert the Flash Storage Device you want to have windows on and then open up Acronis True Image Home v11. Select Restore, then select the .TIB image that you had made in step 31 and have it restore to the Flash Storage Device, and follow the on screen insturctions. After the recovery is done insert the Flash Storage Device into your EeePC
33. While you wait for Acronis to clone the TIB to the Flash Storage Device, Set your windows background on the EeePC to something different so that you can tell that you’re booting to the internal SSD instead of the SDHC.
34. Reboot your computer, hit ESC at bios so that you can select to boot from the Flash Storage Device.
35. When you boot, you should see windows with your old background. (IE, you’ve booted from the Flash Storage Device.)
36. At this point you have windows running on the SDHC. Since you used Acronis you should see the full space of your Flash Storage Device available to you, If you were like me and made an Acronis image of the original install of Xandros you can now safely restore that image using Acronis and be running both Linux and Windows on your EeePC
I suggest that you keep those Acronis .TIB images laying around just incase something ever happens, I can't tell you how many times Acronis has saved me at work, it sure beats doing a full reinstall. One you've used it, you'll always want to make an Acronis image of any box you do a clean install on.
Good luck!
You will need:
After this tutorial you have to continue with one of the 2 methods, so you have to have additional programs. I used method 1.
You can choose to set up the bios first or, as I did, after I really wanted to boot from the SD-Card.
Boot:
I diddn't change any other things in the bios.
1. Copy all files from the Windows CD to a folder on the PC. I used nLite for that.
2. On this files I used xp3eSD, which created an iso-file.
3. Next I used 7-zip to extract all files from the iso to another folder.
4. Afterwards I slimmed down Windows with the tutorial here in the wiki and created an iso with nLite
5. This iso has to be burned on a CD.
That's all for the simplification, next you have to contiune with step 30 from method 1 or step 27 from method 2.
Annotation:
I don't know if it's normal, but my XP takes a long time to start. I see the Windows-logo and next a black screen. This last about 5 Minutes. I can not say, if it's a problem with this turorial or my configuration. Afterwards windows runs good.
Have fun,
LeChuck