Jump to content
30960 posts in this topic

Recommended Posts

2 hours ago, Matgen84 said:

Hi

 

I can't restart or shutdown on my new Hack (Asus Prime Z390-A, i7 9700K) with Clover r4937. Does anybody know why?

 

Sorry if this issue is Off-Topic

It's all about broken NVRAM on Z390. Add EmuVariableUefi.efi in Drivers64UEFI and restart/shutdown will work.

EmuVariableUefi-64.efi.zip 

  • Thanks 2
4 hours ago, vandroiy2012 said:

It's all about broken NVRAM on Z390. Add EmuVariableUefi.efi in Drivers64UEFI and restart/shutdown will work.

EmuVariableUefi-64.efi.zip 

 

Thanks :)

 

I actually use AptioMemoryFix. Also I've to change for OSXAptioFix_Drv-64, Right or Not?

6 hours ago, Slice said:

We should erase the key from FakeSMC. Let it be always from Clover present or not to be depend on Model.

 

Looks like your ACPI has some difficulties for Clover. Provide, please, debug.log to see the moment of the stop.

 

It is surely on-topic.

There was several changes in Clover concerning CoffeeLake CPU. You should search what is the key.

First I will propose to set manually

CPU->Type = 0x0705

 

I use CPU->Type = 0x0705, can't reboot or shutdown (SMBIOS Imac19,1 and Imac19,2).

 

Debug.log attached

 

Config:

Asus Prime Z390-A

i7 9700K

MSI Radeon RX580

Corsair Vengeance LPX 3000Mhz 2x8Go

 

debug.log

On 6/1/2019 at 4:43 PM, Matgen84 said:

 

I use CPU->Type = 0x0705, can't reboot or shutdown (SMBIOS Imac19,1 and Imac19,2).

 

Debug.log attached

 

Config:

Asus Prime Z390-A

i7 9700K

MSI Radeon RX580

Corsair Vengeance LPX 3000Mhz 2x8Go

 

debug.log

In vain you did not do as Vandroiy2012 told you. "Install EmuVariableUefi"

You said that you use AptioMemoryFix but this is not enough!

Chipset 390 has no support for real NVRAM even with AptioMemoryFix. You have to install EmuVariableUefi-64.efi.

  • Like 3
On 6/1/2019 at 10:25 AM, Slice said:

Looks like your ACPI has some difficulties for Clover. Provide, please, debug.log to see the moment of the stop.

 

 

I checked the debug.log but didn't see anything.

 

On 6/1/2019 at 10:34 AM, arsradu said:

Running 4934 here. Aaand..no issues getting the ACPI tables on my side. So, as Slice mentioned, it's most likely something specific for your case. :)

 

Just wanted to share my own results, so you don't think it's a general issue with this version. Cause it doesn't look like it.

 

I mentioned the version which I used recently. But this has happened to me with the earlier version too. Just like you said probably this is specific to my case.

debug.log

  • Like 2
6 hours ago, Slice said:

You said the the boot freezed but in this debug.log there are no freezes. Reproduce the action with freeze.

 

I don't know how do I do that?  When the clover freeze I am making force restart from the case and next boot clover creates a new debug.log without freeze log. is clover capable of creating multiple debug.log for every boot?

 

Cause when I make a boot I can see just one debug.log file in the MISC folder.

Edited by telepati
2 hours ago, Cod32 said:

Will Clover in the future support Symbolic kext and kernel patcher like OpenCore, so you don't always have to update Clover to support the latest version of macOS?

 

Make pull request please.

Hi @Slice

 

Thanks for merging, but I made a very stupid typo in FakeCPUID patch, which can be checked here:

https://sourceforge.net/p/cloverefiboot/code/4939/tree//rEFIt_UEFI/Platform/kernel_patcher.c#l569

https://sourceforge.net/p/cloverefiboot/code/4939/tree//rEFIt_UEFI/Platform/kernel_patcher.c#l578

 

&HSieMojSearchModel[0] and &CataSearchModel[0] got reversed by accident, and I think you know the correct order. ;)

 

By the way, I also missed a prompt line like

DBG_RT(Entry, "...done!\n");

 

Please fix it! Thanks!

 

PMheart

  • Like 3
1 hour ago, PMheart said:

Hi @Slice

 

Thanks for merging, but I made a very stupid typo in FakeCPUID patch, which can be checked here:

https://sourceforge.net/p/cloverefiboot/code/4939/tree//rEFIt_UEFI/Platform/kernel_patcher.c#l569

https://sourceforge.net/p/cloverefiboot/code/4939/tree//rEFIt_UEFI/Platform/kernel_patcher.c#l578

 

&HSieMojSearchModel[0] and &CataSearchModel[0] got reversed by accident, and I think you know the correct order. ;)

 

By the way, I also missed a prompt line like

DBG_RT(Entry, "...done!\n");

 

Please fix it! Thanks!

 

PMheart

OK, committed.

  • Like 2
  • Thanks 2
11 hours ago, telepati said:

 

I don't know how do I do that?  When the clover freeze I am making force restart from the case and next boot clover creates a new debug.log without freeze log. is clover capable of creating multiple debug.log for every boot?

 

Cause when I make a boot I can see just one debug.log file in the MISC folder.

Yes, debug.log is concatenated with previous one so you can see first attempt up to freeze and then next successful start.

  • Like 1

Hi,

 

I have updated XCPM patches in kernel_patcher.c (is there still anyone using KernelXCPM now? ...) and checked some parts (RTC and PCI) in kext_patcher.c (although it turned out that all the old patches still remain available, I'd still like to do this renaming, just for confirmation. :))

 

Index: rEFIt_UEFI/Platform/kernel_patcher.c
===================================================================
--- rEFIt_UEFI/Platform/kernel_patcher.c	(revision 4940)
+++ rEFIt_UEFI/Platform/kernel_patcher.c	(working copy)
@@ -896,6 +896,11 @@
         STATIC UINT8 find[] = { 0x89, 0xD8, 0x04, 0xC4, 0x3C, 0x22 };
         STATIC UINT8 repl[] = { 0x89, 0xD8, 0x04, 0xC1, 0x3C, 0x22 };
         applyKernPatch(kern, find, sizeof(find), repl, comment);
+    // PMheart: attempt to add 10.15 compatibility
+    } else if (os_version < AsciiOSVersionToUint64("10.16")) {
+        STATIC UINT8 find[] = { 0x8D, 0x43, 0xC4, 0x3C, 0x22 };
+        STATIC UINT8 repl[] = { 0x8D, 0x43, 0xC1, 0x3C, 0x22 };
+        applyKernPatch(kern, find, sizeof(find), repl, comment);
     }
     
     DBG("Searching _xcpm_pkg_scope_msr ...\n");
@@ -1051,12 +1056,17 @@
         STATIC UINT8 find[] = { 0x89, 0xD8, 0x04, 0xC4, 0x3C, 0x22 };
         STATIC UINT8 repl[] = { 0x89, 0xD8, 0x04, 0xC6, 0x3C, 0x22 };
         applyKernPatch(kern, find, sizeof(find), repl, comment);
+    // PMheart: attempt to add 10.15 compatibility
+    } else if (os_version < AsciiOSVersionToUint64("10.16")) {
+        STATIC UINT8 find[] = { 0x8D, 0x43, 0xC4, 0x3C, 0x22 };
+        STATIC UINT8 repl[] = { 0x8D, 0x43, 0xC6, 0x3C, 0x22 };
+        applyKernPatch(kern, find, sizeof(find), repl, comment);
     }
 
     comment = "_cpuid_set_info_rdmsr";
-    // PMheart: attempt to add 10.14 compatibility
-    if (os_version >= AsciiOSVersionToUint64("10.12") && os_version < AsciiOSVersionToUint64("10.15")) {
-        // 10.12 - 10.14
+    // PMheart: bytes seem stable as of 10.12
+    if (os_version >= AsciiOSVersionToUint64("10.12")) {
+        // 10.12+
         STATIC UINT8 find[] = { 0xB9, 0xA0, 0x01, 0x00, 0x00, 0x0F, 0x32 };
         STATIC UINT8 repl[] = { 0xB9, 0xA0, 0x01, 0x00, 0x00, 0x31, 0xC0 };
         applyKernPatch(kern, find, sizeof(find), repl, comment);
@@ -1138,6 +1148,11 @@
     STATIC UINT8 find[] = { 0x89, 0xD8, 0x04, 0xC4, 0x3C, 0x22 };
     STATIC UINT8 repl[] = { 0x89, 0xD8, 0x04, 0xC6, 0x3C, 0x22 };
     applyKernPatch(kern, find, sizeof(find), repl, comment);
+  // PMheart: attempt to add 10.15 compatibility
+  } else if (os_version < AsciiOSVersionToUint64("10.16")) {
+      STATIC UINT8 find[] = { 0x8D, 0x43, 0xC4, 0x3C, 0x22 };
+      STATIC UINT8 repl[] = { 0x8D, 0x43, 0xC6, 0x3C, 0x22 };
+      applyKernPatch(kern, find, sizeof(find), repl, comment);
   }
   
   DBG("KernelIvyBridgeXCPM() <===\n");
@@ -1279,8 +1294,13 @@
   } else if (os_version < AsciiOSVersionToUint64("10.15")) {
     // 10.13/10.14
     STATIC UINT8 find[] = { 0x89, 0xD8, 0x04, 0xC4, 0x3C, 0x22 };
-    STATIC UINT8 repl[] = { 0x89, 0xD8, 0xC2, 0xC1, 0x3C, 0x22 };
+    STATIC UINT8 repl[] = { 0x89, 0xD8, 0x04, 0xC1, 0x3C, 0x22 };
     applyKernPatch(kern, find, sizeof(find), repl, comment);
+  // PMheart: attempt to add 10.15 compatibility
+  } else if (os_version < AsciiOSVersionToUint64("10.16")) {
+      STATIC UINT8 find[] = { 0x8D, 0x43, 0xC4, 0x3C, 0x22 };
+      STATIC UINT8 repl[] = { 0x8D, 0x43, 0xC1, 0x3C, 0x22 };
+      applyKernPatch(kern, find, sizeof(find), repl, comment);
   }
   
   DBG("KernelIvyE5XCPM() <===\n");
Index: rEFIt_UEFI/Platform/kext_patcher.c
===================================================================
--- rEFIt_UEFI/Platform/kext_patcher.c	(revision 4940)
+++ rEFIt_UEFI/Platform/kext_patcher.c	(working copy)
@@ -410,9 +410,9 @@
 STATIC UINT8   MavMoj3Search[]  = { 0x75, 0x2e, 0x0f, 0xb6 };
 STATIC UINT8   MavMoj3Replace[] = { 0xeb, 0x2e, 0x0f, 0xb6 };
 
-// RodionS: 10.14.4+
-STATIC UINT8   Moj4Search[]  = { 0x75, 0x33, 0x0f, 0xb7 };
-STATIC UINT8   Moj4Replace[] = { 0xeb, 0x33, 0x0f, 0xb7 };
+// RodionS: 10.14.4+ / 10.15 DB1
+STATIC UINT8   Moj4CataSearch[]  = { 0x75, 0x33, 0x0f, 0xb7 };
+STATIC UINT8   Moj4CataReplace[] = { 0xeb, 0x33, 0x0f, 0xb7 };
 
 //
 // We can not rely on OSVersion global variable for OS version detection,
@@ -442,7 +442,7 @@
     NumLion_X64 = SearchAndCount(Driver, DriverSize, LionSearch_X64, sizeof(LionSearch_X64));
     NumML  = SearchAndCount(Driver, DriverSize, MLSearch,  sizeof(MLSearch));
     NumMavMoj3 = SearchAndCount(Driver, DriverSize, MavMoj3Search, sizeof(MavMoj3Search));
-    NumMoj4 = SearchAndCount(Driver, DriverSize, Moj4Search, sizeof(Moj4Search));
+    NumMoj4 = SearchAndCount(Driver, DriverSize, Moj4CataSearch, sizeof(Moj4CataSearch));
   } else {
     NumLion_i386 = SearchAndCount(Driver, DriverSize, LionSearch_i386, sizeof(LionSearch_i386));
   }
@@ -469,7 +469,7 @@
     Num = SearchAndReplace(Driver, DriverSize, MavMoj3Search, sizeof(MavMoj3Search), MavMoj3Replace, 1);
     DBG_RT(Entry, "==> Mav/Yos/El/Sie/HS/Moj3 X64: %d replaces done.\n", Num);
   } else if (NumMoj4 == 1) {
-    Num = SearchAndReplace(Driver, DriverSize, Moj4Search, sizeof(Moj4Search), Moj4Replace, 1);
+    Num = SearchAndReplace(Driver, DriverSize, Moj4CataSearch, sizeof(Moj4CataSearch), Moj4CataReplace, 1);
     DBG_RT(Entry, "==> Mojave4 X64: %d replaces done.\n", Num);
   } else {
     DBG_RT(Entry, "==> Patterns not found - patching NOT done.\n");
@@ -841,8 +841,8 @@
 STATIC UINT8   BroadwellE_IOPCI_Repl_SieHS[] = { 0x48, 0x81, 0xFB, 0x00, 0x00, 0x00, 0x80 };
 
 // Mojave
-STATIC UINT8   BroadwellE_IOPCI_Find_Moj[] = { 0x48, 0x3D, 0x00, 0x00, 0x00, 0x40 };
-STATIC UINT8   BroadwellE_IOPCI_Repl_Moj[] = { 0x48, 0x3D, 0x00, 0x00, 0x00, 0x80 };
+STATIC UINT8   BroadwellE_IOPCI_Find_MojCata[] = { 0x48, 0x3D, 0x00, 0x00, 0x00, 0x40 };
+STATIC UINT8   BroadwellE_IOPCI_Repl_MojCata[] = { 0x48, 0x3D, 0x00, 0x00, 0x00, 0x80 };
 
 VOID BDWE_IOPCIPatch(UINT8 *Driver, UINT32 DriverSize, CHAR8 *InfoPlist, UINT32 InfoPlistSize, LOADER_ENTRY *Entry)
 {
@@ -864,7 +864,7 @@
   } else if (os_ver < AsciiOSVersionToUint64("10.14")) {
     count = SearchAndReplace(Driver, DriverSize, BroadwellE_IOPCI_Find_SieHS, sizeof(BroadwellE_IOPCI_Find_SieHS), BroadwellE_IOPCI_Repl_SieHS, 0);
   } else {
-    count = SearchAndReplace(Driver, DriverSize, BroadwellE_IOPCI_Find_Moj, sizeof(BroadwellE_IOPCI_Find_Moj), BroadwellE_IOPCI_Repl_Moj, 0);
+    count = SearchAndReplace(Driver, DriverSize, BroadwellE_IOPCI_Find_MojCata, sizeof(BroadwellE_IOPCI_Find_MojCata), BroadwellE_IOPCI_Repl_MojCata, 0);
   }
   
   if (count) {

 

Thanks!

  • Like 3
  • Thanks 1
22 hours ago, Matgen84 said:

Hi

 

Latest r4940 failed twice to install (compile with kids script UDK2018). Anyone have this problem?

Capture d’écran 2019-06-04 à 12.07.19.png

 

Uhm....nope. No such issue on my side. I've had 4940 a few days ago. Now I'm on 4945. But no...no such issues on my side.

1 minute ago, arsradu said:

 

Uhm....nope. No such issue on my side. I've had 4940 a few days ago. Now I'm on 4945. But no...no such issues on my side.

 

I use newfs_mdos command and reinstall Clover on EFI partition. Succeed. I don't know why there is such issue. I'm on 4945 now.

Just now, Matgen84 said:

 

Thanks. 

 

what is the reason for the installation failure

ESP already corrupted, otherwise why use newfs_mdos? Anyway when that happens you can find the reason by looking at the installation log of Installer.app by just looking at its Menu before closing the application.

  • Like 1
16 minutes ago, vector sigma said:

ESP already corrupted, otherwise why use newfs_mdos? Anyway when that happens you can find the reason by looking at the installation log of Installer.app by just looking at its Menu before closing the application.

 

 

I use newfs_msdos command because I supposed ESP corrupted when I try to install Clover. 
I did not know there was a install.log in Installer.app

 

Sorry for my bad english

×
×
  • Create New...