Slice Posted September 23, 2021 Share Posted September 23, 2021 @Jief_Machak I had to make this change - Status = OcStorageInitFromFs(&mOpenCoreStorage, FileSystem, self.getCloverDirFullPath().wc_str(), NULL); + Status = OcStorageInitFromFs(&mOpenCoreStorage, FileSystem, NULL, NULL, self.getCloverDirFullPath().wc_str(), NULL); For the Clover compatibility with new OC. But I afraid it is not correct. See please. Link to comment Share on other sites More sharing options...
Slice Posted September 23, 2021 Share Posted September 23, 2021 This version works somehow. Not sure better or not. CLOVERX64.efi.zip @Jief_Machak I changed config-sample.plist so I think ccpv should be upgraded 1 Link to comment Share on other sites More sharing options...
yapan4 Posted September 23, 2021 Share Posted September 23, 2021 (edited) 30 minutes ago, Slice said: This version works somehow. Not sure better or not. CLOVERX64.efi.zip 783.45 kB · 2 downloads @Jief_Machak I changed config-sample.plist so I think ccpv should be upgraded Boot ok only with old OpenRuntime.efi yapan4_logs_for_Slice.zip Edited September 23, 2021 by yapan4 Link to comment Share on other sites More sharing options...
Jief_Machak Posted September 23, 2021 Share Posted September 23, 2021 18 minutes ago, Slice said: Status = OcStorageInitFromFs(&mOpenCoreStorage, FileSystem, self.getCloverDirFullPath().wc_str(), NULL); This was line 869 of main.cpp and it's already done in the repo but in the branch "0.7.3branch". You probably switch branch for OpenCorePkg but not for Clover. That's to be avoided because you're committing to master changes that are needed for the 0.7.3branch. Why did you add "FW_FEATURE_SUPPORTS_LARGE_BASESYSTEM". it's not used anywhere so far ? And gEfiAudioDecodeProtocolGuid ? Here it's compiling fine without it... Looks like you remerge the commits I cancelled about the upgrade to 0.6.5 that wasn't complete. I guess you didn't re-clone or did the git reset --hard. I've deleted these commits, so we can be back to the master branch how it was before I messed things up with the OpenCore upgrade. If you got a message saying you should merge your local changes, please don't. Re-clone instead. The commit "implement ExtendedFirmwareFeatures" is lost, sorry. But if we can wait a bit before re-doing it, it'll be simpler. Link to comment Share on other sites More sharing options...
Jief_Machak Posted September 23, 2021 Share Posted September 23, 2021 @Slice There is one thing I didn't import yet in the 0.7.3branch : the cpuid you added in OC (file OpenCorePkg/Library/OcAppleKernelLib/CommonPatches.c and file OpenCoreKernelPatch.c) I didn't import because the file structure has changed and I don't know where to put it now. It looks like there is something in OC about that. Don't know if it's new in OC. To commit in the branch, you have to be sure that OpenCorePkg is on branch "0.7.3branch2" (do a git checkout 0.7.3branch2 in Clover/OpenCorePkg folder) and that Clover is on branch "0.7.3branch" (do a git checkout 0.7.3branch in Clover folder) You easily check which branch you are on by issuing "git status". Here is a version with a panic message instead of a freeze if OpenRuntime is not right. CloverX64-2021-09-23-22-55-36-8f3b2f0-jief.zip 2 Link to comment Share on other sites More sharing options...
Slice Posted September 24, 2021 Share Posted September 24, 2021 Oops... I'll have my own local repo until I will have a possibility reimplement my changes into new master branch especially CPUID and ExtendedFeatures. I have to report that I successfully updated Monterey to beta 7 using the version from previous post and old Openruntime.efi. Update method is follow: 1. Boot by new Clover and old Openruntime, old config.plist. 2. SystemPreferences->Update->OK 3. Rest until finish. 4. After return I see OS version 21A5522h 2 Link to comment Share on other sites More sharing options...
eSaF Posted September 24, 2021 Share Posted September 24, 2021 22 minutes ago, Slice said: 3. Rest until finish. I like this 3rd step, yes we all needed plenty of this because of this Beta 7. 1 Link to comment Share on other sites More sharing options...
Slice Posted September 24, 2021 Share Posted September 24, 2021 1 hour ago, eSaF said: I like this 3rd step, yes we all needed plenty of this because of this Beta 7. Moreover I was going to sleep and returned to the computer only at morning. But I forgot to say that I already have the model iMac17,1 so I am not sure if all users must change it. 2 Link to comment Share on other sites More sharing options...
Slice Posted September 24, 2021 Share Posted September 24, 2021 10 hours ago, Jief_Machak said: This was line 869 of main.cpp and it's already done in the repo but in the branch "0.7.3branch". You probably switch branch for OpenCorePkg but not for Clover. That's to be avoided because you're committing to master changes that are needed for the 0.7.3branch. Why did you add "FW_FEATURE_SUPPORTS_LARGE_BASESYSTEM". it's not used anywhere so far ? And gEfiAudioDecodeProtocolGuid ? Here it's compiling fine without it... Looks like you remerge the commits I cancelled about the upgrade to 0.6.5 that wasn't complete. I guess you didn't re-clone or did the git reset --hard. I've deleted these commits, so we can be back to the master branch how it was before I messed things up with the OpenCore upgrade. If you got a message saying you should merge your local changes, please don't. Re-clone instead. The commit "implement ExtendedFirmwareFeatures" is lost, sorry. But if we can wait a bit before re-doing it, it'll be simpler. FW_FEATURE_SUPPORTS_LARGE_BASESYSTEM is a definition that is not used directly as many other definitions somehow discovered by acidanthera. It is proposed to be used by users in their config.plists. gEfiAudioDecodeProtocolGuid - I just wonder why you and acidanthera didn't see this mistake. May be because you are using clang? I compiled it with gcc and got linker error "undefined symbol in OpenCoreLib". I will not work with a branch staying at master branch. I will wait while you finish your work and return to master. 1 Link to comment Share on other sites More sharing options...
eSaF Posted September 24, 2021 Share Posted September 24, 2021 9 minutes ago, Slice said: Moreover I was going to sleep and returned to the computer only at morning. But I forgot to say that I already have the model iMac17,1 so I am not sure if all users must change it. Yes Bro I fully understand. I have done exactly that many times, letting the process finish while I sleep. Solving hack problems can be very taxing and tiresome at times so taking a nap in between can be very refreshing and helpful to your mental health. 2 Link to comment Share on other sites More sharing options...
Jief_Machak Posted September 24, 2021 Share Posted September 24, 2021 1 hour ago, Slice said: FW_FEATURE_SUPPORTS_LARGE_BASESYSTEM is a definition that is not used directly as many other definitions somehow discovered by acidanthera. It is proposed to be used by users in their config.plists. If it's not used in code, better not to import it now. This will be imported automatically with the next upgrade to the OpenCorePkg component. My plan is to keep up with OpenCore version, as it should now be easy to upgrade using rebase git technique. But that would only work if there is not conflict. 1 hour ago, Slice said: gEfiAudioDecodeProtocolGuid - I just wonder why you and acidanthera didn't see this mistake. May be because you are using clang? I compiled it with gcc and got linker error "undefined symbol in OpenCoreLib". I'm using GCC all the time and it's compiling here. I'm not saying it's wrong to have that here, it probably should, but I try to keep OC modification to a bare minimum so there is less chance of conflict for the next OC upgrade. Here it's compiling both Gcc and xcode. 1 hour ago, Slice said: I will wait while you finish your work and return to master. I'm doing a test with MatGen. If it works, I'll make the 0.7.3branch the new master. 4 hours ago, Slice said: I have to report that I successfully updated Monterey to beta 7 using the version from previous post and old Openruntime.efi. I'm not sure what version, but if you use an Openruntime v11, it means it was tu current version of Clover, not the one that integrates OC 0.7.3. Am I right ? 1 Link to comment Share on other sites More sharing options...
Slice Posted September 24, 2021 Share Posted September 24, 2021 In my EFI folder I changed the file CloverX64.efi and no more. So Openruntime.efi remains june version. Link to comment Share on other sites More sharing options...
Jief_Machak Posted September 24, 2021 Share Posted September 24, 2021 6 hours ago, Slice said: In my EFI folder I changed the file CloverX64.efi and no more. So Openruntime.efi remains june version. Yes understood that. But if that works, it means you are NOT using the Clover I've sent that use OC 0.7.3. OC check OpenRuntime version and stop if version is not right with a message "incompatible version". Because OC stop (CpuDeadLoop), Clover GUI is frozen. If implemented a check before that gives a panic message, so at least people know. New Clover that uses OC 0.7.3 cannot use that same openruntime as before when it was OC 0.6.1. It is just impossible. It seems to work, so I'll convert that branch to master, keeping the old master as something like "0.6.1branch" in case we need to access it sometime. 5 Link to comment Share on other sites More sharing options...
PG7 Posted September 24, 2021 Share Posted September 24, 2021 1 hour ago, Jief_Machak said: Yes understood that. But if that works, it means you are NOT using the Clover I've sent that use OC 0.7.3. OC check OpenRuntime version and stop if version is not right with a message "incompatible version". Because OC stop (CpuDeadLoop), Clover GUI is frozen. If implemented a check before that gives a panic message, so at least people know. New Clover that uses OC 0.7.3 cannot use that same openruntime as before when it was OC 0.6.1. It is just impossible. It seems to work, so I'll convert that branch to master, keeping the old master as something like "0.6.1branch" in case we need to access it sometime. tested here on All In One Asus Vivo AiO V241IC-R it worked perfect with the Cloverx64 and OpenRuntime v12.efi set posted by Jief thanks Spoiler 2 Link to comment Share on other sites More sharing options...
Jief_Machak Posted September 25, 2021 Share Posted September 25, 2021 I've re-assigned master, for both Clover and OpenCorePkg. It means now that master is using 0.7.3 version of OpenCore : update your OpenRuntime.efi. And please, call it OpenRuntime-v12.efi. Reason for that is that, when we'll have a v13, the v12 will be automatically ignored and you'll be able to have OpenRuntime-v12.efi AND OpenRuntime-v13.efi in the same driver folder and Clover will pick the right one : no more panic when you'll switch version. NOTE : please re-clone, or make sure that Clover AND OpenCorePkg pointing to the new master. I've tested with buildme and buildme XCODE8 from scratch, so if it doesn't compile, it's because you got a wrong version (old or deleted commit). 15 hours ago, MifJpnAlphaPlus said: Hello. % git pull --recurse-submodules % ./buildme And buildall. % git rev-parse HEAD 583e2dd5dacc278c34a67652521a628ed13d4e3d I adapted the package to USBStick and tried booting. ... EXIT BS: START ... +++++++++++++++++++++++++++++++++++++ and STOP 2021-09-24_14-29_BOOTX64.EFI.log.zip What should I do? Maybe USB/FixOwnership is wrong ? 1 2 Link to comment Share on other sites More sharing options...
Matgen84 Posted September 25, 2021 Share Posted September 25, 2021 (edited) @Jief_Machak I think it will be interesting to build Openruntime with his incremental number version ( OpenRuntime-v12.efi), to identify it immediately. Just an opinion, but I don't know if it's possible. I can build Clover successfully. Thanks. Please, can you re-add @Slice commit for macOS Monterey Beta 7. When you'll have time Edited September 25, 2021 by Matgen84 1 Link to comment Share on other sites More sharing options...
Jief_Machak Posted September 25, 2021 Share Posted September 25, 2021 12 minutes ago, Matgen84 said: I think it will be interesting to build Openruntime with his incremental number version Good luck suggesting that to OC team. 1 Link to comment Share on other sites More sharing options...
Matgen84 Posted September 25, 2021 Share Posted September 25, 2021 (edited) 19 minutes ago, Jief_Machak said: Good luck suggesting that to OC team. When we build Clover, we build Openruntime too. So It can be rename OpenRuntime-vXX.efi in CloverPackage. It's tha what I want to say. Openruntime for Clover(8Ko) is not the Openruntime for OC (20ko), or I'm wrong, sorry. Can't build Clover despite good HEAD: In file included from /Users/mathieu/src/CloverBootloader/rEFIt_UEFI/Settings/ConfigPlist/Config_GUI.cpp:14: In file included from /Users/mathieu/src/CloverBootloader/rEFIt_UEFI/Settings/ConfigPlist/ConfigPlistClass.h:27: In file included from /Users/mathieu/src/CloverBootloader/rEFIt_UEFI/Settings/ConfigPlist/../../Platform/cpu.h:15: In file included from /Users/mathieu/src/CloverBootloader/MdePkg/Include/Register/Intel/../../../../rEFIt_UEFI/Platform/../include/OC.h:25: /Users/mathieu/src/CloverBootloader/OpenCorePkg/Include/Acidanthera/Library/OcMainLib.h:46:2: error: "Unknown target definition" #error "Unknown target definition" ^ 1 error generated. note: Using new build system note: Planning build note: Using build description from disk ** BUILD FAILED ** Edited September 25, 2021 by Matgen84 Link to comment Share on other sites More sharing options...
Sherlocks Posted September 25, 2021 Share Posted September 25, 2021 Good luck suggesting that to OC team.hi jief, can you consider emulated nvram support? old clover support emulated nvram feature. but now latest clover is not supporting it.Sent from my SM-N960N using Tapatalk Link to comment Share on other sites More sharing options...
Matgen84 Posted September 25, 2021 Share Posted September 25, 2021 (edited) @Jief_Machak I re-clone. Unfortunately, can't build again: enerating BootSectors make: Nothing to be done for `all'. Done! In file included from /Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/platformdata.cpp:7: In file included from /Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/smbios.h:15: In file included from /Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/../Platform/cpu.h:15: In file included from /Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/../include/OC.h:25: /Users/mathieu/src/Cloverbootloader/OpenCorePkg/Include/Acidanthera/Library/OcMainLib.h:46:2: error: "Unknown target definition" #error "Unknown target definition" ^ 1 error generated. note: Using new build system note: Planning build note: Constructing build description ** BUILD FAILED ** HEAD is now at c8e7ee0a Disable reading config.plist. HEAD is now at 0bca61ad3 Handle multiple OpenRuntime version. Edited September 25, 2021 by Matgen84 1 Link to comment Share on other sites More sharing options...
Matgen84 Posted September 25, 2021 Share Posted September 25, 2021 44 minutes ago, MifJpnAlphaPlus said: Please let me know if I make a mistake.🙂 Thank you. Thanks a lot 😊 I already use --recurse-sudmodules args, without success. Now, I create a new folder with your command line: all works. Don't on an existing CloverBootloader folder. Strange. 1 Link to comment Share on other sites More sharing options...
Jief_Machak Posted September 25, 2021 Share Posted September 25, 2021 1 hour ago, Matgen84 said: @Jief_Machak I re-clone. Unfortunately, can't build again: enerating BootSectors make: Nothing to be done for `all'. Done! In file included from /Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/platformdata.cpp:7: In file included from /Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/smbios.h:15: In file included from /Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/../Platform/cpu.h:15: In file included from /Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/../include/OC.h:25: /Users/mathieu/src/Cloverbootloader/OpenCorePkg/Include/Acidanthera/Library/OcMainLib.h:46:2: error: "Unknown target definition" #error "Unknown target definition" ^ 1 error generated. note: Using new build system note: Planning build note: Constructing build description ** BUILD FAILED ** HEAD is now at c8e7ee0a Disable reading config.plist. HEAD is now at 0bca61ad3 Handle multiple OpenRuntime version. Found the same. It's the validator. Fixed. It's fixed. 2 hours ago, MifJpnAlphaPlus said: I'm sorry to have rushed you into such an important idea. I want to cooperate fully! I'll ansered your lead and hold off on the build for now. I made the following log from the Clover, BLT, and OpenRuntime-v12.efi I received. 2021-09-25_08-45_CloverX64-2021-09-23-22-55-36-8f3b2f0-jief.efi.log.zip 21.18 kB · 2 downloads Cannot boot.😞 I will open everything. EFI.2109251753.zip I know it is hard for you to use your precious time, but please help me. Thank you very much. Have you checked USB/FixOwnership ? 2 Link to comment Share on other sites More sharing options...
Jief_Machak Posted September 25, 2021 Share Posted September 25, 2021 @Slice Thing to have a look : in CommonPatches.c, importing KernelCPUIDPatch() if needed (maybe there is a kernel cpuid patch mechanism we can use instead ?). Link to comment Share on other sites More sharing options...
Matgen84 Posted September 25, 2021 Share Posted September 25, 2021 @Jief_Machak Please, don't forget to reimplement the @Slice commit about Update to Monterey Beta 7. Have a nice day. Link to comment Share on other sites More sharing options...
Slice Posted September 25, 2021 Share Posted September 25, 2021 3 hours ago, Jief_Machak said: I've re-assigned master, for both Clover and OpenCorePkg. It means now that master is using 0.7.3 version of OpenCore : update your OpenRuntime.efi. And please, call it OpenRuntime-v12.efi. Reason for that is that, when we'll have a v13, the v12 will be automatically ignored and you'll be able to have OpenRuntime-v12.efi AND OpenRuntime-v13.efi in the same driver folder and Clover will pick the right one : no more panic when you'll switch version. NOTE : please re-clone, or make sure that Clover AND OpenCorePkg pointing to the new master. I've tested with buildme and buildme XCODE8 from scratch, so if it doesn't compile, it's because you got a wrong version (old or deleted commit). Maybe USB/FixOwnership is wrong ? And old one can be renamed to -v11? Link to comment Share on other sites More sharing options...
Recommended Posts