Jump to content











Photo
- - - - -

PrePE - fast boot PE


  • Please log in to reply
82 replies to this topic

#1 VV2006

VV2006

    Member

  • Members
  • 43 posts
  • Location:Russia
  •  
    Russian Federation

Posted 21 August 2010 - 12:02 PM

Hi World! :)
So, I want to present you the new method of PE-loading. (BTW, what's the difference between boot an load? :)) Later I'll try to correct my errors, sorry my english please.
This Idea belongs to Alexey32 © from forum.ru-board.com. Usually sequence is setupldr.bin (or it rename into ntldr) -> txtsetup.sif, setupreg.hiv -> forming SYSTEM hive in folder I386\SYSTEM32\CONFIG. There is difference between work setupldr.bin and ntldr. There is specific in work with it of ntdetect.com.
Detect hardware, it loading, forming base SYSTEM hive takes long time. Opposite, when used ntldr аnd pretranslated setupreg.hiv --> SYSTEM hive (txtsetup.sif here not needed in general), then boot time not so long.
After the additional import in hive SYSTEM same data, to avoid Bsod and for corrects work.
~~~~~~~~~
In more detail:
1. Building BartPE project, creating ISO image.
2. Make UFD (HDD) bootable (NT 5.x).
3. Make on UFD (HDD) folder MININT and then copy into content from PE-proects (or from ISO - here not difference) folder I386. (Or copy I386 with rename it to MININT.)
4. Copy files and others needed folders from root proects in root of UFD (HDD).
5. Copy with rename \I386\SYSTEM32\SETUPREG.HIV to \MININT\SYSTEM32\CONFIG\SYSTEM.
6. Extract from archives For_boot_ntldr.rar files srv_txtset.cmd and srv_txtset.reg to \MININT\SYSTEM32\CONFIG\ and then run srv_txtset.cmd.
Litle changed srv_txtset.cmd:
rem VV2006 -- for other project folders names-- copy /y "BartPE\I386\SYSTEM32\SETUPREG.HIV" "BartPE\I386\SYSTEM32\CONFIG\SYSTEM"

REG LOAD HKLM\t SYSTEM

regedit /s srv_txtset.reg

REG UNLOAD HKLM\t
7. srv_txtset.cmd and srv_txtset.reg may now be deleted.
8. Extract from archives For_boot_ntldr.rar boot.ini and ntdetect.com in root dir of UFD (HDD).
9. Copy in the UFD (HDD) root other needed files (ntldr, Bootfont.bin).

That is all. Boot time PE decrease.
~~~~~~~~~
This method perfectly worked with USB, HDD. All is Ok and no problem. But where is reason of unsuccessful boot from CD?
Chain of load here: grldr as bootfile -->ntldr -->boot.ini --> NT Kernel --> system. Then appears Windows XP logo an then BSoD 0x7b. Why XP lost at this step bootable device? What and where I need correct in reg?
Or this metod is principle impossible in case with CD? :)

Ask me, will answer in more detail and will give Refs.s. And please help me! :)

#2 vvurat

vvurat

    Frequent Member

  • Advanced user
  • 323 posts

Posted 21 August 2010 - 12:34 PM

Alexey32 © from forum.ru-board.com

Unbelievable man. Strange that there are no posts from him and boot related forums. I had the luck to talk with him a few days before until 4am. I don't think anybody can reach his boot knowledge. Especially his vistape and windows 7 full system booting from ram. So small and has everything. But didn't see a live xp of him. Can it be Vas_alex pe? İf he has such a live xp build can you share more info and pm to me. It will be warez if you write here prefer PM :)

#3 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 21 August 2010 - 12:36 PM

Good. :)

Let's make a deal :):
  • you post some detail on how that works actually on a "normal" HD (including steps to repeat the setup)
  • we will do our best to help you find a suitable way from CD/DVD

The ntldr->boot.ini->ntdetect.com when on hard disk checks for disk signature in order to "hook" the right booting device in the "switch" between "real mode" and "protected mode".
The 0x0000007b is typical of a devcice that is found in "real mode" and lost during the transition to "protected mode" (usually it is caused by a missing driver, but is also typical in attempting image booting without using a RAMDISK driver in the build)

The problem is that on CD is that there is NO such signature, and the thread where you originally posted:
http://www.boot-land...?...ic=3765&hl=
provides (yet :)) unfortunately NO usable answers.

There is maybe a workaround using any of (or both together):

Also it is *possible* that some of the settings discussed in the mentioned thread for TXTSETUP.SIF can work.

Finally, I would make experiments with the Recovery Console, which is ultimately a very reduced PE of a particular kind. :)

:)
Wonko

#4 VV2006

VV2006

    Member

  • Members
  • 43 posts
  • Location:Russia
  •  
    Russian Federation

Posted 21 August 2010 - 01:59 PM

vvurat, no, i sad about full Windows XP_(Yikxx)_aleks200059_USB_Universal_22.07.2010 by ALEKS_USB (Александр он - hi not same man) from rutracker.org.

Ref. to original post by Alexey32 is here.

Source for begin For_boot_ntldr.rar

Wonko the Sane

The ntldr->boot.ini->ntdetect.com when on hard disk checks for disk signature in order to "hook" the right booting device in the "switch" between "real mode" and "protected mode".

It can be bypasstd? Ntdetect modification - and no mast problem, really? :)

[*]Firadisk (or WinVbock) as "direct" HD image mapping (new feature, working but experimental)
[*]El-Torito HD emulation see the ETBOOT project

No, I tryed this a long time befor. It's no effective ways becose main sense lost - fаst boot, save memory. Even if ISO will be very small.

The 0x0000007b is typical of a devcice that is found in "real mode" and lost during the transition to "protected mode" (usually it is caused by a missing driver, but is also typical in attempting image booting without using a RAMDISK driver in the build)

Yes, I know about, mini-BartPE have got ImDisk, and this some build loaded succesful from USB (Minint folder used). Where is root the problem? CDFS vs SYSTEM hive? Incorrect Reference on SystemPartition? RO mode CD in this case begin to influence? For boot PrePE from CD (remember, grldr as bootfile, otherwise how can we addressing boot to ntldr on CD placed?) :

My menu.lst:
timeout 1 

title - FastPE (ntldr)

find --set-root /NTLDR

chainloader (cd)/NTLDR

My boot.ini:
[boot loader] 

timeout=3 

default=multi(0)disk(0)cdrom(224)\I386 

[operating systems] 

multi(0)disk(0)cdrom(224)\I386="CD on Primary Channel" /fastdetect /minint /HAL=HALMACPI.DLL /KERNEL=NTKRNLMP.EXE 

multi(0)disk(0)cdrom(239)\I386="CD on Secondary Channel" /fastdetect /minint /HAL=HALMACPI.DLL /KERNEL=NTKRNLMP.EXE 

C:\grldr="?[1;32mGrub"


#5 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 21 August 2010 - 02:40 PM

Well, the direct mapping of Firadisk (NOT ramdisk mapping) is relatively recentl, so let me doubt :) that you did try it, at least "a long time befor". :)

But yes, from what I can get from the post by Alexey32 (google translate) on CD he used EXACTLY El-torito HD emulation, though through different means/tools.

The problem is NTLDR, more than in NTDETECT.COM, AFAICU.

Here is the story of the "XP Kansas City Shuffle (still HD-like-media ONLY related):
http://www.911cd.net...showtopic=21242

Since you are Russian (or however clearly can read and understand it) maybe you can find something of use here:
http://www.multiboot.ru/files.htm

maybe, just maybe the programmers that wrote those "DOS loaders for NTLDR" have somehow a more deep knowledge of the NTLDR mappings....


:)
Wonko

#6 VV2006

VV2006

    Member

  • Members
  • 43 posts
  • Location:Russia
  •  
    Russian Federation

Posted 21 August 2010 - 03:19 PM

at least "a long time befor"

This about ETBOOT project. Iwant not mapping image, even direct one. I want just direct boot from CD with ntldr.

he used EXACTLY El-torito HD emulation, though through different means/tools.

And hi sad about it also, this boot very slow. :) The Method is for this reason needed with ntldr on CD.
Well, difference between USB-boot here is: ntldr, CDFS, name folder I386. Main point - ntldr on exotic media.
Second url I know, thank you! :)

#7 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 21 August 2010 - 04:14 PM

Iwant not mapping image, even direct one. I want just direct boot from CD with ntldr.

Sure :), but life is tough, not everythng you *want* may be possible.

I have no idea if booting a HD image saved on CD/DVD through Firadisk direct mapping:
  • will work at all (my guess is that it will)
  • will work ANY faster than the El-torito HD emulation

I just pointed you to what we have available, not the best solution, not necessarily what you *want*, simply a possible one.

The general idea when experimenting should be to experiment in various directions, not that of pointing towards a wall and bring it down wth your head :).

Mind you it may work, if you are particularly hard-headed or the wall is particularly badly built, but it is unprobable, sometimes one can walk a little bit sideways and find a door in the wall....:) ...and if you are lucky this door will be also open... :)

:)
Wonko

#8 VV2006

VV2006

    Member

  • Members
  • 43 posts
  • Location:Russia
  •  
    Russian Federation

Posted 21 August 2010 - 07:01 PM

Well, then so: I just want (I wish, dream - as will be pleasing you) to find out in theory, whether it is possible to attain the set purpose practically. Many other decisions, comfortable and not very much, I know. I use some in particular: for Usb-boot fbiinst (ud), CD-ROM on UFD, boot from ISO and direct boot, wim-boot, full (not PE) XP, bundle boot menu... All, that I wanted from a load, that interested me, that it needed me I did. Now I want it - success with boot ntldr from CD. Well, or to know exactly that want it to no purpose. :)

If used add boot.ini options /SAFEBOOT:MINIMAL /SOS, then we can see last loaded startup LDM driver dmboot.sys. Then followed BSoD 0x7b...

#9 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 22 August 2010 - 09:25 AM

If used add boot.ini options /SAFEBOOT:MINIMAL /SOS, then we can see last loaded startup LDM driver dmboot.sys. Then followed BSoD 0x7b...


Unfortunately that doesn't help much (please read as doesn't help at all).
That error can be caused by a zillion of things, problem is that the log logs last succesfully loaded thing (dmboot.sys) and not the first thing that causes problems....

Maybe you could try doing a boot time profiling with regmon/filemon procmon:
http://technet.micro...s/bb896645.aspx

I would create two "parallel" identical installs, one from HD (knowing to be working) and one from CD (failing), profile both and try seeing which diferences there are.

Be warned, it is a lenghty and complex job, last time I tried something like that the typical boot time profile had thousands of entries :)

:)
Wonko

#10 VV2006

VV2006

    Member

  • Members
  • 43 posts
  • Location:Russia
  •  
    Russian Federation

Posted 22 August 2010 - 04:26 PM

Last string on Sreen is: multi(0)disk(0)cdrom(224)\I386\System32\Drivers\Mup.sys
Followed Screen (with boot.ini options: multi(0)disk(0)cdrom(224)\I386="CD on Primary Channel" /SOS /noexecute=alwaysoff /nopae):
Posted Image
Then followed Screen with stop BSoD 0x7b.

#11 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 22 August 2010 - 04:50 PM

Last string on Sreen is: multi(0)disk(0)disk(0)cdrom(224)\I386\System32\Drivers\Mup.sys


Try re-reading my previous post ;), unfortunately hanging at mup.sys, is another error that can be caused by an incredible number of things.

If you don't trust my word for it :), read here of some of the possible causes that can normally cause it:
http://www.howtofixb...ys-blue-screen/

ANYWAY, and not necessarily a step toward the solution:
Compare what AeroXP posted:

I got it!

multi(0)disk(0)cdrom(224) - CD on Primary Channel
multi(0)disk(0)cdrom(239) - CD on Secondary Channel

With what you reported you saw on screen:
multi(0)disk(0)cdrom(224)
multi(0)disk(0)disk(0)cdrom(224)\I386\System32\Drivers\Mup.sys

:)


:)
Wonko

#12 VV2006

VV2006

    Member

  • Members
  • 43 posts
  • Location:Russia
  •  
    Russian Federation

Posted 22 August 2010 - 05:09 PM

Sorry, it was my Mistake while retyping (or reprinting? - dont shure) from a screen. Now it corrected. Thank's!
Here Mup.sys is not BSoD reason. Load drivers order and initialization drivers order are not some.

Wonko, did You think about how procmon can be runned here - even if will be added in autorun with command line mode?

#13 smx06

smx06

    Member

  • Members
  • 41 posts

Posted 16 March 2012 - 04:52 PM

Hi All!

Did anybody successfully recreate 1-9 of the topic start 1st message?

I can't boot with discribed(1-9) sequencs for bootsector->ntldr->boot.ini->ntoskrnl

If i use SETUPREG.HIV from Bart

p.s. i.e. the algorithm - my understanding of 1-9
- make BartPE disk
- make USB botable to NTLDR (bart2usb)
- remove all files from USB
- copy Barts I386 to usb
- copy biosinfo.inf to \i386\inf
- copy SETUPREG.HIV to \i386\system32\config
- rename SETUPREG.HIV to SYSTEM (+ make SYSTEM.LOG 0bytes)
- add srv_txtset.reg to SYSTEM (via hive ops by reg.exe)
- rename i386 -> MININT (what for?)
- copy to USB root: ntldr (ORIGINAL not renamed setupldr.bin! from CD or live OS)
- copy to USB root: boot.ini (see below), ntdetect.com

reboot,

Result: If i use setupreg.hiv i got \system32\config\system - corrupted message (seems it is not enough for live system/ntldr)
if i use real XP system - all goes ok - till the BSOD 0x07 (both on CD or USB)
on CD (watch in windbg) it is ntoskrnl:IoMarkPartition or somth

Anybody did this successfully? or see errors in my interpretation of 1-9?

shall try with XP 1st install registry instead..

srv_txtset.reg
(http://www.box.com/s...56fb4725c728417)


ps boot.ini entry for usb
multi(0)disk(0)rdisk(0)partition(1)\MININT="minint safe" /sos /safeboot:minimal(alternateshell)

for CD
multi(0)disk(0)cdrom(159)\I386="cd safe" /sos /safeboot:minimal(alternateshell)

nb: 159 can differ on your CD-rom drive like 224,239,etc (can be seen in grldr + INS)

#14 smx06

smx06

    Member

  • Members
  • 41 posts

Posted 16 March 2012 - 04:54 PM

p.s. i did renaming to MININT on USB; on CD leaved I386

batch to update SYSTEM:

copy /y .SETUPREG.HIV .SYSTEM
REG LOAD HKLMt .SYSTEM
regedit /s srv_txtset.reg
REG UNLOAD HKLMt

#15 smx06

smx06

    Member

  • Members
  • 41 posts

Posted 16 March 2012 - 04:57 PM

pps

to boot from USB on VMWare (or other VM)
use plpbt.img
from plpbt-5.0.14.zip

#16 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 16 March 2012 - 05:54 PM

@smx06
If you are game for it, we can try again with this approach :).
Since you are Russian, you should be able to read and understand Alexey32 's original post much better than I can through google translate.

My suggestion is to leave alone any other VM and do the tests with Qemu (with Qemu Manager): http://www.davereyn.co.uk/download.htm

It will be slower than other VM's but - believe me on my word for it - it is more suitable for this kind of experiments.

I would suggest - BEFORE attempting a "real" USB device - to try the thingy on a "normal" disk image, to remove possible issues connected to USB.

Related to this, the posts by vvurat talk about USB HDD, which means "automatically" that the device is seen as "Fixed", while if you are using a USB stick :unsure: it may be seen as "Removable" and this can potentially create a number of issues.

The \I386\ vs. \minint\ is NOT a problem, you can have \I386\ on BOTH CD and HD (this may remove - besides the renaming step - a possible source of issues):
http://www.911cd.net...showtopic=17504

Also, it may well depend from the "base" PE you are working with.
Ideally you should choose a "fixed" project like UBCD4WIN or a very basic BartPE, so that it can be reproduced, also the actual Windows sources used may make a difference, (both different language versions and SP level).

:cheers:
Wonko

#17 smx06

smx06

    Member

  • Members
  • 41 posts

Posted 16 March 2012 - 06:23 PM

Yes i checked Alexey32's messages. They also miss details.

Ok about Qemu.

Just thought someone reproduced this.

Seems there are no other sources that use NTLDR instead of setupldr.bin, or did i miss something?

Big Thanks.

#18 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 16 March 2012 - 06:42 PM

Seems there are no other sources that use NTLDR instead of setupldr.bin, or did i miss something?

Well, if I recall correctly there was another "Russia originated" thingy that was a RAMDISK booting NT, by euhenio:
http://reboot.pro/1218/
but that was a "full XP" so that it was normal to use NTLDR.

There is/was also another UNfinalized idea here:
http://reboot.pro/8615/

On a completely different path, this is a possible way to shorten a bit PE loading times from USB:
http://reboot.pro/6041/

:cheers:
Wonko

#19 smx06

smx06

    Member

  • Members
  • 41 posts

Posted 16 March 2012 - 07:14 PM

Ok. Thanks for usefull links!

To clear my target, i'm not interested in speeding up the boot,
but in making "licensed free" way of building PE (or full) XP
i.e. making it only from files of Installed Windows XP (no MS CD, no additional files taken from other OS)
this needs replacing setupldr with ntldr
That is my main idea.

Thanks again!

#20 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 16 March 2012 - 07:48 PM

That is my main idea.

And a nice one. :)
Though of course nothing will change about the licensing status of the build, it could be a nice tool for those people that got a pre-installed OEM XP and only a "recovery CD".
BUT IMHO - at least partially - the setupldr.bin is a non-issue, as you can get it from inside several freely available Service Packs. :dubbio:
The "minimal" download where you can find a SETUPLDR.BIN and corresponding NTDETECT.COM being probably the XP boot disks:
http://reboot.pro/2254/
http://support.micro...b;en-us;Q310994
BTW, if the "base XP" has been "properly installed", i.e. including Recovery Console, you already have SETUPLDR.BIN in cmdcons

Again a bit OT, but maybe not that much :unsure:, I still have difficulties in finding any other kid wanting to play with me this game here :w00t::
http://reboot.pro/3717/


:cheers:
Wonko

#21 smx06

smx06

    Member

  • Members
  • 41 posts

Posted 16 March 2012 - 08:14 PM

Thanks for MS links!

#22 Brito

Brito

    Platinum Member

  • .script developer
  • 10616 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 17 March 2012 - 01:47 PM

Hi World! :)
...


Hi vv2006, one of the forum upgrades has messed the text inside the code blocks. Would you please correct it?

Thank you!
:cheers:

#23 VV2006

VV2006

    Member

  • Members
  • 43 posts
  • Location:Russia
  •  
    Russian Federation

Posted 19 March 2012 - 06:15 AM

Hi Nuno Brito!
You talk about this message, right? See please this topic.
I'll be back. )) Soon. Perhaps.
  • Brito likes this

#24 wimb

wimb

    Platinum Member

  • Developer
  • 3756 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 19 March 2012 - 10:10 AM

i.e. making it only from files of Installed Windows XP (no MS CD, no additional files taken from other OS)

That is what IMG_XP_Compact.exe of IMG_XP package is doing to make Portable or Mini XP

http://www.911cd.net...showtopic=23553

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 as described and apply point 5 and 6

5. Reduce size and improve settings as usual and Install missing Drivers and Install Standard Controllers for IDE and USB and VGA
- Reduce Size e.g. Change Virtual memory and Sleep settings to get rid of pagefile.sys and hiberfil.sys
- Set System Restore and Windows Update Off and Run PURGE_DLLCACHE.BAT to delete 350 MB of dllcache folder
- In Device Manager instead of Hardware specific Controllers you must Install Standard Controllers for IDE and USB and Install Standard VGA Adapter
6. Connect USB-HDD where you want to use XP Image, so that USB-HDD settings are known in XP registry, and Reboot

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

:cheers:

#25 smx06

smx06

    Member

  • Members
  • 41 posts

Posted 19 March 2012 - 10:54 AM

That is what IMG_XP_Compact.exe of IMG_XP package is doing to make Portable or Mini XP

http://www.911cd.net...showtopic=23553

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


Thanks for the tips.
But as I understand this is grldr(grub) + full disk image (loaded into RAM?)

I'm planning to do a system with pure MS boot sector(mbr) + NTLDR + boot.ini + XP
(i.e. totally based on user installed MS XP), without ramdisks, images, win7/vista loaders, etc.
I.e. same as described in 1st post by VV2006
so this is not an option for me.

But thanX anyway.

Edited by smx06, 19 March 2012 - 10:56 AM.





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users