sam298 Posted May 7, 2020 Share Posted May 7, 2020 On 4/3/2020 at 1:51 PM, AntarcticP said: Hi Slice, coders Tried to switch back from OpenCore to Clover 5108 om my old AMD CPU (fx8350), Catalina 10.15.4 installed. I have updated the mask kernel patches using the correct syntax for Clover with the latest OC ones. Unfortunately it does not work with Clover, kernel panic during boot. Anyone else who has tested the latest Clover with mask kernel patches for AMD? thanks! I am looking to upgrade catalina. I'm not sure if anyone had success. I will give this a try. I have sound issues with opencore. Clover works flawlessly. Link to comment Share on other sites More sharing options...
Slice Posted May 7, 2020 Share Posted May 7, 2020 2 hours ago, Sherlocks said: slice can we use this amd kernel patch with mask and base? https://github.com/AMD-OSX/AMD_Vanilla/blob/0f1cc8edcc1cc80853fb2bbe5fc9ad1c63b13d8d/15h_16h/patches.plist Should be no problem <key>Base</key> <string>_cpu_topology_sort</string> Will be "Procedure" in Clover. Find and replace are the same. 1 Link to comment Share on other sites More sharing options...
Pene Posted May 8, 2020 Share Posted May 8, 2020 On 5/7/2020 at 6:22 PM, Sherlocks said: slice can we use this amd kernel patch with mask and base? https://github.com/AMD-OSX/AMD_Vanilla/blob/0f1cc8edcc1cc80853fb2bbe5fc9ad1c63b13d8d/15h_16h/patches.plist Any luck with that? Link to comment Share on other sites More sharing options...
LAbyOne Posted May 11, 2020 Share Posted May 11, 2020 (edited) @Pene Hi can I ask you please to make a little test with F10? I just noticed a curious behaviour when taking a screenshot, it ofc place the screenshot into misc folder, but also strangely create an empty folder called misc.png... (running v5116, not the latest commit) in case you already noticed and modified this, well nevermind... i will build and test with latest commit also EDIT: tried to build Clover r5116 (SHA: 9fae59d10) and got this (XCODE8) /Users/labyone/src/Clover/rEFIt_UEFI/Platform/AcpiPatcher.cpp:2053:3: error: use of undeclared identifier 'dropDSM' dropDSM = 0xFFFF; //by default we drop all OEM _DSM. They have no sense for us. ^ [CC] NvmExpress [CC] PcatIsaAcpi 1 error generated. make: *** [/Users/labyone/src/Clover/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit/OUTPUT/Platform/AcpiPatcher.obj] Error 1 build.py... : error 7000: Failed to execute command make tbuild [/Users/labyone/src/Clover/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit] build.py... : error F002: Failed to build module /Users/labyone/src/Clover/rEFIt_UEFI/refit.inf [X64, XCODE8, RELEASE] - Failed - Build end time: 13:35:58, May.11 2020 Build total time: 00:00:08 logout Saving session... ...copying shared history... ...saving history...truncating history files... ...completed. [Process completed] Edited May 11, 2020 by LAbyOne 1 Link to comment Share on other sites More sharing options...
chris1111 Posted May 11, 2020 Share Posted May 11, 2020 (edited) 2 hours ago, LAbyOne said: @Pene Hi can I ask you please to make a little test with F10? I just noticed a curious behaviour when taking a screenshot, it ofc place the screenshot into misc folder, but also strangely create an empty folder called misc.png... (running v5116, not the latest commit) in case you already noticed and modified this, well nevermind... i will build and test with latest commit also EDIT: tried to build Clover r5116 (SHA: 9fae59d10) and got this (XCODE8) /Users/labyone/src/Clover/rEFIt_UEFI/Platform/AcpiPatcher.cpp:2053:3: error: use of undeclared identifier 'dropDSM' dropDSM = 0xFFFF; //by default we drop all OEM _DSM. They have no sense for us. ^ [CC] NvmExpress [CC] PcatIsaAcpi 1 error generated. make: *** [/Users/labyone/src/Clover/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit/OUTPUT/Platform/AcpiPatcher.obj] Error 1 build.py... : error 7000: Failed to execute command make tbuild [/Users/labyone/src/Clover/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit] build.py... : error F002: Failed to build module /Users/labyone/src/Clover/rEFIt_UEFI/refit.inf [X64, XCODE8, RELEASE] - Failed - Build end time: 13:35:58, May.11 2020 Build total time: 00:00:08 logout Saving session... ...copying shared history... ...saving history...truncating history files... ...completed. [Process completed] Same here in both case compile error then multiple misc creation when selecting F10 multiple shot Edited May 11, 2020 by chris1111 1 Link to comment Share on other sites More sharing options...
Slice Posted May 11, 2020 Share Posted May 11, 2020 5 hours ago, LAbyOne said: @Pene Hi can I ask you please to make a little test with F10? I just noticed a curious behaviour when taking a screenshot, it ofc place the screenshot into misc folder, but also strangely create an empty folder called misc.png... (running v5116, not the latest commit) in case you already noticed and modified this, well nevermind... i will build and test with latest commit also EDIT: tried to build Clover r5116 (SHA: 9fae59d10) and got this (XCODE8) /Users/labyone/src/Clover/rEFIt_UEFI/Platform/AcpiPatcher.cpp:2053:3: error: use of undeclared identifier 'dropDSM' dropDSM = 0xFFFF; //by default we drop all OEM _DSM. They have no sense for us. ^ [CC] NvmExpress [CC] PcatIsaAcpi 1 error generated. make: *** [/Users/labyone/src/Clover/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit/OUTPUT/Platform/AcpiPatcher.obj] Error 1 build.py... : error 7000: Failed to execute command make tbuild [/Users/labyone/src/Clover/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit] build.py... : error F002: Failed to build module /Users/labyone/src/Clover/rEFIt_UEFI/refit.inf [X64, XCODE8, RELEASE] - Failed - Build end time: 13:35:58, May.11 2020 Build total time: 00:00:08 logout Saving session... ...copying shared history... ...saving history...truncating history files... ...completed. [Process completed] Fixed 2 Link to comment Share on other sites More sharing options...
LAbyOne Posted May 11, 2020 Share Posted May 11, 2020 (edited) @Slice thanks, build is fine now, misc.png folder still present into Clover after screenshot --> there is another 2 curious behaviors with buildme (hope @vector sigma can take a look) 1_ ) if menu 5 (build app with clover) is selected the script exit. (meaning no sym folder has been found) this ONLY happen when first cloning and building clover from git 2_ ) if using menu 4 (build app) this error does not occurs, BUT it will act as menu 5 (build app and clover) no big deal, just to inform you. Edited May 11, 2020 by LAbyOne added misc.png folder issue 1 Link to comment Share on other sites More sharing options...
Matgen84 Posted May 11, 2020 Share Posted May 11, 2020 33 minutes ago, LAbyOne said: @Slice thanks, build is fine now, misc.png folder still present into Clover after screenshot Same here: empty misc.png folder present after screenshot. The screenshot is in its usual place in misc folder. Link to comment Share on other sites More sharing options...
Pene Posted May 11, 2020 Share Posted May 11, 2020 52 minutes ago, LAbyOne said: @Slice thanks, build is fine now, misc.png folder still present into Clover after screenshot I cannot reproduce that misc.png thing. Also, looking at the code that saves the screenhot I really can't see any way a misc.png can be produces. Are you certain that the misc.png folder you have is related to screenshot? If you delete it it is recreated, and only when you make a screenshot? Link to comment Share on other sites More sharing options...
LAbyOne Posted May 11, 2020 Share Posted May 11, 2020 (edited) 36 minutes ago, Pene said: I cannot reproduce that misc.png thing. weird, as if you take look at previous quotes you'll find i'm not the only one getting this behaviour 36 minutes ago, Pene said: Also, looking at the code that saves the screenhot I really can't see any way a misc.png can be produces. Are you certain that the misc.png folder you have is related to screenshot? If you delete it it is recreated, and only when you make a screenshot? Totally. each time is recreated Edited May 11, 2020 by LAbyOne Link to comment Share on other sites More sharing options...
vector sigma Posted May 11, 2020 Share Posted May 11, 2020 1 hour ago, LAbyOne said: --> there is another 2 curious behaviors with buildme (hope @vector sigma can take a look) 1_ ) if menu 5 (build app with clover) is selected the script exit. (meaning no sym folder has been found) this ONLY happen when first cloning and building clover from git 2_ ) if using menu 4 (build app) this error does not occurs, BUT it will act as menu 5 (build app and clover) no big deal, just to inform you. Hi, the function that build the app check for the existence of ./CloverPackage/CloverV2/EFI/CLOVER/CLOVERX64.efi which should exist only if Clover was at least built once otherwise will tell "please, build Clover first!". The sym directory instead is created only if you created the package at least once (not your case), so yes it needs to be created when doesn't exists. Committed. Link to comment Share on other sites More sharing options...
vector sigma Posted May 11, 2020 Share Posted May 11, 2020 (edited) 2 hours ago, Pene said: I cannot reproduce that misc.png thing. Also, looking at the code that saves the screenhot I really can't see any way a misc.png can be produces. yep, should not change unless XStringW has a bug and "\\screenshot” goes to hell Lol. Anyway why taking up to 60 picture? For me only one is more than enough... for (UINTN Index = 0; Index < 60; Index++) { // ScreenshotName = PoolPrint(L"%a%d.png", ScreenShotName, Index); XStringW Name = SWPrintf("EFI\\CLOVER\\misc\\screenshot%lld.png", Index); if (!FileExists(SelfRootDir, Name)) { Status = egSaveFile(SelfRootDir, Name.wc_str(), FileData, FileDataLength); if (!EFI_ERROR(Status)) { break; } } } And the break should not be there with or without error? Not sure if it fail once next 59 times will be better... EDIT BOOLEAN FileExists(IN CONST EFI_FILE *Root, IN CONST CHAR16 *RelativePath) FileExists accept XStringW as parameter? EDIT no fixed Edited May 11, 2020 by vector sigma Link to comment Share on other sites More sharing options...
vector sigma Posted May 11, 2020 Share Posted May 11, 2020 @LAbyOne retry with last commit please, here works but haven't tried before.. Link to comment Share on other sites More sharing options...
Slice Posted May 11, 2020 Share Posted May 11, 2020 44 minutes ago, vector sigma said: yep, should not change unless XStringW has a bug and "\\screenshot” goes to hell Lol. Anyway why taking up to 60 picture? For me only one is more than enough... for (UINTN Index = 0; Index < 60; Index++) { // ScreenshotName = PoolPrint(L"%a%d.png", ScreenShotName, Index); XStringW Name = SWPrintf("EFI\\CLOVER\\misc\\screenshot%lld.png", Index); if (!FileExists(SelfRootDir, Name)) { Status = egSaveFile(SelfRootDir, Name.wc_str(), FileData, FileDataLength); if (!EFI_ERROR(Status)) { break; } } } And the break should not be there with or without error? Not sure if it fail once next 59 times will be better... EDIT BOOLEAN FileExists(IN CONST EFI_FILE *Root, IN CONST CHAR16 *RelativePath) FileExists accept XStringW as parameter? EDIT no fixed I need many screenshots to illustrate Clover possibility. And yes, commit a4ac6daf9 is right. 1 Link to comment Share on other sites More sharing options...
vector sigma Posted May 11, 2020 Share Posted May 11, 2020 Personally I did not like also: '}else{' instead of '} else {' and if (someting) { } vs the more readable version (imho): if (someting) { } 5 minutes ago, Slice said: I need many screenshots to illustrate Clover possibility. I thought about this later. 5 minutes ago, Slice said: And yes, commit a4ac6daf9 is right. I think that some warning(s) must be turned on somewhere, incompatible types should be reported and compilation stopped when it happens. Link to comment Share on other sites More sharing options...
Slice Posted May 11, 2020 Share Posted May 11, 2020 7 minutes ago, vector sigma said: Personally I did not like also: '}else{' instead of '} else {' and if (someting) { } vs the more readable version (imho): if (someting) { } I thought about this later. I think that some warning(s) must be turned on somewhere, incompatible types should be reported and compilation stopped when it happens. Using braces is a part of Tiano code style and we agree with this part. About incompatible types this is a question why compiler didn't see XStringW is not CHAR16*. Link to comment Share on other sites More sharing options...
LAbyOne Posted May 11, 2020 Share Posted May 11, 2020 (edited) 46 minutes ago, vector sigma said: @LAbyOne retry with last commit please, here works but haven't tried before.. Here with Clover r5116 (SHA: a4ac6daf9) still have the misc.png folder created or you were referring to menus? that works fine now Thanks Edited May 11, 2020 by LAbyOne Link to comment Share on other sites More sharing options...
vector sigma Posted May 11, 2020 Share Posted May 11, 2020 (edited) 22 minutes ago, LAbyOne said: Here with Clover r5116 (SHA: a4ac6daf9) still have the misc.png folder created Here works like a sharm, not sure what is going on. Can you edit the source in CloverBootloader/rEFIt_UEFI/libeg/libscreen.cpp, at line 560 replace the entire loop with this one below? for (UINTN Index = 0; Index < 60; Index++) { CHAR16 Name[128]; UnicodeSPrint(Name, 256, L"EFI\\CLOVER\\misc\\screenshot%lld.png", Index); if (!FileExists(SelfRootDir, Name)) { Status = egSaveFile(SelfRootDir, Name, FileData, FileDataLength); if (!EFI_ERROR(Status)) { break; } } } it's old c style using a buffer.. just to see if the problem persist.. Edited May 11, 2020 by vector sigma Link to comment Share on other sites More sharing options...
Pene Posted May 11, 2020 Share Posted May 11, 2020 2 hours ago, vector sigma said: BOOLEAN FileExists(IN CONST EFI_FILE *Root, IN CONST CHAR16 *RelativePath) FileExists accept XStringW as parameter? EDIT no fixed With latest @Jief_Machak changes, I think that XStringW can be passed as CHAR16* without further conversions. Should work both ways. I think he removed .wc_str() in many places, but it shouldn't affect functionality. Link to comment Share on other sites More sharing options...
LAbyOne Posted May 11, 2020 Share Posted May 11, 2020 1 hour ago, vector sigma said: Here works like a sharm, not sure what is going on. Can you edit the source in CloverBootloader/rEFIt_UEFI/libeg/libscreen.cpp, at line 560 replace the entire loop with this one below? for (UINTN Index = 0; Index < 60; Index++) { CHAR16 Name[128]; UnicodeSPrint(Name, 256, L"EFI\\CLOVER\\misc\\screenshot%lld.png", Index); if (!FileExists(SelfRootDir, Name)) { Status = egSaveFile(SelfRootDir, Name, FileData, FileDataLength); if (!EFI_ERROR(Status)) { break; } } } it's old c style using a buffer.. just to see if the problem persist.. This is Good! no additional folder created only shots into misc. Thanks 1 1 Link to comment Share on other sites More sharing options...
Pene Posted May 11, 2020 Share Posted May 11, 2020 3 minutes ago, LAbyOne said: This is Good! no additional folder created only shots into misc. Thanks Very strange, in that case it looks like a bug in XStringW() or SWPrintf(). @Jief_Machak any clue? Link to comment Share on other sites More sharing options...
vector sigma Posted May 11, 2020 Share Posted May 11, 2020 (edited) 24 minutes ago, Pene said: Very strange, in that case it looks like a bug in XStringW() or SWPrintf(). @Jief_Machak any clue? To exclude the first we can test with a hard coded path like this: XStringW Name = L"EFI\\CLOVER\\misc\\screenshot_test.png" Status = egSaveFile(SelfRootDir, Name, FileData, FileDataLength); if (EFI_ERROR(Status)) { MsgLog("Make screenshot_test fail\n"); } @LAbyOne, care to try the above (as a replacement of the entire loop) as we cannot reproduce the issue? Edited May 11, 2020 by vector sigma Link to comment Share on other sites More sharing options...
LAbyOne Posted May 11, 2020 Share Posted May 11, 2020 27 minutes ago, vector sigma said: To exclude the first we can test with a hard coded path like this: XStringW Name = L"EFI\\CLOVER\\misc\\screenshot_test.png" Status = egSaveFile(SelfRootDir, Name, FileData, FileDataLength); if (EFI_ERROR(Status)) { MsgLog("Make screenshot_test fail\n"); } @LAbyOne, care to try the above (as a replacement of the entire loop) as we cannot reproduce the issue? compil breaks CPP] Settings /Users/labyone/src/Clover/rEFIt_UEFI/libeg/libscreen.cpp:560:14: error: no viable conversion from 'const wchar_t [36]' to 'XStringW' XStringW Name = L"EFI\\CLOVER\\misc\\screenshot_test.png"; ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/labyone/src/Clover/rEFIt_UEFI/gui/../cpp_foundation/XString.h:139:2: note: candidate constructor not viable: no known conversion from 'const wchar_t [36]' to 'const XStringW &' for 1st argument XStringW(const XStringW& S) : XStringAbstract<wchar_t, XStringW>(S) {} ^ /Users/labyone/src/Clover/rEFIt_UEFI/gui/../cpp_foundation/XString.h:144:2: note: candidate constructor not viable: no known conversion from 'const wchar_t [36]' to 'const LStringW &' for 1st argument XStringW(const LStringW& S) : XStringAbstract<wchar_t, XStringW>(S) { } ^ /Users/labyone/src/Clover/rEFIt_UEFI/gui/../cpp_foundation/XString.h:142:2: note: candidate template ignored: substitution failure [with OtherXStringClass = wchar_t [36]]: no type named 'type' in '_xtools_enable_if_t<false, void>' XStringW(const OtherXStringClass& S) : XStringAbstract<wchar_t, XStringW>(S) {} ^ 1 error generated. make: *** [/Users/labyone/src/Clover/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit/OUTPUT/libeg/libscreen.obj] Error 1 build.py... : error 7000: Failed to execute command make tbuild [/Users/labyone/src/Clover/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit] build.py... : error F002: Failed to build module /Users/labyone/src/Clover/rEFIt_UEFI/refit.inf [X64, XCODE8, RELEASE] - Failed - Build end time: 00:14:13, May.12 2020 Build total time: 00:00:07 logout Saving session... ...copying shared history... ...saving history...truncating history files... ...completed. [Process completed] Link to comment Share on other sites More sharing options...
vector sigma Posted May 12, 2020 Share Posted May 12, 2020 (edited) Sorry I felt asleep, tomorrow Jief probably will fix it. That should compile: XStringW Name = L"EFI\\CLOVER\\misc\\screenshot_test.png"_XSW; Status = egSaveFile(SelfRootDir, Name.wc_str(), FileData, FileDataLength); if (EFI_ERROR(Status)) { MsgLog("Make screenshot_test fail\n"); } Edited May 12, 2020 by vector sigma Link to comment Share on other sites More sharing options...
Slice Posted May 12, 2020 Share Posted May 12, 2020 7 hours ago, Pene said: Very strange, in that case it looks like a bug in XStringW() or SWPrintf(). @Jief_Machak any clue? But these functions work in hundred places. Link to comment Share on other sites More sharing options...
Recommended Posts