Use Cllove/Duet, Use a Samsung 950 Pro or mod the bios. Unless I'm missing something that you discovered, is what I wrote earlier. Is better if they do, as in most recent machines (especially notebooks) NVME is the only internal storage you can use. Wouldn't be very useful to have a machine that can use only NVME disks, but cant boot from them
you stand correct. I just additionally shared those links as I am also familiarizing my self with those tools
Successfully installed and boot win7 on intel 10th Lenovo laptop without CSM! Inject nvme and usb driver in the image before install. Steps for modifying EFI partition are as simple as below: 1. use uefiseven latest for sure, but only for the efi\microsoft\boot directory. 2. in efi\boot\, use this bootx64.efi drive.google.com/file/d/1DFuobt-jx2hs0JH7Gj-UE0ral8wUMlNx/view?usp=drive_link 3. in efi\microsoft\boot, include this bootmgfw.original.efi (seem to be a win8 version) drive.google.com/file/d/1HREiLIRqKHEJShxlVdARhzEq9W8RLngw/view?usp=drive_link That's all. No need to mess with other files. Note, this EFI only boots win7 maybe win 8 as well, but cannot boot win10. Interestingly, it seems that the first-time installation of win7 and booting in an already installed win7 have different requirement of bootmgfw.original.efi. As I listed above, you must use the win8 bootmgfw.original.efi to install win7. However, once win7 is already installed, you can use a win10 bootmgfw.efi as bootmgfw.original.efi, and then you can boot into both win10 and an installed win7...
had the same issue. Granted they can't be expected to fix everything but since that is the case, if someone wants to mess around with this project and needs the flashboot files, pm me.
We usually debug ACPI_BIOS_ERROR (BSoD 0xA5) under VMware Workstation running Checked Build of Windows 7, with FlashBoot-patched UEFI loader, using sideloaded ACPI tables from the user environment, and using WinDbg kernel debugger running on the host PC. AMLI kernel debugger extensions and Check Build debugging features of Windows 7 had proven to be very useful for this purpose. Actually, there are many classes of problems leading to this BSoD. This is a catch-all BSoD for all problems related to ACPI table parsing and execution in ACPI.SYS driver. For example: 1) Some ACPI table declares a duplicate of previously declared ACPI device (it looks like duplicate "Device" instruction in ACPI machine language, AML). Windows 8+ tolerates that, Windows 7 errors out in these conditions. Usually duplicate declaration is safe to remove without any functionality loss. 2) Some ACPI table declares an extension of previously undeclared ACPI device (in AML, it looks like "Scope" instruction without preceding "Device" instruction). Windows 8+ tolerates that, Windows 7 errors out in these conditions. Usually subsequent "Scope" declaration is safe to remove without any functionality loss. For example, some BIOS vendors include in SSDTs some unnecessary code from mobile platforms, which used to extend some functionality which was originally declared in DSDT, then removed when porting to desktop, but SSDT extension cruft was left over and now causes Windows 7 to fail at boot time. Ultimately this is because after Windows 7 reached its end-of-life, many BIOS/UEFI vendors stopped caring about this OS and no longer properly test their code, including AML. 3) Zero-length byte array declaration in AML. Perfectly fine for Windows 8+, but severe error for Windows 7. I've encountered such thing only once, replaced with single byte array ({0}), without any functionality loss. 4) AML refers to some kind of feature which didn't exist in the ACPI specification back then in 2009, when Windows 7 was released. Usual offenders: I2C resources, I2C interrupts, Embedded Controllers. These ones need to be carefully removed (filled with AML NOPs), and such removal usually causes some feature degradation: battery charge meter no longer works, detachable keyboard of Surface 4 and older generations is no longer functional (newer generation of Surface tables have detachable keyboards which rely on USB, so they aren't affected), or some temperature sensor or similar low-bandwidth device may no longer be detected by the OS. There are other cases of ACPI incompatibility, of course, I've just noted the most popular ones. We resolve this problem on case-by-case basis, so far there's no generalized solution (algorithm or software or otherwise) which would work for everybody. Patching ACPI.SYS probably can help with cases (1)-(3), or some subset of them, but definitely not going to help with case (4) which unfortunately has become more popular lately. Regarding chances of success, large desktops are better than laptops, and laptops are better than tablets in this regard. Portable computers are more likely to use new ACPI features (e.g., human input devices, battery charge meters, peripherials on the I2C bus, etc) which are not compatible with old ACPI.SYS of Windows 7. Even for hardest cases (i.e. tablets), ACPI tables can be patched and sideloaded, but they won't add missing features to Windows 7: e.g. battery charge indicator, if it's located on I2C bus on this hardware, still won't work in Windows 7, but Windows 7 will at least boot without a BSoD.
Can custom bootvid graphics be implemented in flashboot bootmgfw.efi for OS like XP x64 that can boot through UEFI with 16497 winload.efi and FlashBoot bootmgfw.efi?
For intel platfrom, I2C and GPIO driver seems can not port to work on win7. I only made AMD platforms I2C and gpio can drive on win7(edit the apci.sys OSI to load the i2c and gpio bus), when gpio and i2c bus devices drvive correct, the thouchpad device will appearr in hardware manager, but the touchpad still code 12 error, even have a correct i2c touchpad driver. We tried to port the msgpioclx.sys from win8 and beta win8, bu still code 12 error.
Not To Mention That My Problem was Reproduced So Many Times On (CPU + MOBO) Which Were Released On 2018 (before ending support for windows 7) !!!!!!!!!!!!!!!!!!!! The Problem Was Reported To The Devs Behind Flashboot, As Soon As it Happened on my end. the final response was a complete silence !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
I think the latest VMware Workstation, it still has some legacy parts in their UEFI Class 3 only mode. For example, at least the VGA I/O port exists. Even the KVM/QEMU, still have that. So, they provide the fake int10 handler to make Windows 7 boot properly. And someone based on that and make something like UefiSeven. I think we only cannot say we solve the Windows 7 on UEFI Class 3 issue unless we can make Windows 7 boot properly in something progressive UEFI Class 3 environments like Hyper-V Gen 2 VM. Kenji Mouri
could you specify the release year of your laptop , i have a class 3 machine i am trying to try this method and will update if it works on amd machines or not .
Fair. I have a surface pro 3, if you need someone to debug on actual hardware I'm down. I did get a bunch of acpi errors probably for the reasons stated above. With AI being a thing now, isn't it possible to have it look thru the code and remove all instances of AML?
In all fairness, it's kind of expensive to get every piece of hardware and test it on that. Microsoft had such a thing at one point, back in the 98/2k days but they decided to skip it at some point in favor of virtual testing which isn't as good.