XanthraX Posted May 9, 2020 Share Posted May 9, 2020 Hi everyone, I have a minor problem, but persistent, with Clovers v5, starting from 5108 to 5116. I cannot change themes, even in config.plist it is the right theme. I tried everything, even I deleted all themes folders, except the one I want. But this is not the biggest culprit. If I chose theme in Boot Section in Clover Configurator, I get a black screen with no apple logo or progressbar, If I chose to boot in single user mod, I have that same black screen without any white text and all I type is in blind. I want to clear nvram and I cannot. In other hand it boots rather fine, but I feel my Clover is "dirty". Where I am wrong? Thank you in advance. Link to comment Share on other sites More sharing options...
Slice Posted May 9, 2020 Share Posted May 9, 2020 Take Clover release and install it official way. Drag CloverConfigurator to trash before. 2 Link to comment Share on other sites More sharing options...
vector sigma Posted May 10, 2020 Share Posted May 10, 2020 (edited) @Slice the xcpm patch stop working again here (i5 3210m) with this commit. In 10.15.4 + there is an additional check that prevent unsupported cpus to activate it and goto xcpm_mode = 0x00 in the _xcpm_bootstrap: function _xcpm_bootstrap { r14 = *qword_ffffff8000e55100; if (r14 == 0x0) { loc_ffffff8000a9e720("-cpuid", dword_ffffff8000e55108, 0x4, 0x0); _cpuid_set_info(); r14 = dword_ffffff8000e55110; *qword_ffffff8000e55100 = r14; } loc_ffffff8000a9e720("xcpm_pcps", _xcpm_boot_pcps_mode, 0x4, 0x0); rax = *qword_ffffff8000e55100; if (rax == 0x0) { loc_ffffff8000a9e720("-cpuid", dword_ffffff8000e55108, 0x4, 0x0); _cpuid_set_info(); rax = dword_ffffff8000e55110; *qword_ffffff8000e55100 = rax; } rbx = *(int8_t *)(rax + 0x4d); r15 = *(int8_t *)(rax + 0x50); *(int32_t *)_xcpm_cpufamily = *(int32_t *)(rax + 0x1a0); rax = _cpuid_features(); if (rax < 0x0) goto loc_ffffff80004667b5; loc_ffffff80004666ae: if (rbx <= 0x3b) goto loc_ffffff80004666e1; <--- this one needs to be ignored after that (see last line) if the cpu is unsupported it will goes to: *(int32_t *)_xcpm_mode = 0x0; ..and a fake cpu id will be needed. This patch surpass it: for (UINTN i = 10; i < 20; ++i) { if (KernelData[place + i] == 0xC4) { KernelData[place + i] = 0xC6; + if (KernelData[(place + i) - 5] == 0x3B) { + KernelData[(place + i) - 5] = 0x00; + } break; } } Attached modified kernel_patcher.cpp and the entire _xcpm_bootstrap function. kernel_patcher.cpp.zip _xcpm_bootstrap.h.zip Edited May 10, 2020 by vector sigma 1 Link to comment Share on other sites More sharing options...
Slice Posted May 10, 2020 Share Posted May 10, 2020 6 hours ago, vector sigma said: @Slice the xcpm patch stop working again here (i5 3210m) with this commit. In 10.15.4 + there is an additional check that prevent unsupported cpus to activate it and goto xcpm_mode = 0x00 in the _xcpm_bootstrap: function _xcpm_bootstrap { r14 = *qword_ffffff8000e55100; if (r14 == 0x0) { loc_ffffff8000a9e720("-cpuid", dword_ffffff8000e55108, 0x4, 0x0); _cpuid_set_info(); r14 = dword_ffffff8000e55110; *qword_ffffff8000e55100 = r14; } loc_ffffff8000a9e720("xcpm_pcps", _xcpm_boot_pcps_mode, 0x4, 0x0); rax = *qword_ffffff8000e55100; if (rax == 0x0) { loc_ffffff8000a9e720("-cpuid", dword_ffffff8000e55108, 0x4, 0x0); _cpuid_set_info(); rax = dword_ffffff8000e55110; *qword_ffffff8000e55100 = rax; } rbx = *(int8_t *)(rax + 0x4d); r15 = *(int8_t *)(rax + 0x50); *(int32_t *)_xcpm_cpufamily = *(int32_t *)(rax + 0x1a0); rax = _cpuid_features(); if (rax < 0x0) goto loc_ffffff80004667b5; loc_ffffff80004666ae: if (rbx <= 0x3b) goto loc_ffffff80004666e1; <--- this one needs to be ignored after that (see last line) if the cpu is unsupported it will goes to: *(int32_t *)_xcpm_mode = 0x0; ..and a fake cpu id will be needed. This patch surpass it: for (UINTN i = 10; i < 20; ++i) { if (KernelData[place + i] == 0xC4) { KernelData[place + i] = 0xC6; + if (KernelData[(place + i) - 5] == 0x3B) { + KernelData[(place + i) - 5] = 0x00; + } break; } } Attached modified kernel_patcher.cpp and the entire _xcpm_bootstrap function. kernel_patcher.cpp.zip _xcpm_bootstrap.h.zip OK, accepted. 1 Link to comment Share on other sites More sharing options...
Slice Posted May 11, 2020 Share Posted May 11, 2020 On 4/18/2020 at 7:59 PM, crookedvult said: Sorry, I thought you asked for my EFI folder. I thought you wanted to see something about my boot files. Anyway; I've hidden BOOTX64.EFI, but still I have the "Boot from EFI" showing up. On 4/18/2020 at 10:42 AM, crookedvult said: So the following problem with Clover, I think, persists now for many builds (and I see many reports on the internet): For Windows 10, I have the duplicate "Boot from EFI" showing, and this one does not boot. The one that does boot is 'Boot Microsoft EFI Boot from EFI'. If I add this UUID to the hidden list, then both of them disappear. I have two separate SSD disks for Windows 10 and macOS. This is Clover 5112. I think I've tried a lot and I'm stuck now. Is this also something that Clover can better deal with in the future? You told about duplicate entry for Windows while I see no /efi/microsoft folder on your screen. Is it your screen of your working EFI? Link to comment Share on other sites More sharing options...
AndyYa Posted May 15, 2020 Share Posted May 15, 2020 On 4/18/2020 at 10:41 AM, AndyYa said: In boot.log present such lines: 2:511 0:019 Slot: 0 Type 24 4096MB 1333MHz Vendor=Kingston PartNo=9905471-006.A01LF SerialNo=04080102050F0E00 2:530 0:019 Slot: 2 Type 24 4096MB 1333MHz Vendor=Kingston PartNo=9905471-009.A00LF SerialNo=0400020D0700060F But Windows AIDA64 shows other values SerialNo : 48125FE0h and 402D706Fh Is that a bug or not ? In version 5117 (master, commit 813b0d22c) the memory information is displayed correctly : 3:007 0:019 Slot: 0 Type 24 4096MB 1333MHz Vendor=Kingston PartNo=9905471-006.A01LF SerialNo=48125FE0 3:027 0:019 Slot: 2 Type 24 4096MB 1333MHz Vendor=Kingston PartNo=9905471-009.A00LF SerialNo=402D706F Thanks :-) Link to comment Share on other sites More sharing options...
Dajjal Posted May 22, 2020 Share Posted May 22, 2020 On my X58A system anything past 5116 does not boot, just hangs at apple logo.When I tried 5117 I believe it hanged on ACPI errors or summ .Not sure what I can provide in terms of logs etc.Bless Link to comment Share on other sites More sharing options...
Slice Posted May 22, 2020 Share Posted May 22, 2020 2 hours ago, Dajjal said: On my X58A system anything past 5116 does not boot, just hangs at apple logo.When I tried 5117 I believe it hanged on ACPI errors or summ .Not sure what I can provide in terms of logs etc.Bless Take Clover 5118. Boot into it. Press F2. Start the macOS. Upload here the file /EFI/CLOVER/misc/preboot.log Link to comment Share on other sites More sharing options...
blackosx Posted May 22, 2020 Share Posted May 22, 2020 (edited) I have three issues which I would like to present. For ref, I am using release r5118 1 - I find that F10 screenshot no longer works from using legacy Clover, or at least I no longer get files in /EFI/CLOVER/misc. All works fine using UEFI Clover. 2 - Vector themes no longer seem to be using scroll bar images from the svg theme. They were working some time ago. But all I see now is the embedded green one. 3 - Booting Clover with a vector theme sometimes leaves me with memory allocation errors when trying to boot macOS. It's even more noticeable if I navigate the menus and/or switch to various other vector themes while in the GUI. Could there be some kind of memory leak when using vector themes? Edited May 22, 2020 by blackosx Link to comment Share on other sites More sharing options...
Slice Posted May 22, 2020 Share Posted May 22, 2020 1 - impossible. I may propose that FAT32 driver embedded into legacy Clover boot is wrong. I will try to reproduce this on QEMU. 2,3 may be. Should be investigated. Is it boot6 or boot7? Link to comment Share on other sites More sharing options...
Slice Posted May 22, 2020 Share Posted May 22, 2020 With boot6 screenshot is working. About memory leaks yes. It is my unfinished work with dynamic SVG. I will continue this development. 1 Link to comment Share on other sites More sharing options...
blackosx Posted May 22, 2020 Share Posted May 22, 2020 (edited) Thanks for testing. 1 - With boot6 and boot7 I can get other options saved to /EFI/misc, for example F2 for preboot.log or F8 for auto codec dump. Just not F10 for screenshot. Maybe keyboard F10 not being recognised? (Yet it works with clover UEFI) 2,3 - No problem. Just reporting what I see Edited May 22, 2020 by blackosx Link to comment Share on other sites More sharing options...
Slice Posted May 22, 2020 Share Posted May 22, 2020 What is your keyboard? USB or PS2? I can't reproduce the issue. Try Crtl-F10 Link to comment Share on other sites More sharing options...
blackosx Posted May 22, 2020 Share Posted May 22, 2020 USB. But I can’t see that being the problem as other Fn options work fine. Must be something strange going on at my end. I’ll try to debug later. Link to comment Share on other sites More sharing options...
Dajjal Posted May 22, 2020 Share Posted May 22, 2020 @Slice preboot.log Link to comment Share on other sites More sharing options...
blackosx Posted May 22, 2020 Share Posted May 22, 2020 (edited) 1 hour ago, blackosx said: USB. But I can’t see that being the problem as other Fn options work fine. Must be something strange going on at my end. I’ll try to debug later. Just ran a quick test with CLOVERX64.efi r5103 and screenshot with legacy boot works. I'll try to find which version breaks it. EDIT: F10 screenshot also works here with r5104, but not with r5105 or r5108. I'll try to find the exact commit between r5104 and r5105 tomorrow as I have to go now. Edited May 22, 2020 by blackosx Link to comment Share on other sites More sharing options...
Slice Posted May 22, 2020 Share Posted May 22, 2020 2 hours ago, Dajjal said: @Slice preboot.log Set <key>NoDefaultProperties</key> <false/> There is a change between versions. 1 1 Link to comment Share on other sites More sharing options...
blackosx Posted May 23, 2020 Share Posted May 23, 2020 18 hours ago, blackosx said: Just ran a quick test with CLOVERX64.efi r5103 and screenshot with legacy boot works. I'll try to find which version breaks it. EDIT: F10 screenshot also works here with r5104, but not with r5105 or r5108. I'll try to find the exact commit between r5104 and r5105 tomorrow as I have to go now. Of the 179 commits between r5104 and r5105 releases, I've managed to narrow it down to a range of 37 commits, which I know is a lot! Spoiler commit f8bf956a391080ac73cd908796c3220b80e4407f ** Builds & Boots. No screenshot! commit 69a65db69bb8371eb943aa8e9a3752ea073816d1 ** Builds & Boots to GUI but then freezes commit c6a59f85f902d91fbfc10f333bdd8734da7e90a9 ** Builds & Boots to GUI but then freezes commit 2a106ef6028fd0635af9d6fbd3ed6a3c8a476109 ** Builds & Boots to GUI but then freezes commit 5ddb6c1d7988a6a2120529027b7b540819127a5b ** compile failed commit d5497337293cfabd12ae6572f83eb260639e2539 ** Builds & Boots to GUI but then freezes commit bd9458b270118006a323e84ef2a5d1180401d0bc ** Builds & Boots to GUI but then freezes commit 0812cdb6d54a8f5a15a048d1fd18a39e1fdff27c ** Builds & Boots to GUI but then freezes commit 6417348844aa225a583b7938440ca04a6a82d048 ** Builds & Boots to GUI but then freezes commit 2fca0d97a519274b097a34c645edd33566a210a8 ** Builds & Boots to black screen then freezes commit 11bf50dc3a3ba1d0a16596caf64eb3afc22d3b88 ** Builds & Boots to black screen then freezes commit 1ee664b022b5a42dba863a3012b861f50a0f8e87 ** Builds & Boots to GUI but then freezes commit dbb5187ae5d8349a4e106b8c4f556b2175d49172 ** Builds & Boots to GUI but then freezes commit 78f899a92774bc311f08eb082cb9d0da6262fd0d ** compile fail commit 4bec5cab80a769370b14b3df9938863168018540 ** Builds & Boots to GUI but then freezes commit b9b89cc46a896e86601ae0c1d890cd68cd667980 ** compile failed commit ab6d11f4730f215335d92550d6e11243f6569366 ** Builds & Boots to black screen then freezes commit 4e63e897cbbe852a2ee8727f2f5974c2efbcaa25 ** compile failed commit c1f6e8137a93eb2d956f804cd2ffd7a6a0c936ac ** Builds & Boots to black screen then freezes commit fd327e2b1f78c36415a22e031970e3d2d6d019a1 ** compile failed commit fc2f226e8db47a9b6ec5e99db451a193bd371592 ** Compile Fail commit b3e48e0547baa4deec74a4cd660a6c03f4249f94 ** Compile Fail commit 8ff35c62955c63baae39d915f4ad89ea4eab2725 ** Compile Fail commit 99c79d0f9423fdda87593ca4f36ee2c62be73be4 ** Compile Fail commit ab391cd1cc7938f111a95299239e27cea03dada5 ** Compile Fail commit 24e779c6f8e0dfe0ba54add6d7e8a0f49a2cf839 ** compile fail commit 416fb4aa7743cd5ccdf39a51cfedf575a023e786 ** compile fail commit 2021c9b51d09ce7da42ec4bfcc4a58925a245832 ** compile fail commit 3b49178480c18af9b5d48e6279dd3307c0578a5f ** compile fail commit c0df0f87871e790b523006ba946b730fd093a2c6 ** compile fail commit 5b1c65486c04464bff6501dfac54933dbef98262 ** Builds & Boots to black screen then freezes commit dcdd8cc09179ead1fa8d9ef39b16d23480364a04 ** Builds & Boots to black screen then freezes commit 1acd6a43b4cbdfd747be585a48c2be133978ea60 ** compile fail commit 70ecc2b1e623573f737f70f40843c36ef33726d7 ** compile fail commit e8a29b1a293410a2471fa592e14f5600db5ae2bf ** compile fail commit a260cbad92219efdc3d6acecf9feb9a79819a61f ** compile fail commit 2de3b849570daed52becd7c089e0b63cf3f5d5d0 ** Builds & Boots.. and get a screenshot! There are from here and older on the Github commits page. Building from f8bf956a391080ac73cd908796c3220b80e4407f from March 5th boots but F10 does NOT produce a screenshot Building from 2de3b849570daed52becd7c089e0b63cf3f5d5d0 from Feb 29th boots and F10 does produce a screenshot All other commits between these either fail to compile, or the compiled binary boots to black or GUI and freeze so testing F10 is impossible, I'll look more when I get time, but I may not spot anything... 1 Link to comment Share on other sites More sharing options...
Slice Posted May 23, 2020 Share Posted May 23, 2020 Do you change boot file or CloverX64.efi file? Or both? Link to comment Share on other sites More sharing options...
blackosx Posted May 23, 2020 Share Posted May 23, 2020 Just CloverX64.efi Link to comment Share on other sites More sharing options...
Dajjal Posted May 23, 2020 Share Posted May 23, 2020 @Slice Unfortunately making that change results in the same behaviour.Guess I'll stick with 5116 as I can't go to a higher OS etc.Bless Link to comment Share on other sites More sharing options...
Slice Posted May 23, 2020 Share Posted May 23, 2020 2 hours ago, blackosx said: Of the 179 commits between r5104 and r5105 releases, I've managed to narrow it down to a range of 37 commits, which I know is a lot! Reveal hidden contents commit f8bf956a391080ac73cd908796c3220b80e4407f ** Builds & Boots. No screenshot! commit 69a65db69bb8371eb943aa8e9a3752ea073816d1 ** Builds & Boots to GUI but then freezes commit c6a59f85f902d91fbfc10f333bdd8734da7e90a9 ** Builds & Boots to GUI but then freezes commit 2a106ef6028fd0635af9d6fbd3ed6a3c8a476109 ** Builds & Boots to GUI but then freezes commit 5ddb6c1d7988a6a2120529027b7b540819127a5b ** compile failed commit d5497337293cfabd12ae6572f83eb260639e2539 ** Builds & Boots to GUI but then freezes commit bd9458b270118006a323e84ef2a5d1180401d0bc ** Builds & Boots to GUI but then freezes commit 0812cdb6d54a8f5a15a048d1fd18a39e1fdff27c ** Builds & Boots to GUI but then freezes commit 6417348844aa225a583b7938440ca04a6a82d048 ** Builds & Boots to GUI but then freezes commit 2fca0d97a519274b097a34c645edd33566a210a8 ** Builds & Boots to black screen then freezes commit 11bf50dc3a3ba1d0a16596caf64eb3afc22d3b88 ** Builds & Boots to black screen then freezes commit 1ee664b022b5a42dba863a3012b861f50a0f8e87 ** Builds & Boots to GUI but then freezes commit dbb5187ae5d8349a4e106b8c4f556b2175d49172 ** Builds & Boots to GUI but then freezes commit 78f899a92774bc311f08eb082cb9d0da6262fd0d ** compile fail commit 4bec5cab80a769370b14b3df9938863168018540 ** Builds & Boots to GUI but then freezes commit b9b89cc46a896e86601ae0c1d890cd68cd667980 ** compile failed commit ab6d11f4730f215335d92550d6e11243f6569366 ** Builds & Boots to black screen then freezes commit 4e63e897cbbe852a2ee8727f2f5974c2efbcaa25 ** compile failed commit c1f6e8137a93eb2d956f804cd2ffd7a6a0c936ac ** Builds & Boots to black screen then freezes commit fd327e2b1f78c36415a22e031970e3d2d6d019a1 ** compile failed commit fc2f226e8db47a9b6ec5e99db451a193bd371592 ** Compile Fail commit b3e48e0547baa4deec74a4cd660a6c03f4249f94 ** Compile Fail commit 8ff35c62955c63baae39d915f4ad89ea4eab2725 ** Compile Fail commit 99c79d0f9423fdda87593ca4f36ee2c62be73be4 ** Compile Fail commit ab391cd1cc7938f111a95299239e27cea03dada5 ** Compile Fail commit 24e779c6f8e0dfe0ba54add6d7e8a0f49a2cf839 ** compile fail commit 416fb4aa7743cd5ccdf39a51cfedf575a023e786 ** compile fail commit 2021c9b51d09ce7da42ec4bfcc4a58925a245832 ** compile fail commit 3b49178480c18af9b5d48e6279dd3307c0578a5f ** compile fail commit c0df0f87871e790b523006ba946b730fd093a2c6 ** compile fail commit 5b1c65486c04464bff6501dfac54933dbef98262 ** Builds & Boots to black screen then freezes commit dcdd8cc09179ead1fa8d9ef39b16d23480364a04 ** Builds & Boots to black screen then freezes commit 1acd6a43b4cbdfd747be585a48c2be133978ea60 ** compile fail commit 70ecc2b1e623573f737f70f40843c36ef33726d7 ** compile fail commit e8a29b1a293410a2471fa592e14f5600db5ae2bf ** compile fail commit a260cbad92219efdc3d6acecf9feb9a79819a61f ** compile fail commit 2de3b849570daed52becd7c089e0b63cf3f5d5d0 ** Builds & Boots.. and get a screenshot! There are from here and older on the Github commits page. Building from f8bf956a391080ac73cd908796c3220b80e4407f from March 5th boots but F10 does NOT produce a screenshot Building from 2de3b849570daed52becd7c089e0b63cf3f5d5d0 from Feb 29th boots and F10 does produce a screenshot All other commits between these either fail to compile, or the compiled binary boots to black or GUI and freeze so testing F10 is impossible, I'll look more when I get time, but I may not spot anything... Commit on 3 Mar contains new procedure for egScreenShot(). 8ff35c62955c63baae39d915f4ad89ea4eab2725 But I can't understand why it is not working for you and works for me, for Pene, for Jief as we tested and improve it. What is your compiler? 1 Link to comment Share on other sites More sharing options...
blackosx Posted May 23, 2020 Share Posted May 23, 2020 (edited) $ gcc -v Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Apple LLVM version 10.0.0 (clang-1000.11.45.5) Target: x86_64-apple-darwin17.7.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin Build with: build -D NO_GRUB_DRIVERS_EMBEDDED --conf=/Users/blackosx/src/BobTheBuilderV0.1/CloverBootloader/Conf -D USE_LOW_EBDA -p Clover.dsc -a X64 -b RELEASE -t GCC53 -n 9 But I don't think it matters what I'm using here as I first discovered F10 screenshot not working with legacy boot using CloverX64.efi from official release r5118 I'm attaching both my builds that I mentioned earlier. CLOVERX64(f8bf956a391080ac73cd908796c3220b80e4407f).efi.zip CLOVERX64(2de3b849570daed52becd7c089e0b63cf3f5d5d0).efi.zip EDIT: I’ll try adding some debug statements to egScreenShot() when I get time and see what I can find here. Edited May 23, 2020 by blackosx Link to comment Share on other sites More sharing options...
Slice Posted May 23, 2020 Share Posted May 23, 2020 4 hours ago, blackosx said: $ gcc -v Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Apple LLVM version 10.0.0 (clang-1000.11.45.5) Target: x86_64-apple-darwin17.7.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin Build with: build -D NO_GRUB_DRIVERS_EMBEDDED --conf=/Users/blackosx/src/BobTheBuilderV0.1/CloverBootloader/Conf -D USE_LOW_EBDA -p Clover.dsc -a X64 -b RELEASE -t GCC53 -n 9 But I don't think it matters what I'm using here as I first discovered F10 screenshot not working with legacy boot using CloverX64.efi from official release r5118 I'm attaching both my builds that I mentioned earlier. CLOVERX64(f8bf956a391080ac73cd908796c3220b80e4407f).efi.zip CLOVERX64(2de3b849570daed52becd7c089e0b63cf3f5d5d0).efi.zip EDIT: I’ll try adding some debug statements to egScreenShot() when I get time and see what I can find here. I just tried to boot with this Clover f8b... and it is not working at all. It hangs at GUI. Don't wonder because there were many problem switching from old sources to C++ and so there are many non-working commits. Anyway there is screenshot with Clover 5118. See right bottom digits. Link to comment Share on other sites More sharing options...
blackosx Posted May 23, 2020 Share Posted May 23, 2020 Strange that build is not working for you. I’ll test it again here just to make sure I sent you the right file: Anyway, yeah. I have successful screenshot from Clover r5118 when UEFI booting, just not legacy boot. The issue must be related to my setup here and I will run some debug when I get back to my hack. Link to comment Share on other sites More sharing options...
Recommended Posts