2013-01-26

================================================================================

*** IMG_XP package ***

Make XP and Win7 Universal Image files booting with Grub4dos Menu on HDD or USB

Download  - IMG_XP

In Win7 OS Set User Account Control Off and Reboot

First Prepare XP Setup ISO file with integrated UpdatePack and DriverPacks as described below in section 2.
and Copy XP Setup ISO file to the Target boot drive of your computer.

1. VHD_XP_Create.exe - Make VHD file and Install XP in VHD by using Grub4dos Boot Menu on HDD



0. Run IMG_XP.exe and Extract to simple path on your Local Harddisk - gives folder IMG_XP
1. Use IMX_XPmakebtimdiskinst.exe to Install ImDisk driver (if not present)
- Imdisk is used by USB_XP_Fix.exe to mount VHD and HDD Image files in a virtual drive
2. Run VHD_XP_Create.exe to create XP-1.vhd and Grub4dos Boot Menu for Install of XP in VHD
- Select Local Harddisk as Target drive and select XP Setup ISO file located in root of Target Drive
3. Reboot and in Grub4dos menu select Start XP Setup on XP-1.vhd - WinVBlock driver
- XP-1.vhd has already NTFS compressed format, so you should NOT format at Setup, just keep settings
- Format XP-1.img inside XP Setup cannot be used, it results in corrupt message
4. After Reboot select Continue XP Setup and then Reboot to Start XP from Image XP-1.vhd
5. Reduce size and improve settings as usual and Install missing Drivers and Install Standard Controllers for IDE and USB
- Reduce size to get rid of pagefile.sys and hiberfil.sys via:
- right click My Computer > select Properties > Advanced > Change Virtual memory > select No pagefile and Set
- right click on Desktop > Screen Protection > Energy > Uncheck Sleep settings to get rid of hiberfil.sys
- Set System Restore and Windows Update Off and delete 350 MB of dllcache folder via cmd SFC /purgecache (or Run PURGE_DLLCACHE.BAT)
- In Device Manager instead of Hardware specific Controllers you must Install Standard Controllers for IDE and USB
- For Universal XP don't Install the Video driver. You can Uninstall the Video driver so that you still have high resolution on any hardware.
- Set Screen Resolution to 1024 x 768 useful on all monitors (right click on Desktop)
6. USBoot DriveGuard driver is probably unneeded to prevent BSOD 7B since recent USB_XP_Fix.exe will Fix XP and Install waitbt.sys driver.
Skip this step Or Install USBoot DriveGuard driver ubdrvgd.sys to prevent BSOD 7B in booting from USB
- Download USBoot from http://usboot.org/tiki-index.php
- Extract the package, right click on ubdrvgd.inf, click on Install
- the XP boot message - DriveGuard Initialization failed - has No effect, the driver works OK
- More Info http://reboot.pro/98...800#entry160006
- DriveGuard driver ubdrvgd.sys is installed as LowerFilters between the main driver and the hardware
7. Connect USB-HDD where you want to use XP Image, so that USB-HDD settings are known in XP registry, and Reboot
8. Reboot with other OS and copy XP-1.vhd to bootable USB-drive and create entry in Grub4dos menu.lst
- BOOT_USB.exe can be used to make USB-drive bootable with Grub4dos Menu - http://www.911cd.net...showtopic=24424
- BOOT_IMG.exe can be used to make Grub4dos Boot Menu on existing bootable drives
9. Run USB_XP_Fix.exe and Select your XP-1.vhd file on USB-drive and click GO
10. Reboot from USB on the same computer and Select Boot XP Image - XP-1.vhd - WinVBlock FILEDISK
11. Reboot from USB on other computers and Select Boot XP Image - XP-1.vhd - WinVBlock FILEDISK - to make Universal

When booting on other unknown machine, then XP will auto adjust itself in about 3 min and install the required drivers.
In this learning process, the registry gets extra info on how to boot on that machine and will use it next time and so XP becomes Universal.
This process requires that you have the WINDOWSDriverPacks folder of 135 MB available with Chipset + Processor + MassStorage + LAN drivers
and that DevicePath in the registry was properly set by the Keep The Drivers Option KTD (see below and in Picture).

If you have Installed XP on AMD machine and then boot XP Image file first time on Intel machine,
then intelppm Service will have Start=1 value, which will give BSOD 7 E when booting on AMD machine.
This problem can be overcome by running the intelppm_Start3.reg registry tweak from POST_FIX folder.
In that case intelppm Service will get Start=3 and everything will be OK all the time for AMD and Intel.

Thanks to Sha0 for making WinVBlock driver - http://reboot.pro/8168/
Thanks to cdob for making usb_xp_init.cmd - http://www.911cd.net...o...22473&st=37
Thanks to sara - pmedia for her tutorial - http://reboot.pro/13731/

More Info on direct Install of XP by using grub4dos menu and WinVBlock or FiraDisk driver:
cdob - Install XP from a ISO file No RAM disk - http://www.msfn.org/...rom-a-iso-file/
Doodoo - http://reboot.pro/13...385#entry122385
sara - pnedia - http://reboot.pro/13731/
wimb - http://www.911cd.net...showtopic=23553
karyonix - http://reboot.pro/88...737#entry121737
karyonix - http://reboot.pro/13967/

In case of a hidden boot partition containing Boot folder and file bootmgr of Windows 7,
then Grub4dos Boot menu for Install of XP in VHD cannot be made by this means.
However, in most other cases the Grub4dos boot menu is created,
e.g. on partition booting with XP or on partition booting direct with Windows 7 OS or on partition booting simply with Grub4dos.

After Install of XP then you need to fix XP-1.vhd for booting from USB-drive by using USB_XP_Fix.exe
The fix will prevent BSOD 7B and will help to allow the XP VHD to boot on various hardware and so become Universal.



menu.lst on USB drive



================================================================================

2. How to prepare XP Setup Source ? - Prepare XP Setup ISO file with integrated UpdatePack and DriverPacks

Take care that your XPSOURCE Folder is located on your Harddisk in a simple Path without SPACES.
Copy the Content of your Windows XP Setup CD to your XPSOURCE Folder on Harddisk

First Integrate ServicePack SP3 in your XP-SP2 Source (don't use here nLite).
http://www.helpwithw...ice_Pack_3.html
Download from - http://www.microsoft...i...ng=en&id=24

In Command Window use for English version and XPSOURCE folder on drive E:

Siginet's RyanVM Integrator 1.6 can then be used to Integrate Windows UpdatePacks in the XP-Source.
http://integrator.si...ex.php?download
Download preferred version RVM Integrator 1.6.1 Beta 2.1 - http://www.mediafire.com/?ynajonymmnz

Windows XP UpdatePacks and Addons:
http://www.ryanvm.net/msfn/
http://www.ryanvm.ne...tepack-sp3.html
http://integrator.si...ndex.php?addons
http://www.ryanvm.net/forum/

Work according to Section 2 in - http://www.911cd.net...showtopic=21883

For Install of XP on a modern system with SATA Drives it is needed to use DPsBase.exe
for Integrating in your XPSOURCE DriverPack Massstorage with TXT Mode Enabled.
http://driverpacks.net/downloads
In that case a lot of Extra RAID SCSI and SATA Drivers (about 120 extra) are Integrated which appear in the
XP Setup BootFolder $WIN_NT$.~BT on Install-Drive and can prevent a lot of XP Install Boot Problems.
Use DPsBase.exe to Integrate DriverPacks Chipset + Processor + MassStorage + LAN + WLAN DriverPacks
which will then be located in OEM Folder in your XPSOURCE folder
Always first use RyanVM Integrator and then use DPsBase to Improve your XP-Source
DPsBase makes presetup.cmd in folder I386 and changes the I386winnt.sif file for use of DriverPacks

presetup.cmd in folder I386 will start decompression of DriverPacks located in OEM folder
at the beginning of GUI-mode of XP Setup, which does NOT take to much time for the 5 DriverPacks

You should select to Keep The Drivers for Chipset + Processor + MassStorage + LAN
Then WINDOWSDriverPacks is about 135 MB which is acceptable and provides a lot of extra driver support
which is useful to make XP Universal and adapt easily to very different hardware.
In that case the DevicePath is set accordingly in key
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion
so that XP can automatically make use of these drivers for adjusting to New Hardware

When you don't use nLite, you can copy the supplied $OEM$ folder to your XP Source folder
Change $OEM$ folder to your needs for UserAccounts and Registry Tweaks and Adding Drivers
CMDLINES.TXT is used for making UserAccounts and install of Registry Tweaks at T-12
Info see: http://unattended.ms.../unattended.xp/

Use DriverForge.v4.5.4.exe to Install from C:Drivers at T-9 of GUI XP Setup (just for the last Reboot).
DriverForge.v4.5.4.exe was made by kickarse http://www.msfn.org/...howtopic=110783
At end of TXT-mode XP Setup the folder $OEM$$1Drivers is copied to C:Drivers
and $OEM$$1InstallDriverForge.v4.5.4.exe is copied to C:Install
For Auto Use of DriverForge at T-9 add uncompressed driver folders in $OEM$$1Drivers
and Uncomment two rules by removing ; in winnt.sif file copied from winnt_sif to your I386 folder
This is very useful for Install of your well known Audio and Video driver during GUI-mode of XP Setup.

PnP Drivers specified in winnt.sif can be added to $OEM$$1Drivers
http://unattended.ms...xp/view/web/34/
TEXTMODE Drivers defined in winnt.sif and located in $OEM$TEXTMODE folder of the XP Source
can be used instead of using F6 floppy for MassStorage Drivers.
The content of the $OEM$TEXTMODE folder is copied to XP Setup BootFolder $WIN_NT$.~BT$OEM$
See cdob and allanf in http://www.boot-land...?...5306&st=180

Smart Driver Backup 2.12 of Jaque is very useful to Backup your drivers before install of XP
http://www.911cd.net...showtopic=20555

================================================================================

How to make XP Setup ISO File ?

- Use BBIE (see below) or Isobuster to Extract Boot Image bootsect.bin from Original bootable XP Setup CD
bbie will make image1.bin that you can copy as bootsect.bin to XP Setup source folder
- Reduce Size of XP Setup Source folder (if needed to fit on CD then remove folders LANG  WIN9XMIG  WIN9XUPG)
- Use ImgBurn and bootsect.bin to make Bootable CD

In detail:
1. Remove 3 folders LANG  WIN9XMIG  WIN9XUPG - reduction in size = 135 MB
2. Run ImgBurn - Portable Tool in PStart Menu - IMG_XPMULTIPStartProgsImgBurn
- Select Write files/folders to disc
- Output - Select Image File
- Browse Source folder and Select your XP Setup Source folder
- Browse Destination file - Give Name e.g. XP-Setup.iso
- Labels ISO 9660 - Give Name e.g. XP-Setup
- Advanced Restrictions - ISO9660 - Select Level X and DOS CharSet with 4x Checkbox On (allow ...)
- Bootable Disc - Make Image bootable - Checkbox On - Browse Boot Image - Select bootsect.bin file
- Bootable Disc - Emulation Type = None
Load Segment = 07C0
Sectors to Load = 4

BOOT_USBmakebt>bbie M:XP3_1201.iso
BBIE - Bart's Boot Image Extractor v1.0, © 2001, Bart Lagerweij
http://www.nu2.nu
will make BOOT_USBmakebtimage1.bin that you can rename as bootsect.bin

================================================================================

POST_FIX Tools - Readme

You can use DriverForge.v4.5.4.exe to Install any missing driver (e.g. video audio or WLAN)
by selecting Path to Uncompressed Driver Files e.g. S:D
In that case DevicePath in HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion
is set to what DriverForge needs.
It means that any previous settings are lost e.g. for making use of the KTP C:WINDOWSDriverPacks store.
If you have selected in DPsBase.exe to Keep The Drivers by using KTP Option,
then after using DriverForge you need to run DevicePath_Reset_KTP.reg to Reset DevicePath to the KTD settings.

If you have Installed XP on AMD machine and then boot XP Image file on Intel machine,
then intelppm Service will have Start=1 value, which will give BSOD 7 E when booting on AMD machine.
This problem can be overcome by running the intelppm_Start3.reg registry tweak.
In that case intelppm Service will get Start=3 and everything will be OK for AMD and Intel.

Post Install Add DriverPacks:
1. Boot with Universal XP Image file
2. Extract 3 DriverPacks to C: e.g. Chipset + CPU + MassStorage - will give C:D folder
3. Use R-mouse to Open command prompt at C:POST_FIX and run command

DevicePath in HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion
is set to subfolders of C:D

================================================================================

Portable Windows HD Image files booting from USB

================================================================================

The Apps IMG_XP_Compact.exe and VHD_W7_Compact.exe of IMG_XP package
can be used to make Portable Windows HD Image files booting with Grub4dos Menu on HDD or USB

These Virtual Harddisk files are of type IMG or VHD and require WinVBlock or FiraDisk driver to boot them as FILEDISK or as RAMDISK
The Ultimate Windows 7 VHD files make use of Microsoft VHD HBA driver which allows to boot them as FILEDISK
Additinally Installed Programs and Drivers and Settings are remembered in FILEDISK just like in normal Windows OS

Source can be drive where Windows is installed or full XP Image file Or Windows 7 VHD file
In case of using existing Installed XP as source, it is handy to first create a NEW user in XP,
so that this NEW user folder is small in size e.g. only contains very few Documents and Pictures.

Also Install either WinVBlock or FiraDisk driver:
- Install WinVBlock driver see - IMG_XPHelp_InfoWinVBlock_Install.txt
- Install FiraDisk driver with R-mouse on firadisk.inf in IMG_XPmakebtfiradisk-driver- folder

Reduce size and connect USB-harddisk as described in point 5 and 6 given above
to get rid of pagefile.sys and hiberfil.sys and to get USB-HDD settings are known in XP registry

After booting with other OS e.g. Portable 7 PE, then you can run IMG_XP_Compact.exe and Select the NEW user
to make XP Image file that can boot from grub4dos menu on HDD or USB

Mini XP = OS Size 400 MB - including IE8 + WLAN + Audio + Printer + 7-Zip + ImDisk and all installed drivers
Port XP = OS Size 600 MB - extra system32 complete + Windows Media Player - Multimedia support

In case of Mini XP then external VLC portable player can be used for MultiMedia support

Advised size of XP Image file is 1.0 GB and for Windows 7 VHD file is 1.6 GB

==

================================================================================

Boot Win7 VHD Image file from USB

- Direct Install Windows 7 in a VHD file on local harddisk created by WinNTSetup2_x86.exe with Ctrl + Shift + V
- Copy Win7 VHD file to USB and use USB_W7_Fix.exe to fix for booting from USB-drive
- Make Boot Manager menu on USB for Win7 VHD Image file

Thanks to JFX for creating the very handy WinNTSetup2 tool to Install Windows 2k/XP/2003/Vista/7 x86/x64

Info in folder IMG_XPWinNTSetup2_x86_x64 and here http://www.msfn.org/...-winntsetup-v2/

WARNING: Boot menu of your computer and your USB-drive will change needed for booting with Win7 VHD file.
WinNTSetup2_x86.exe will create or change Boot Manager menu (folder Boot and file bootmgr)

Details of Procedure to create Win7 VHD file for booting from USB-drive
1. Boot with Windows 7 or 7PE
2. Use R-mouse menu to Mount Windows 7 Setup ISO file in ImDisk virtual drive (if needed first Install imdiskinst.exe)
3. Run WinNTSetup2_x86.exe and use Ctrl + Shift + V to create Win7 VHD file on local Harddisk (or use Disk Management)
4. In WinNTSetup2_x86.exe adjust Windows 7 Tweaks and Select install.wim and Bootdrive and your attached Win7 VHD
Select all System-Only Tweaks except Turn OFF USB and select other tweaks that you like
Select Checkbox to Mount Installation drive as C:
5. Use Setup to prepare Win7 VHD file and Boot drive menu and Reboot to Start Install of Windows 7
6. Reboot 2x with Win7 VHD to finish Install of Windows 7 in VHD
7. Check that System Protection and UserAccount Control are set Off and Reduce Size
If needed e.g. Change settings to get rid of pagefile.sys and hiberfil.sys
No pagefile.sys - Run as Administrator in cmd window: sysdm.cpl
and Change Advanced Performance Virtual memory Settings - Set to use No paging file
No hiberfil.sys - Run as Administrator in cmd window: powercfg.exe -H off
- Install Missing Drivers and Install Standard Controllers for IDE and USB and VGA
- In Device Manager instead of Hardware specific Controllers you must Install Standard Controllers for IDE and USB and Install Standard VGA Adapter
Install anything you need like ImDisk and 7Zip and connect your USB-harddisk to Update registry
Use Computer Properties and Set System Protection for Win7 VHD drive Off and Reboot Win7 VHD
8. Reboot with Windows 7 or 7 PE
9. Copy Win7 VHD to bootable USB-drive and use Disk Management to Attach Win 7 VHD located on USB
10. Open cmd prompt and create Boot Manager menu on USB-drive by running

where N: is your attached Win7 VHD and P: is your USB-drive

11. In Disk Management Detach Win7 VHD

12. If your USB-drive was NOT formatted in Windows 7 OS, then you need to fix the Bootsector of USB-drive P: with

13. Run USB_W7_Fix.exe of IMG_XP package to fix the registry of Win7 VHD file on USB
14. Reboot with Win7 VHD from USB

Instead of points 9-13 you can make use of VHD_W7_Compact.exe to make Portable Windows 7 VHD file of 2 GB booting from USB-harddisk.

Procedure for booting with 1.6 GB Portable Windows 7 VHD file on USB-harddisk
Step 1. - Direct Install Windows 7 in a 10 GB VHD file on local harddisk and created by WinNTSetup2_x86.exe with Ctrl + Shift + V
Step 2. - Run VHD_W7_Compact.exe to Copy Win7 VHD content in 10 min to New VHD file of Reduced Size on USB-harddisk
Step 3. - Reboot with 1.6 GB Win7 VHD file from USB

On Running VHD_W7_Compact.exe you need to Select your User Folder in folder Users of the Win7 VHD Source file
The program takes care of Attach and Detach of VHD files by using diskpart.exe of your Windows 7 or 7 PE Operating System.

The program is suitable for 32-bits Windows 7 and was tested with en-US Ultimate version,
but may work with other distributions as well.

VHD_W7_Compact.exe - makes 2.0 GB Win7 VHD file for booting from USB-harddisk

=

================================================================================

4. Universal Image Compact and Restore - Details

- IMG_XP_Restore.exe for Restore on USB drive takes care of:
USB Services get "Group"="Boot Bus Extender" and Start=0 to prevent BSOD 7B
UsbBootWatcher.exe and UsbBootWatcher.conf are copied to USB-HDDWINDOWSsystem32 directory.
Thanks to marv and cdob for describing effect of Driver Group and Start value to prevent BSOD 7B in booting XP from USB.
http://www.911cd.net...showtopic=22473

IMG_XPmakebtregistry_tweaksHKLM_systemdst_USB_XP.reg - Added to SYSTEM registry for Restore on USB drive

IMG_XPmakebtregistry_tweaksHKLM_systemdst_BOOT_HDD.reg - Added to SYSTEM registry for Restore on HDD drive

In all cases of Restore the DiskSignature 4 bytes in MBR at hex offset 1B8 must be taken into account:
Value of DosDevicesC: in HKEY_LOCAL_MACHINESYSTEMMountedDevices on Target Drive is set according to DiskSignature.
All other values in HKEY_LOCAL_MACHINESYSTEMMountedDevices on Target Drive are deleted.
More Info on DiskSignature http://thestarman.pc.../mbr/index.html

User can add extra registry tweaks
to HKLM_systemdst_Add.reg or HKLM_softwaredst_Add.reg in IMG_XPmakebtregistry_tweaks folder,
which will be added in Restore to the WINDOWSsystem32configSYSTEM and the SOFTWARE registry files on Target drive.

IMG_XPmakebtregistry_tweaksHKLM_systemdst_Add_XP.reg -  used by HKLM System CheckBox

IMG_XPmakebtregistry_tweaksHKLM_softwaredst_Add.reg -  used by HKLM Software CheckBox

After Install of Windows 7 on system with BIOS SATA = IDE Controller, then the msahci Service has Start = 3.
Subsequent booting from USB-HD with msahci Start=3 on system with BIOS SATA = AHCI controller results in BSOD 7B.
The msahci tweak has been added to HKLM_systemdst_iaStor.reg used by Add iaStor - AHCI CheckBox.
This is needed to prevent BSOD 7B in Restore of Windows 7 for support of BIOS with SATA = AHCI controller setting.
http://support.micro...kb/922976/en-us

Adding iaStor driver prevents BSOD 7B on booting from USB-HDD on other computer systems.
Copy iaStor.sys to  C:WINDOWSsystem32drivers and iaStor.inf + iaAHCI.inf to C:WINDOWSinf
Copy iaStor.cat + iaAHCI.cat to your CatRoot folder C:WINDOWSsystem32CatRoot{F750E6C3-38EE-11D1-85E5-00C04FC295EE}

download the latest version of the Intel Matrix Storage Manager from  http://downloadcente...i...01&lang=eng
More Info on adding iaStor driver to SYSTEM registry - http://forums.pcper....ad.php?t=444831
http://www.msfn.org/...xp-t109450.html

IMG_XP_Restore.exe has Add iaStor - AHCI CheckBox to take care of the above and
IMG_XPmakebtregistry_tweaksHKLM_systemdst_iaStor.reg registry tweak is added to the WINDOWSsystem32configSYSTEM registry file on Target drive
so that HKEY_LOCAL_MACHINESYSTEMControlSet001ControlCriticalDeviceDatabase contains the required PCI device values.

IMG_XPmakebtregistry_tweaksHKLM_systemdst_iaStor.reg - used by Add iaStor - AHCI CheckBox

Besides the already existing option to Add iaStor Driver, there is additional possibility to add other drivers
by dropping them previously in the corresponding IMG_XPmakebtdrivers folder.

Registry Tweaks used for Win7 instead of those for XP are
HKLM_systemdst_Add_W7.reg and HKLM_systemdst_USB_W7.reg

Additionally for Install of Windows 7 on USB-HDD primary partition with DriveLetter U:

On booting from USB this USB-HDD partition will automatically get drive letter C:
http://www.multiboot...uk/cloning.html

For making correct Windows 7 entry in BCD store of BOOTMGR menu it is essential that Windows 7 was set as the default option.

================================================================================

5. Solutions to prevent BSOD 7B - Run USB_XP_Fix.exe

It is often possible to prevent BSOD 7B without using any delay driver like waitbt.sys or DriveGuard ubdrvgd.sys driver.

USB_XP_Fix.exe was improved such that the CriticalDeviceDatabase registry has all entries for IDE Controller and USB Controller Services
and that all IDE and USB Controller drivers if missing are extracted previously from the XP driver.cab file.

The CriticalDeviceDatabase registry of Windows 7 has much more entries as compared to XP.
IDE ATAATAPI Controller has ClassGuid={4D36E96A-E325-11CE-BFC1-08002BE10318} with entries in mshdc.inf
USB Controller has ClassGUID={36FC9E60-C465-11CF-8056-444553540000} with entries in usbport.inf and usbstor.inf and usb.inf

CriticalDeviceDatabase registry of XP is now improved and comparable with Windows 7 by adding
all entries for Control Class {4D36E96A-E325-11CE-BFC1-08002BE10318} and {36FC9E60-C465-11CF-8056-444553540000}
These CDDB entries arre added in folder makebtregistry_tweaks in files HKLM_systemdst_Add_XP.reg and HKLM_systemdst_USB_XP.reg

To be Universal for a lot of hardware it is also necessary to have the WINDOWSDriverPacks folder available with Chipset + Processor + MassStorage drivers.
In that way you provide support for another important Controller Class, the SCSI- en RAID-controllers
Class=SCSIAdapter has ClassGUID={4D36E97B-E325-11CE-BFC1-08002BE10318}

So there are two measures that make XP behave more like Windows 7 and will allow booting on all hardware:
1. improved CriticalDeviceDatabase registry with IDE Controller and USB Controller entries
combined with the built in IDE Controller drivers made readily available (unpacked from driver.cab)
2.  WINDOWSDriverPacks store with subfolder M (MassStorage) for support for SCSI- en RAID-controllers

USB_XP_Fix.exe has Checkboxes to add Intel iaStor.sys driver and AMD ahcix86.sys AHCI driver with their CriticalDeviceDatabase entries
Intel iaStor.sys   is IDE Controller (iaAHCI.inf for Intel AHCI Controller) with entries ending on cc_0106
iaStor.sys can be RAID Controller (iaStor.inf for Intel RAID Controller) with entries ending on cc_0104

In general one can say that missing (or slow access to) Controller drivers are the reason for BSOD 7B
IDE ATAATAPI Controller has ClassGuid={4D36E96A-E325-11CE-BFC1-08002BE10318} with entries in mshdc.inf
USB Controller has ClassGUID={36FC9E60-C465-11CF-8056-444553540000} with entries in usbport.inf and usbstor.inf and usb.inf
SCSI- en RAID-controllers  has ClassGUID={4D36E97B-E325-11CE-BFC1-08002BE10318} mainly supported via MassStorage DriverPack

In case of any boot problem, then always run SaveHwids.exe and post the Hwids of your machine,
so that we can try to solve the boot problem by adding CriticalDeviceDatabase registry entries combined with suitable drivers.

If you did not use the advised Keep The Drivers Option KTD when integrating DriverPacks in your XP Setup Source with DPsBase.exe
then you can later add to your Image the WINDOWSDriverPacks folder with subfolders C and CPU and M of extracted DriverPacks.
Also after using DriverForge then any previous settings are lost e.g. for making use of the KTP C:WINDOWSDriverPacks store.
After booting with XP Image you can run POST_FIXDevicePath_Reset_KTP.reg to Reset DevicePath to the KTD settings
Additionally the Environment value of KTD must be set as C:WINDOWSDriverPacks by using KTD_C_WIN_DP.reg

Alternatively you can use this method:

Post Install Add DriverPacks:
1. Boot with Universal XP Image file
2. Extract 3 DriverPacks to C: e.g. Chipset + CPU + MassStorage - will give C:D folder
3. Use R-mouse to Open command prompt at C:POST_FIX and run command

DevicePath in HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion
is set to subfolders of C:D

USBoot DriveGuard driver is probably unneeded to prevent BSOD 7B since recent USB_XP_Fix.exe will Fix XP and Install waitbt.sys driver.
If you still have problem then Install USBoot DriveGuard driver ubdrvgd.sys to prevent BSOD 7B in booting from USB
- Download USBoot from http://usboot.org/tiki-index.php
- Extract the package, right click on ubdrvgd.inf, click on Install
- the XP boot message - DriveGuard Initialization failed - has No effect, the driver works OK
- More Info http://reboot.pro/98...800#entry160006
- DriveGuard driver ubdrvgd.sys is installed as LowerFilters between the main driver and the hardware

================================================================================

6. Universal XP - Support in boot.ini menu for Multiple Hal and Kernel

The boot.ini menu of XP can be used to select on the fly which hal and kernel file will be used for booting.
In this way one can support booting with the same Universal Image file on computers having quite different hardware.

http://www.vernalex....sprep/hal.shtml
http://www.etherboot...t_winnt_sanboot

The method described above is improved and used in IMG_XP_Compact.exe and IMG_XP_Restore.exe

Default XP boots by boot.ini entry LAST CONFIG with the files hal.dll and ntoskrnl.exe and ntkrnlpa.exe
The boot.ini switches /hal and /kernel will copy the in boot.ini named switchfiles and on the fly overwrite hal.dll and ntoskrnl.exe
At the same time the kernel name (max=6 letters) plus pa .exe file is used to overwrite ntkrnlpa.exe

A set of 7 hal files and 4 kernel files in folder halkern is generated from the XP Setup Source provided by user.
The hal and kernel files are extracted in priority from sp3.cab or sp2.cab or driver.cab (used by RVM Integrator) e.g. as

In folder halkern we rename:

In this way folder halkern contains 7 hal and 4 kernel files:

IMG_XP_Compact.exe and IMG_XP_Restore.exe will copy the files of the halkern folder to Image folder WINDOWSsystem32

Multiprocessor = MP and Uniprocessor = UP

boot.ini file with Multiple Hal and Kernel for making Universal XP

================================================================================

Summary

Universal XP is reality now:

- The same VHD Image File made with VHD_XP_Create.exe can be used for booting XP
from FILEDISK on HDD or USB or from RAMDISK, on computers having quite different Hardware architecture.

- IMG_XP_Restore.exe can be used to Install on HDD partition in 3 min XP including Office + PRGS + Updates
using 1.6 GB Universal XP HDD Image as source.

- BOOT_IMG copies Universal VHD Image File to Target Drive and makes GRUB4DOS Boot Menu.
Use this e.g. on a laptop running Vista or Windows 7 to make a boot option in BOOTMGR menu for Grub4dos.
Without the need to make new partition for XP, one can now simply use BOOT_IMG.exe
to install 1.6 GB Universal XP Image file booting in 1 min from WinVBlock or FiraDisk RAMDISK.

- IMG_XP_Update.exe is used after booting with XP Image file from RAMDISK, to Update the Image file that you just booted from.
Boot with full XP Image file in RAMDISK and Update Drivers using DriverForge with Drivers folder that you supply.
Then run IMG_XP_Update.exe to improve full XP Image file in 1 minute with drivers for New Hardware.

- Most computers nowadays are ACPI Multiprocessor PC and we can use the corresponding HAL.
If you need for XP to support computers using a different HAL then you can use Add Hal and Kernel files and
let modify by IMG_XP programs your boot.ini as described in Section 6.
http://www.vernalex....sprep/hal.shtml
http://www.etherboot...t_winnt_sanboot

- IMG_XP_Compact.exe and IMG_XP_Restore.exe have been tested running in 32-bits XP and Windows 7
and can also be used from LiveXP PE Environment.
In all cases ImDisk must be installed in XP or Win7 by using previously the provided imdiskinst.exe file.
ImDisk is used to mount the full XP HDD Image file in a virtual drive.

To Install ImDisk driver on Vista and Windows 7 you need to turn off UAC, User Account Control
http://www.ltr-data.se/opencode.html

The 64-bit ImDisk driver files included in the install package will not load on 64-bit Vista or 64-bit Windows 7
unless the machine is running with testsigning switched on.

Open Command Prompt as Administrator:

Reboot to activate this.
http://msdn.microsof...y/dd419910.aspx

Thanks to karyonix, more Info see:
FiraDisk - http://www.boot-land...?showtopic=8804
Install FiraDisk driver in XP with R-mouse on firadisk.inf in IMG_XPmakebtfiradisk-driver- folder
Forum FiraDisk - http://www.boot-land...hp?showforum=94
Windows 7 - http://www.boot-land...hp?showforum=77
Windows 7 on USB-HDD - http://www.boot-land...?showtopic=9196

Thanks to jaclaz for pointing me to strarc.exe of Olof Lagerkvist ,
which is used in IMG_XP_Update.exe to Update the XP Image File on HDD after booting from RAMDISK.
Updating Registry and Drivers in Image file is done in only 5 sec, a Total Update of the Image requires 1 min.

Development and historical thread here:
Thanks to joakim for starting the subject
http://www.boot-land...?showtopic=9227

Show more