Ape said:
I remember reading that.
ApeMan
Well, this project is just like the weather. The status changes every day
I finally figured out, why the recipe wasn't working. This
is a summary of what would be required.
Materials:
1) Netbook you want to put WiNXP on.
2) USB key 4GB or larger (uses about 3.3GB space).
First, the hard part, or rather, the part that was broken previously.
When you do an "MSDOS style" WinXP install, you offer a prepared partition
for the copying of files. The regular install method, using the WinXP CD,
offers to partition the disk for you. And this is a key difference between
the two procedures. In terms of getting the damn thing to boot, there
is a big difference between the two procedures. Using the CD to
do the installation, does much more of the grunt work. The MSDOS
method (or equivalent), is much less complete.
With the MSDOS method, the onus is on the user to prepare the hard drive.
The best method I can see at the moment, for preparing the netbook hard
drive in the appropriate manner, is to remove the drive from the netbook
and prepare it in another computer. This is a summary of the necessary conditions.
1) Assume drive is completely empty. Or, we're going to make it that way.
2) Connect drive to a desktop computer (either SATA port or IDE port as
appropriate).
3) Open Disk Management. Delete all the partitions that used to be on there.
4) Create a new partition. For my experiment, I made the partition 10GB,
of which about 3.3GB was used by the time I was finished. Pick any
size you feel is appropriate. For my own usage, the value would be 70GB or so.
5) The partition can be formatted FAT32. At least, that's what I used for
my experiment. I don't think it would hurt, if in fact you used NTFS.
Normally, the MSDOS method wouldn't allow FAT32 (i.e. if you used a
Win98 MSDOS floppy). But since we're using a Win7 environment for this
job, NTFS is supported.
6) OK, so we've created a 10GB partition and formatted it FAT32.
The boot flag must be set on the partition as well. If using an
application like "diskpart", this would be the "active" command,
applied to a selected partition. Only one partition on a drive,
is supposed to have the boot flag set, max. Physically, you
can actually set more than one, but that would be illogical.
7) In addition to being "active", the MBR (sector 0) must be valid.
Since the hard drive is slaved to a working desktop at the moment,
we use the WinXP "fixmbr" command, to load WinXP boot code in there.
If using the USB key with the Windows 7 command prompt, you
can use "bootsect /nt52 k:", on the assumption the partition letter
happened to be k:. The drive letter is intended to get the command,
"pointed at the correct disk". The command doesn't actually touch k:
in this case, but fiddles sector 0 of the drive that k: partition
lives on. So the fixmbr does have an equivalent command
you could do from the Windows 7 command prompt. Step (7) as a result,
isn't a killer issue.
8) This step is the hard part. And this one has defeated me before.
The new C: partition, needs a partition boot sector. Using the
WinXP CD and the recovery console (command prompt), you can do this
with a "fixboot c:" command. This writes a couple sectors near the
origin of C:, and this code is different than the code in the MBR.
Unfortunately, I don't know of a way to do this step, from the
Windows 7 command prompt (so it could be done with the USB key).
You may be able to copy the sectors from another WinXP installation,
but an article on the web indicates it would need to be hacked with
a hex editor, to "fix it up". It's not completely static information,
which is why there aren't a good selection of tools for the job.
My problem before, when I reported the method wasn't working, was
that I couldn't get the damn thing to boot, after the files were
copied. So what I tried was to do the "tried and true" CDROM installation
of WinXP to the completely blank hard drive. This sets up a FAT32
partition, marks it active with the boot flag, loads a valid MBR,
loads the partition boot sector, basically does all the disk stuff.
Now, when the installation was finished, I deleted all the files
from C:. But just deleting the files, doesn't ruin any of the
other ingredients (boot flag, MBR, PBR). (If I had formatted C:
at this point, I would have ruined it, and would have to start over
again. Once some procedure puts the partition boot sectors on,
you can't format it again.)
Now, using the empty C: partition, with it's valid infrastructure,
I again tried to use the USB key. And it worked. After the file
copy step, the hard drive booted and the thing took off.
So now, assuming step 8 got completed properly, we carry on.
9) Move hard drive back into the netbook.
10) Download X17-24208.iso from digitalriver or elsewhere.
11) Download Windows7-USB-DVD-tool.exe from microsoftstore.
12) Using the Windows7-USB-DVD-tool, copy the X17-24208.iso
to the USB key. This will erase the key, and prepare it.
13) Once the USB key is loaded, there will be about 2.5GB of files in place.
Now, copy the i386 folder from the WinXP CD to the USB key
at the top level. Now we're up around 3.3GB or so.
14) Now the USB key is ready. Remove the USB key from the desktop
and take it over to the netbook. Boot the USB key on the netbook.
15) Pretend to install WIndows 7 from the USB key. Click next.
On the next page, select "repair", as I mentioned before.
Once you get to the menu with the five items, select the
Windows 7 recovery console "command prompt".
16) At this point, your storage partitions are
c: (blank FAT32 on hard drive. This is the only hard drive partition
There are no files on c: yet)
d: This is the USB key, copied file area. d: has d:\i386
x: This is a RAM drive used by Microsoft, to boot the environment
Now, in the command prompt we can do
d:
cd \
cd i386
winnt32.exe /makelocalsource /syspart:c: /tempdrive:c: /s:. /debug4:debug.log
That will cause the WinXP installation file copy stage to start.
This should move pretty rapidly (works better than SMARTDRV by 10x!)
The installation seems to stop prematurely, and perhaps it simply doesn't
know how to request a reboot in this environment.
The "/debug4:debug.log" portion of the above command, is optional.
I used it, to see if the process was throwing any errors, and it wasn't.
So you don't really need that portion. One of the other portions,
is to copy as many files as possible to the hard drive, to make
it self sufficient. Note that the winnt32 doesn't have a "help"
option, and I eventually tracked down the command line options on
the web.
17) Now, exit the Windows 7 command prompt, and request a reboot from
the window underneath.
18) Now, on the next reboot, you can select booting from the netbook
hard drive, You don't need the USB key at this point. On my computer,
I enter the BIOS popup boot menu, and change USB peripherals at that
point, before selecting the boot device I want. When I select the
hard drive to boot from, the WinXP installation will continue, using
the 6000+ files it copied over. There will be two temporary directories
on C:, a small one with boot files, a large one containing the 6000
files for installation of the C:\WINDOWS folder.
19) Once all this stuff is finished, eventually you'll reboot, and will be
in the WinXP desktop.
So the missing bit here, is the "fixboot c:", to make c: support booting.
Above, I propose doing this by moving the laptop drive to a desktop, and
do the initial prep there. But if you're a glutton for punishment,
you could build BartPE, do pe2usb procedure, boot the USB key while BartPE
is on it, open a command prompt from BartPE, and issue the diskpart, fixmbr,
and fixboot commands from there. I did not test this idea, because frankly,
I'm exhausted
HTH,
Paul