Metabolix / HackBGRT

Windows boot logo changer for UEFI systems
MIT License
2.22k stars 239 forks source link

Unable to boot Windows after resetting Nvram #183

Closed antuneddu closed 5 months ago

antuneddu commented 5 months ago

Hello and congratulations on the toll I've been using it for years and it's always worked great even dual boot with Opencore " macOS " PciRoot(0x0)/Pci(0x17,0x0)/Sata(0x2,0xFFFF,0x0)/HD(1,GPT,798C34C2-A8BB-4A4D-8E63-436A5EC6E2AC,0x800,0x64000)/\EFI\HackBGRT\loader.efi ( my custom entry in Opencore )

The problem arises since unfortunately sometimes I have to do a reset/clearnvram After that i am unable to boot Windows in any way either from Windows disk or from the Opencore bootloader with blue screens and 0x00... errors following

I was wondering if there is a way to restore it without having to reinstall or fix it with the recovery stick drive... perhaps by putting the entry ( loader.efi ) back into the BCD?

Thanks for the attention

Metabolix commented 5 months ago

HackBGRT does not write any NVRAM data, except for the boot entry. As far as I understand, the boot log should be only in normal RAM, but you could disable logging in config.txt just in case.

It's not a surprise that you can't boot Windows after resetting NVRAM. You should figure out why you even need to reset NVRAM (very suspicious!) and if you could somehow either avoid that or at least backup and restore some of the data required by Windows. Like, take a backup of your NVRAM with some tool and compare it after resetting to figure out the problem.

Getting a blue screen after resetting NVRAM is a Windows problem and has nothing to do with HackBGRT.

antuneddu commented 5 months ago

Thank you for answering me and if I may I will reply Unfortunately it's not a real Mac :-) and I also use OCLP patcher to make some devices work, so I'm forced to reset/clean the nvram to make the patch work I manually inserted the entry ( loader.efi ) into the BCD

BCD Everything seems to be fine whether booting directly from Windows or via Opencore even after cleaning/resetting nvram However, booting from Windows directly temporarily shows warnings Immagine 2024-03-28 131823

... but still boots I don't know if they can be corrected, but I'm already satisfiedI ...attach log setup.log.zip

Short video https://drive.google.com/file/d/1eAbtwqQNMwYMM3bjzzM4m6aOvMmNAnZM/view?usp=drive_link Thanks again

Metabolix commented 5 months ago

This start_image error is caused by a bad boot entry. See commit a44b929 which explains the problem.

Maybe you could find another NVRAM boot entry editor for Windows and remove any extra data ("attributes" or "load options") from that NVRAM boot entry. HackBGRT installer does this, but it won't modify your NVRAM if it can't find the expected values, which now seems to be a problem according to your log file.

Maybe you would be better off with a proper multi-boot manager (such as Grub or systemd-boot).

Maybe you could add HackBGRT into OpenCore with BlessOverride.

Maybe you could use the UEFI Shell (OpenShell.efi, apparently available with OpenCore) to create the boot entry, if it contains the bcfg command. You could even create a script fixboot.nsh which you could then use after resetting your NVRAM. Something like:

bcfg boot add 3 fs0:\EFI\HackBGRT\loader.efi "HackBGRT"
bcfg boot mv 3 0
antuneddu commented 5 months ago

I didn't quite understand the commit you linked to me "start_image error" ... I have to reread it calmly

"BlessOverride" or Custom Entries is more or less the same thing, I prefer the latter for the reason of scanpolicy an example HERE

https://medium.com/macoclock/guide-multiboot-dualboot-opencore-with-windows-macos-linux-kextcache-131e96784c3f

What I did now I entered this into the Win terminal : " bcdedit /set {bootmgr} path \EFI\HackBGRT\loader.efi " It's working well as written above, no problems even after resetting the nvram... the entry still persists

As you can See. https://drive.google.com/file/d/1u51-Yxod_O8qVFubkmQKYopWTdDNE2wK/view?usp=drive_link with Opencore it starts your loader without problems

I only get warnings when boot directly from Win's disk/EFI It's not important, it's good that it starts and doesn't lose boot... I'll update you if I manage to eliminate that warning

Greetings

antuneddu commented 5 months ago

Solved hahaha :-) I just needed to rename the Entry from HackBGRT --> Windows Boot Manager and the warning disappeared

Immagine 2024-03-28 155234

Immagine 2024-03-28 155910

Greetings