Saturday 24 November 2018

Adding 32-bit UEFI boot options to Strelec WinPE

The English build of Sergei Strelec WinPE only contains entries to boot to Win10 64-bit in the UEFI BCD - no 32-bit UEFI boot options are present for Win10 or Win8. However the 32-bit EFI boot file \EFI\boot\bootia32.efi is already present, so to support booting from 32-bit UEFI systems we just need to edit the BCD...


Instructions

1. Download the English Strelec Win8+Win10 ISO (or any version?).
2. Convert the ISO to a .imgPTN file (add a good 1GB+ if you want to also install AV updates and PortableApps onto the same partition image later).
3. Copy the .imgPTN file to your E2B drive, make it contiguous and 'switch' to it.
4. Now you can use BootIce to edit the \EFI\microsoft\boot\BCD file on the E2B drive.

Add two new 32-bit BCD entries as shown below using 'BCD - Other BCD file -  \EFI\microsoft\boot\BCD - Easy mode:



Make sure to also set the tick boxes correctly and then click on Save current system.

The BCD file is here if you can't be bothered to use BootIce. Just overwrite the \EFI\microsoft\boot\BCD file that is already present.

Note: For some reason the 32-bit versions are quite slow to get to the Desktop!

19 comments:

  1. If burning the Strelec WinPE to a usb stick, it DOES contain 32bit UEFI boot options and can boot 32bit UEFI. But putting it on an E2B stick, it can't boot. Can you make this possible?

    ReplyDelete
  2. Edited comment: If burning the original Strelec WinPE (ISO file) to a usb stick, it DOES contain 32bit UEFI options and can boot on 32bit UEFI-only laptops. But putting it on E2B stick (yeah, new version with agFM), that would fail. Would you recheck and make it possible without converting the iso to .imgPTN?

    ReplyDelete
    Replies
    1. Which Strelec iso are you referring to?
      How are you 'burning' it to a usb stick - using what is utility?

      Delete
    2. Sorry, thought Google would notify the reply but it turned out I forgot to tick the "Notify me" button. However, have more new info:
      1. I use Rufus to burn the Strelec isos to usb stick. ANY iso (2017 to 2020) can boot 32bit UEFI.
      2. On E2B: Can use Ventoy for the 2017 iso to boot 32bit UEFI! I checked the ISOs' contents and saw that the 2017 version has EFI folder at the root folder (of the iso) while the 2020 versions seem to use additional grub-related stuff?

      Delete
    3. EDITED: Not Rufus, sorry. Used UltraISO as guided by Strelec himself (the guide and the iso are packed in the same ZIP).
      Sorry, thought Google would notify the reply but it turned out I forgot to tick the "Notify me" button. However, have more new info:
      1. I use UltraISO to burn the Strelec isos to usb stick. (The UltraISO guide and the iso are packed in the same ZIP). ANY iso (2017 to 2020) can boot 32bit UEFI.
      2. On E2B: Can use Ventoy for the 2017 iso to boot 32bit UEFI! I checked the ISOs' contents and saw that the 2017 version has EFI folder at the root folder (of the iso) while the 2020 versions seem to use additional grub-related stuff?

      Delete
    4. I can boot Strelec 2020 iso using agFM and uefi32. So exactly what iso are you saying you cannot uefi32 boot from using agFM?

      Delete
    5. For example, this file "WinPE10_8_Sergei_Strelec_x86_x64_2020.09.21_English.iso"
      1. Using agFM:
      a) Choose "Boot Strelec WinPE from ISO [.isowin]": performs some "patched WIM header" stuffs and gave out some error "This 64-bit application couldn't load..."
      b) Choose "Boot ISO (partnew/Easy2Boot) [.isodef]": shows up a choice list that has only 64bit options:
      - Boot USB Sergei Strelec Win10 (x64)
      - Search & Start Windows 7/8/8.1/10 (EFI x64)
      - Windows Memory Diagnostics
      Chose any option would give out the error "This 64-bit application couldn't load..."

      2. Using Ventoy on E2B: shows up the choice list and gave out error like 1a.

      Delete
    6. How are you testing uefi32 booting?

      Delete
    7. My device is a 2-in-1 tablet Asus T100 which has only 32bit UEFI mode (NO 64bit, NO legacy BIOS/CSM). Is it true that on E2B, we have only 2 tools to try UEFI booting: agFM (loaded by default on UEFI system (?)) and Ventoy?

      For more info, burning that same 2020.09 iso to usb stick, when booting it would show correct x86 options in the choice list:
      - "Boot USB Sergei Strelec Win10.0 (x86)"
      - "Boot USB Sergei Strelec Win8.0 (x86)"
      ...

      Delete
    8. Is this may be an issue: Actually, my device's CPU is a 64-bit one!, but the manufacturer offers only 32-bit UEFI firmware.
      - So, for years, I can only install 32-bit Windows and I have always believed that it can only install 32-bit OSes.
      - However, just yesterday, I got some info and I tried: and out of my surprise, it could boot 64-bit Live Lubuntu/MX Linux ISOs (don't know what mode it booted, though). I have not tried to install those 64-bit OSes, though. If you think this info is usefull, I can try installing those 64-bit Linux OSes.

      Delete
    9. hmm, strange.
      I am testing by using UEFI32 on VirtualBox. agFM boots in UEFI32 (as shown by startup info). I select the 2020.09 ISO and I get
      - "Boot USB Sergei Strelec Win10.0 (x86)"
      - "Boot USB Sergei Strelec Win8.0 (x86)"
      The Win10 x86 boot OK, the Win8.0 x86 gives an error after loading the wim 0xc0000017 unexpected error.
      For UEFI32 we can use .imgPTN, agFM or Ventoy. Obviously you cannot run any of the 64-bit on a 32-bit CPU.

      Delete
    10. So, maybe it's true that it's a special case with the type of my device. Looks like during all the patching/preparing files, E2B/agFM see the 64-bit CPU and process accordingly? I noticed that on initial loading, agFM does realize that the system is:
      "Easy2Boot agFM 1.70
      UEFI32 - 64-bit CPU
      Secure Boot: Disabled"

      Delete
    11. Can you try latest Beta of agFM - I think I have fixed it?
      https://1drv.ms/u/s!AqlrQcdsFA-KsS3zLVeZ-svInp4F?e=CV4qqC

      Delete
    12. OK, I'll test. I'm trying installing 64-bit MX Linux, things are looking good :o :D

      Delete
    13. Sure, using grub2 you can boot to quite a few 64-bit linuxes from UEFI32. I have written a few blogs and made a few .cfg files for that in the past.

      Delete
    14. Good result!
      1. Choose "Boot [.isodef]": error like mentioned above.
      2. Choose "Boot [.isowin]": now has 2 sub-choices:
      + Win 10 x86: Works!
      + Win 8 x86: 0xc0000017 unexpected error as you said.

      FYI, on the burned usb stick, all options work fine. And for your ease of mind, there is a little note: AFAIK, 64bit CPU - 32bit UEFI devices are actually common products. I don't know if there was any "pure" 32bit CPU - 32bit UEFI devices. This was talked about in post by Intel specialist (see below link):
      https://software.intel.com/content/www/us/en/develop/blogs/why-cheap-systems-run-32-bit-uefi-on-x64-systems.html

      Delete
    15. good. 64-bit UEFI32 devices are not 'common' (except for a few older models like T100, etc.) and I don't think any have been made in the last few years.
      If you have a working 'burned' USB stick - you should just be able to drag-and-drop the drive letter onto the MPI_FAT32 Desktop shortcut and make a .imgPTN file from it. That should then work in exactly the same way.

      Delete
    16. Ah, I meant in the "32-bit UEFI devices" category :) (Obviously, focus is on 64-bit things nowadays). Well, alright, at least things are working now, and that's enough to me. Thank you very much for taking time to check on this issue! :)

      Just some side info:
      1. 64-bit Live ISOs of Lubuntu, MX Linux boot up fine
      2. Installation:
      - Lubuntu 20.04, MX Linux 19.3: work
      - MX Linux 17, 18: installed successfully, but can't boot into the OSes.

      Delete
  3. Sorry so much, I typed incorrectly. Ventoy gave out error like 1b, not like 1a (-_-)

    ReplyDelete