grub icon indicating copy to clipboard operation
grub copied to clipboard

wimboot BIOS fails for WinPE WIMs larger than 890MB

Open bitraid opened this issue 5 years ago • 10 comments

Under BIOS, wimboot command fails with FATAL: no bootmgr.exe for files larger than ~890MB.

bitraid avatar Dec 24 '20 20:12 bitraid

any screenshots? what command did you use?

a1ive avatar Dec 25 '20 05:12 a1ive

For the example below, i'm using winre.wim from Windows 20H2, after adding some random files to increase its size to about 900MB: wimboot @:boot.wim:(hd0,msdos1)/winre.wim wimboot-log

And then fails: wimboot-fail

I also tried with --rawwim, --testmode=no, winpe=yes, and adding bootmgr.exe. GRUB2-FileManager also fails with the same message.

bitraid avatar Dec 25 '20 11:12 bitraid

I must add that using wimboot with grub4dos, works ok for the same file.

bitraid avatar Dec 25 '20 16:12 bitraid

I am unable to reproduce the same issue using a WIM file for Hirens PE

rdragonz avatar Dec 25 '20 16:12 rdragonz

I am unable to reproduce the same issue using a WIM file for Hirens PE

I just downloaded Hiren's PE and tried to boot boot.wim (1.23GB) and got the same error. Smaller files seem to work fine. I tried it on two different PCs (and virtual), but if others can't reproduce the issue, I guess I'll have to look more into it on my end.

bitraid avatar Dec 25 '20 18:12 bitraid

How much RAM is in your system and what is the memory map?

steve6375 avatar Dec 25 '20 19:12 steve6375

How much RAM is in your system and what is the memory map?

Currently, I have tested on 16GB (amd), 8GB (intel), 4GB (qemu on archlinux). I'll do more tests in a few days, when I'll have access to more machines (but maybe there is some other strange thing going on). I don't know what you mean by "memory map".

bitraid avatar Dec 25 '20 19:12 bitraid

I tested with boot.wim from HirensPE 1.0.1. Also get same error on Legacy boot under VBox 5 and real system IdeaPad 300. Works OK on UEFI64. image

steve6375 avatar Jan 28 '21 11:01 steve6375

P.S. I notice that $grub_platform is set to 'multiboot' now and not 'pc' (in elf grubfm.iso) - which is the standard ??? This means that testing grub_platform for 'pc' no longer works ???

steve6375 avatar Jan 28 '21 12:01 steve6375

I think it might be related to the memory map. It is too difficult to develop software under legacy BIOS, and I doubt if it is necessary to continue supporting it.

I notice that $grub_platform is set to 'multiboot' now and not 'pc' (in elf grubfm.iso) - which is the standard ???

The platform of grub2 is independent of the type of firmware you have on your computer. If your UEFI firmware supports BIOS interrupt calls, then you can also run grub2 i386-pc.

a1ive avatar Jan 29 '21 01:01 a1ive