Jump to content

1,735 posts in this topic

Recommended Posts

Advertisement
Posted (edited)
22 minutes ago, PMheart said:

Thanks a lot!

 

Looks like the logic has slightly been changed, please try this kernel patch (temporarily) with Clover KernelToPatch:

 

find

00 85 C0 0F 84 87 00 00 00 49

 

repl

00 85 C0 90 90 90 90 90 90 49

 

Hopefully Clover kext injection works after patching, if it does, I will update the source.

 

Seems to be working. Thank you very much for this. :)

 

However, on my RX 580 (and most likely other AMD cards, as well), it's booting to black screen... Including with WEG (maybe that needs an update, as well)?

The old kext to patch method (disable AGDP) doesn't work anymore either.

 

But...it's not getting stuck anymore. So...my guess is that your patch worked. But now we need a new patch for graphics.

Edited by arsradu

Share this post


Link to post
Share on other sites

@CMMChris @Moviemakergr I think your Graphics or something alike is the actual thing that should be to blame. My patch should be fine I guess.

 

@arsradu Of course, Lilu and its plugins haven't got updated, which will be unloaded by default on this unsupported Darwin version, try `-lilubetaall`.

 

Ah, Vit has just committed: https://github.com/acidanthera/Lilu/commit/2da161ee9959320f25607cf20767f690ac720caf

Share this post


Link to post
Share on other sites
Posted (edited)
16 minutes ago, PMheart said:

 

@arsradu Of course, Lilu and its plugins haven't got updated, which will be unloaded by default on this unsupported Darwin version, try `-lilubetaall`.

 

Ah, Vit has just committed: https://github.com/acidanthera/Lilu/commit/2da161ee9959320f25607cf20767f690ac720caf

 

Yep, that's what I thought. :) 

 

-lilubetaall flag still works apparently. With the current version.

 

Catalina is currently installing.

 

THANK YOU!

Edited by arsradu

Share this post


Link to post
Share on other sites
Posted (edited)

Does the kernel seem to run on the same CPUs as the Mojave one?

This information that Catalina shell run into read-only partition seems the most puzzling to me. An OS needs to use swap, temporary files and so on to run properly, on a read only volume that is impossible. Perhaps the OS will be splitted in two: the kernel and the basic functions on a read only partition, and the rest on another, where temporary files and swap will be possible. If so, Clover shall need to be modified pretty big. Does the OS still support OpenGl or it is Metal only?

Can anyone who managed to install it properly confirm or disprove thoose ?

Perhaps for those with graphics issues a patch for unsupported Macs like the ones developed into the Macrumors board shall save the day, like the dosdude1 patch that allowed me to run Mojave on an older, non-Metal GPU. 

Edited by Vyzantion

Share this post


Link to post
Share on other sites
Posted (edited)

EDIT: Merged in Clover r4938.

 

OK, and this is the binary to test (for kext injection under 10.15):

Clover-4937-1015-kext-injection.zip (Please DO NOT use this now!)

 

 

@Slice This is the basic diff, please review it, I am too lazy to post it again on Clover thread ;):

Index: rEFIt_UEFI/Platform/Settings.c
===================================================================
--- rEFIt_UEFI/Platform/Settings.c	(revision 4937)
+++ rEFIt_UEFI/Platform/Settings.c	(working copy)
@@ -6373,6 +6373,8 @@
           if (Prop != NULL && Prop->string != NULL && Prop->string[0] != '\0') {
             if (AsciiStrStr (Prop->string, "Install%20OS%20X%20Mavericks.app")) {
               OSVersion = AllocateCopyPool (5, "10.9");
+            } else if (AsciiStrStr (Prop->string, "Install%20macOS%20Catalina") || AsciiStrStr (Prop->string, "Install%20macOS%2010.15%20Beta")) { // FIXME: Remove Beta after final release
+              OSVersion = AllocateCopyPool (5, "10.15");
             } else if (AsciiStrStr (Prop->string, "Install%20macOS%20Mojave") || AsciiStrStr (Prop->string, "Install%20macOS%2010.14")) {
               OSVersion = AllocateCopyPool (6, "10.14");
             } else if (AsciiStrStr (Prop->string, "Install%20macOS%20High%20Sierra") || AsciiStrStr (Prop->string, "Install%20macOS%2010.13")) {
Index: rEFIt_UEFI/Platform/kext_inject.c
===================================================================
--- rEFIt_UEFI/Platform/kext_inject.c	(revision 4937)
+++ rEFIt_UEFI/Platform/kext_inject.c	(working copy)
@@ -623,8 +623,8 @@
 UINT8   KBEMLDebugSearchEXT[]    = { 0xE8, 0x3E, 0x00, 0x00, 0x00, 0xE9, 0x09, 0x00, 0x00, 0x00, 0x48, 0x8B, 0x7D, 0xE0, 0xE8 };
 UINT8   KBEMLDebugReplaceEXT[]   = { 0xE8, 0x3E, 0x00, 0x00, 0x00, 0x90, 0x90, 0x90, 0x90, 0x90, 0x48, 0x8B, 0x7D, 0xE0, 0xE8 };
 
-// Yosemite
-// PMheart: Universal for 10.10 - 10.13, maybe still ok for furture ver
+// Yosemite - High Sierra
+// PMheart: Universal for 10.10 - 10.13
 UINT8   KBEYosECSieHighSearchEXT[]  = { 0xE8, 0x25, 0x00, 0x00, 0x00, 0xEB, 0x05, 0xE8 };
 UINT8   KBEYosECSieHighReplaceEXT[] = { 0xE8, 0x25, 0x00, 0x00, 0x00, 0x90, 0x90, 0xE8 };
 
@@ -659,28 +659,35 @@
 UINT8   KBESieDebugSearchSIP[]   = { 0x31, 0xC9, 0x39, 0xC1, 0x0F, 0x85, 0x3C, 0x00, 0x00, 0x00, 0x48, 0x8B, 0x85 };
 UINT8   KBESieDebugReplaceSIP[]  = { 0x31, 0xC9, 0x39, 0xC1, 0xEB, 0x80, 0x90, 0x90, 0x90, 0x90, 0x48, 0x8B, 0x85 };
 
-// Mojave (EXT)
-// PMheart: checked  KBEMoja*EXT
-// Need to pair with KBEHighSieMoja*SIP
-UINT8   KBEMojaSearchEXT[]       = { 0xE8, 0xAF, 0x00, 0x00, 0x00, 0xEB, 0x05, 0xE8 };
-UINT8   KBEMojaReplaceEXT[]      = { 0xE8, 0xAF, 0x00, 0x00, 0x00, 0x90, 0x90, 0xE8 };
+// Mojave / Catalina (EXT)
+// PMheart: checked  KBEMojaCata*EXT
+// Need to pair with KBEHighSieMoja*SIP (10.13 / 10.14) / KBECata*SIP (10.15)
+UINT8   KBEMojaCataSearchEXT[]       = { 0xE8, 0xAF, 0x00, 0x00, 0x00, 0xEB, 0x05, 0xE8 };
+UINT8   KBEMojaCataReplaceEXT[]      = { 0xE8, 0xAF, 0x00, 0x00, 0x00, 0x90, 0x90, 0xE8 };
 
 // High Sierra / Mojave 10.14 - 10.14.3 (SIP)
 // PMheart: for 10.14.4+, see KBEMoja4SearchSIP and KBEMoja4ReplaceSIP below
 // PMheart: checked KBEHighSieMoja3*SIP
-// Need to pair with KBEMoja*EXT
+// Need to pair with KBEMojaCata*EXT
 UINT8   KBEHighSieMoja3SearchSIP[]    = { 0xC3, 0x48, 0x85, 0xDB, 0x74, 0x69, 0x48, 0x8B, 0x03, 0x48, 0x89, 0xDF, 0xFF, 0x50, 0x28, 0x48 };
 UINT8   KBEHighSieMoja3ReplaceSIP[]   = { 0xC3, 0x48, 0x85, 0xDB, 0xEB, 0x12, 0x48, 0x8B, 0x03, 0x48, 0x89, 0xDF, 0xFF, 0x50, 0x28, 0x48 };
 
 // Mojave 10.14.4+ (SIP)
 // PMheart: checked KBEMoja4*SIP
-// Need to pair with KBEMoja*EXT
+// Need to pair with KBEMojaCata*EXT
 UINT8   KBEMoja4SearchSIP[]           = { 0x48, 0x85, 0xC0, 0x74, 0x6C, 0x48, 0x89, 0xC3, 0x48, 0x8B, 0x00, 0x48, 0x89, 0xDF, 0xFF, 0x50, 0x28, 0x48 };
 UINT8   KBEMoja4ReplaceSIP[]          = { 0x48, 0x85, 0xC0, 0xEB, 0x15, 0x48, 0x89, 0xC3, 0x48, 0x8B, 0x00, 0x48, 0x89, 0xDF, 0xFF, 0x50, 0x28, 0x48 };
 
+// Catalina (SIP)
+// PMheart: checked
+// Need to pair with KBEMojaCata*EXT
+UINT8   KBECataSearchSIP[]            = { 0x00, 0x85, 0xC0, 0x0F, 0x84, 0x87, 0x00, 0x00, 0x00, 0x49 };
+UINT8   KBECataReplaceSIP[]           = { 0x00, 0x85, 0xC0, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x49 };
+
 // Mojave 10.14 - 10.14.3
 // Avoid race condition in OSKext::removeKextBootstrap when using booter kexts without keepsyms=1.
 // by vit9696
+// Need to pair with KBEMojaCata*EXT and KBEHighSieMoja3*SIP
 UINT8   KBEMoja3SearchKxldUnmap[]     = { 0x00, 0x0F, 0x85, 0xB2, 0x01, 0x00, 0x00, 0x48 };
 UINT8   KBEMoja3ReplaceKxldUnmap[]    = { 0x00, 0x90, 0xE9, 0xB2, 0x01, 0x00, 0x00, 0x48 };
 
@@ -687,9 +694,18 @@
 // Mojave 10.14.4+
 // Avoid race condition in OSKext::removeKextBootstrap when using booter kexts without keepsyms=1.
 // by PMheart, based on vit9696's work
+// Need to pair with KBEMojaCata*EXT and KBEMoja4*SIP
 UINT8   KBEMoja4SearchKxldUnmap[]     = { 0x00, 0x0F, 0x85, 0xB1, 0x01, 0x00, 0x00, 0x48 };
 UINT8   KBEMoja4ReplaceKxldUnmap[]    = { 0x00, 0x90, 0xE9, 0xB1, 0x01, 0x00, 0x00, 0x48 };
 
+// Catalina
+// Avoid race condition in OSKext::removeKextBootstrap when using booter kexts without keepsyms=1.
+// by PMheart, based on vit9696's work
+// Need to pair with KBEMojaCata*EXT and KBECata*SIP
+UINT8   KBECataSearchKxldUnmap[]      = { 0x00, 0x0F, 0x85, 0x7E, 0x01, 0x00, 0x00, 0x48 };
+UINT8   KBECataReplaceKxldUnmap[]     = { 0x00, 0x90, 0xE9, 0x7E, 0x01, 0x00, 0x00, 0x48 };
+
+
 //
 // We can not rely on OSVersion global variable for OS version detection,
 // since in some cases it is not correct (install of ML from Lion, for example).
@@ -718,6 +734,7 @@
   UINTN   NumHighSieMoja3SIP = 0; // 10.13.X - 10.14.3
   UINTN   NumMojaEXT         = 0; // 10.14.X
   UINTN   NumMoja4SIP        = 0; // 10.14.4+
+  UINTN   NumCataSIP         = 0; // 10.15
 
 
   DBG_RT(Entry, "\nPatching kernel for injected kexts...\n");
@@ -734,8 +751,9 @@
     NumSieSIP           = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBESieSearchSIP, sizeof(KBESieSearchSIP));
     NumSieDebugSIP      = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBESieDebugSearchSIP, sizeof(KBESieDebugSearchSIP));
     NumHighSieMoja3SIP  = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBEHighSieMoja3SearchSIP, sizeof(KBEHighSieMoja3SearchSIP));
-    NumMojaEXT          = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBEMojaSearchEXT, sizeof(KBEMojaSearchEXT));   // general EXT patch, for all 10.14.x
-    NumMoja4SIP         = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBEMoja4SearchSIP, sizeof(KBEMoja4SearchSIP)); // SIP patch, ONLY for 10.14.4+
+    NumMojaEXT          = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBEMojaCataSearchEXT, sizeof(KBEMojaCataSearchEXT));   // general EXT patch, for all 10.14.x
+    NumMoja4SIP         = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBEMoja4SearchSIP, sizeof(KBEMoja4SearchSIP));         // SIP patch, ONLY for 10.14.4+
+    NumCataSIP          = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBECataSearchSIP, sizeof(KBECataSearchSIP));
   } else {
     NumSnow_i386_EXT = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBESnowSearchEXT_i386, sizeof(KBESnowSearchEXT_i386));
     NumLion_i386_EXT = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBELionSearchEXT_i386, sizeof(KBELionSearchEXT_i386));
@@ -750,9 +768,14 @@
   }
 
   // X64
-  if (NumMojaEXT == 1) {
+  if (NumCataSIP == 1) {
+    Num = SearchAndReplace(Kernel, KERNEL_MAX_SIZE, KBEMojaCataSearchEXT, sizeof(KBEMojaCataSearchEXT), KBEMojaCataReplaceEXT, 1) +
+          SearchAndReplace(Kernel, KERNEL_MAX_SIZE, KBECataSearchSIP, sizeof(KBECataSearchSIP), KBECataReplaceSIP, 1) +
+          SearchAndReplace(Kernel, KERNEL_MAX_SIZE, KBECataSearchKxldUnmap, sizeof(KBECataSearchKxldUnmap), KBECataReplaceKxldUnmap, 1);
+    DBG_RT(Entry, "==> kernel Catalina: %d replaces done.\n", Num);
+  } else if (NumMojaEXT == 1) {
     // apply EXT patch first
-    Num = SearchAndReplace(Kernel, KERNEL_MAX_SIZE, KBEMojaSearchEXT, sizeof(KBEMojaSearchEXT), KBEMojaReplaceEXT, 1);
+    Num = SearchAndReplace(Kernel, KERNEL_MAX_SIZE, KBEMojaCataSearchEXT, sizeof(KBEMojaCataSearchEXT), KBEMojaCataReplaceEXT, 1);
     // then apply corresponding patches based on what we found
     if (NumMoja4SIP == 1) {
       // firstly, try to patch 10.14.4+
Index: rEFIt_UEFI/refit/main.c
===================================================================
--- rEFIt_UEFI/refit/main.c	(revision 4937)
+++ rEFIt_UEFI/refit/main.c	(working copy)
@@ -635,7 +635,8 @@
               AsciiStrnCmp(InstallerVersion, "10.11", 5) &&
               AsciiStrnCmp(InstallerVersion, "10.12", 5) &&
               AsciiStrnCmp(InstallerVersion, "10.13", 5) &&
-              AsciiStrnCmp(InstallerVersion, "10.14", 5)) {   
+              AsciiStrnCmp(InstallerVersion, "10.14", 5) &&
+              AsciiStrnCmp(InstallerVersion, "10.15", 5)) {   
             InstallerVersion = NULL; // flag known version was not found
           }
           if (InstallerVersion != NULL) { // known version was found in image

 

Thanks!

Edited by PMheart

Share this post


Link to post
Share on other sites
13 minutes ago, CMMChris said:

Yup, Vega and Radeon VII don't seem to work yet for some reason.

 

Hi Chris! :) Try to use Lilu & WhateverGreen kexts and add -lilubetaall boot flag. It should help. :)

 

Also, of course, add the kernel patch mentioned by PMHeart above.

Share this post


Link to post
Share on other sites
Posted (edited)
2 minutes ago, Riley Freeman said:

Here's Lilu 1.3.7. Built on Sierra.

 

Untested as I'm still downloading Catalina.

 

1.3.7 (RELEASE).zip

Thanks !

Theres also a new commit for WhateverGreen.kext, can you please upload a build kext from that as well.

Edited by "Sniki"

Share this post


Link to post
Share on other sites
10 minutes ago, PMheart said:

OK, and this is the binary to test (for kext injection under 10.15):

Clover-4937-1015-kext-injection.zip

 

 

@Slice This is the basic diff, please review it, I am too lazy to post it again on Clover thread ;):


Index: rEFIt_UEFI/Platform/Settings.c
===================================================================
--- rEFIt_UEFI/Platform/Settings.c	(revision 4937)
+++ rEFIt_UEFI/Platform/Settings.c	(working copy)
@@ -6373,6 +6373,8 @@
           if (Prop != NULL && Prop->string != NULL && Prop->string[0] != '\0') {
             if (AsciiStrStr (Prop->string, "Install%20OS%20X%20Mavericks.app")) {
               OSVersion = AllocateCopyPool (5, "10.9");
+            } else if (AsciiStrStr (Prop->string, "Install%20macOS%20Catalina") || AsciiStrStr (Prop->string, "Install%20macOS%2010.15%20Beta")) { // FIXME: Remove Beta after final release
+              OSVersion = AllocateCopyPool (5, "10.15");
             } else if (AsciiStrStr (Prop->string, "Install%20macOS%20Mojave") || AsciiStrStr (Prop->string, "Install%20macOS%2010.14")) {
               OSVersion = AllocateCopyPool (6, "10.14");
             } else if (AsciiStrStr (Prop->string, "Install%20macOS%20High%20Sierra") || AsciiStrStr (Prop->string, "Install%20macOS%2010.13")) {
Index: rEFIt_UEFI/Platform/kext_inject.c
===================================================================
--- rEFIt_UEFI/Platform/kext_inject.c	(revision 4937)
+++ rEFIt_UEFI/Platform/kext_inject.c	(working copy)
@@ -623,8 +623,8 @@
 UINT8   KBEMLDebugSearchEXT[]    = { 0xE8, 0x3E, 0x00, 0x00, 0x00, 0xE9, 0x09, 0x00, 0x00, 0x00, 0x48, 0x8B, 0x7D, 0xE0, 0xE8 };
 UINT8   KBEMLDebugReplaceEXT[]   = { 0xE8, 0x3E, 0x00, 0x00, 0x00, 0x90, 0x90, 0x90, 0x90, 0x90, 0x48, 0x8B, 0x7D, 0xE0, 0xE8 };
 
-// Yosemite
-// PMheart: Universal for 10.10 - 10.13, maybe still ok for furture ver
+// Yosemite - High Sierra
+// PMheart: Universal for 10.10 - 10.13
 UINT8   KBEYosECSieHighSearchEXT[]  = { 0xE8, 0x25, 0x00, 0x00, 0x00, 0xEB, 0x05, 0xE8 };
 UINT8   KBEYosECSieHighReplaceEXT[] = { 0xE8, 0x25, 0x00, 0x00, 0x00, 0x90, 0x90, 0xE8 };
 
@@ -659,28 +659,35 @@
 UINT8   KBESieDebugSearchSIP[]   = { 0x31, 0xC9, 0x39, 0xC1, 0x0F, 0x85, 0x3C, 0x00, 0x00, 0x00, 0x48, 0x8B, 0x85 };
 UINT8   KBESieDebugReplaceSIP[]  = { 0x31, 0xC9, 0x39, 0xC1, 0xEB, 0x80, 0x90, 0x90, 0x90, 0x90, 0x48, 0x8B, 0x85 };
 
-// Mojave (EXT)
-// PMheart: checked  KBEMoja*EXT
-// Need to pair with KBEHighSieMoja*SIP
-UINT8   KBEMojaSearchEXT[]       = { 0xE8, 0xAF, 0x00, 0x00, 0x00, 0xEB, 0x05, 0xE8 };
-UINT8   KBEMojaReplaceEXT[]      = { 0xE8, 0xAF, 0x00, 0x00, 0x00, 0x90, 0x90, 0xE8 };
+// Mojave / Catalina (EXT)
+// PMheart: checked  KBEMojaCata*EXT
+// Need to pair with KBEHighSieMoja*SIP (10.13 / 10.14) / KBECata*SIP (10.15)
+UINT8   KBEMojaCataSearchEXT[]       = { 0xE8, 0xAF, 0x00, 0x00, 0x00, 0xEB, 0x05, 0xE8 };
+UINT8   KBEMojaCataReplaceEXT[]      = { 0xE8, 0xAF, 0x00, 0x00, 0x00, 0x90, 0x90, 0xE8 };
 
 // High Sierra / Mojave 10.14 - 10.14.3 (SIP)
 // PMheart: for 10.14.4+, see KBEMoja4SearchSIP and KBEMoja4ReplaceSIP below
 // PMheart: checked KBEHighSieMoja3*SIP
-// Need to pair with KBEMoja*EXT
+// Need to pair with KBEMojaCata*EXT
 UINT8   KBEHighSieMoja3SearchSIP[]    = { 0xC3, 0x48, 0x85, 0xDB, 0x74, 0x69, 0x48, 0x8B, 0x03, 0x48, 0x89, 0xDF, 0xFF, 0x50, 0x28, 0x48 };
 UINT8   KBEHighSieMoja3ReplaceSIP[]   = { 0xC3, 0x48, 0x85, 0xDB, 0xEB, 0x12, 0x48, 0x8B, 0x03, 0x48, 0x89, 0xDF, 0xFF, 0x50, 0x28, 0x48 };
 
 // Mojave 10.14.4+ (SIP)
 // PMheart: checked KBEMoja4*SIP
-// Need to pair with KBEMoja*EXT
+// Need to pair with KBEMojaCata*EXT
 UINT8   KBEMoja4SearchSIP[]           = { 0x48, 0x85, 0xC0, 0x74, 0x6C, 0x48, 0x89, 0xC3, 0x48, 0x8B, 0x00, 0x48, 0x89, 0xDF, 0xFF, 0x50, 0x28, 0x48 };
 UINT8   KBEMoja4ReplaceSIP[]          = { 0x48, 0x85, 0xC0, 0xEB, 0x15, 0x48, 0x89, 0xC3, 0x48, 0x8B, 0x00, 0x48, 0x89, 0xDF, 0xFF, 0x50, 0x28, 0x48 };
 
+// Catalina (SIP)
+// PMheart: checked
+// Need to pair with KBEMojaCata*EXT
+UINT8   KBECataSearchSIP[]            = { 0x00, 0x85, 0xC0, 0x0F, 0x84, 0x87, 0x00, 0x00, 0x00, 0x49 };
+UINT8   KBECataReplaceSIP[]           = { 0x00, 0x85, 0xC0, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x49 };
+
 // Mojave 10.14 - 10.14.3
 // Avoid race condition in OSKext::removeKextBootstrap when using booter kexts without keepsyms=1.
 // by vit9696
+// Need to pair with KBEMojaCata*EXT and KBEHighSieMoja3*SIP
 UINT8   KBEMoja3SearchKxldUnmap[]     = { 0x00, 0x0F, 0x85, 0xB2, 0x01, 0x00, 0x00, 0x48 };
 UINT8   KBEMoja3ReplaceKxldUnmap[]    = { 0x00, 0x90, 0xE9, 0xB2, 0x01, 0x00, 0x00, 0x48 };
 
@@ -687,9 +694,18 @@
 // Mojave 10.14.4+
 // Avoid race condition in OSKext::removeKextBootstrap when using booter kexts without keepsyms=1.
 // by PMheart, based on vit9696's work
+// Need to pair with KBEMojaCata*EXT and KBEMoja4*SIP
 UINT8   KBEMoja4SearchKxldUnmap[]     = { 0x00, 0x0F, 0x85, 0xB1, 0x01, 0x00, 0x00, 0x48 };
 UINT8   KBEMoja4ReplaceKxldUnmap[]    = { 0x00, 0x90, 0xE9, 0xB1, 0x01, 0x00, 0x00, 0x48 };
 
+// Catalina
+// Avoid race condition in OSKext::removeKextBootstrap when using booter kexts without keepsyms=1.
+// by PMheart, based on vit9696's work
+// Need to pair with KBEMojaCata*EXT and KBECata*SIP
+UINT8   KBECataSearchKxldUnmap[]      = { 0x00, 0x0F, 0x85, 0x7E, 0x01, 0x00, 0x00, 0x48 };
+UINT8   KBECataReplaceKxldUnmap[]     = { 0x00, 0x90, 0xE9, 0x7E, 0x01, 0x00, 0x00, 0x48 };
+
+
 //
 // We can not rely on OSVersion global variable for OS version detection,
 // since in some cases it is not correct (install of ML from Lion, for example).
@@ -718,6 +734,7 @@
   UINTN   NumHighSieMoja3SIP = 0; // 10.13.X - 10.14.3
   UINTN   NumMojaEXT         = 0; // 10.14.X
   UINTN   NumMoja4SIP        = 0; // 10.14.4+
+  UINTN   NumCataSIP         = 0; // 10.15
 
 
   DBG_RT(Entry, "\nPatching kernel for injected kexts...\n");
@@ -734,8 +751,9 @@
     NumSieSIP           = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBESieSearchSIP, sizeof(KBESieSearchSIP));
     NumSieDebugSIP      = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBESieDebugSearchSIP, sizeof(KBESieDebugSearchSIP));
     NumHighSieMoja3SIP  = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBEHighSieMoja3SearchSIP, sizeof(KBEHighSieMoja3SearchSIP));
-    NumMojaEXT          = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBEMojaSearchEXT, sizeof(KBEMojaSearchEXT));   // general EXT patch, for all 10.14.x
-    NumMoja4SIP         = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBEMoja4SearchSIP, sizeof(KBEMoja4SearchSIP)); // SIP patch, ONLY for 10.14.4+
+    NumMojaEXT          = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBEMojaCataSearchEXT, sizeof(KBEMojaCataSearchEXT));   // general EXT patch, for all 10.14.x
+    NumMoja4SIP         = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBEMoja4SearchSIP, sizeof(KBEMoja4SearchSIP));         // SIP patch, ONLY for 10.14.4+
+    NumCataSIP          = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBECataSearchSIP, sizeof(KBECataSearchSIP));
   } else {
     NumSnow_i386_EXT = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBESnowSearchEXT_i386, sizeof(KBESnowSearchEXT_i386));
     NumLion_i386_EXT = SearchAndCount(Kernel, KERNEL_MAX_SIZE, KBELionSearchEXT_i386, sizeof(KBELionSearchEXT_i386));
@@ -750,9 +768,14 @@
   }
 
   // X64
-  if (NumMojaEXT == 1) {
+  if (NumCataSIP == 1) {
+    Num = SearchAndReplace(Kernel, KERNEL_MAX_SIZE, KBEMojaCataSearchEXT, sizeof(KBEMojaCataSearchEXT), KBEMojaCataReplaceEXT, 1) +
+          SearchAndReplace(Kernel, KERNEL_MAX_SIZE, KBECataSearchSIP, sizeof(KBECataSearchSIP), KBECataReplaceSIP, 1) +
+          SearchAndReplace(Kernel, KERNEL_MAX_SIZE, KBECataSearchKxldUnmap, sizeof(KBECataSearchKxldUnmap), KBECataReplaceKxldUnmap, 1);
+    DBG_RT(Entry, "==> kernel Catalina: %d replaces done.\n", Num);
+  } else if (NumMojaEXT == 1) {
     // apply EXT patch first
-    Num = SearchAndReplace(Kernel, KERNEL_MAX_SIZE, KBEMojaSearchEXT, sizeof(KBEMojaSearchEXT), KBEMojaReplaceEXT, 1);
+    Num = SearchAndReplace(Kernel, KERNEL_MAX_SIZE, KBEMojaCataSearchEXT, sizeof(KBEMojaCataSearchEXT), KBEMojaCataReplaceEXT, 1);
     // then apply corresponding patches based on what we found
     if (NumMoja4SIP == 1) {
       // firstly, try to patch 10.14.4+
Index: rEFIt_UEFI/refit/main.c
===================================================================
--- rEFIt_UEFI/refit/main.c	(revision 4937)
+++ rEFIt_UEFI/refit/main.c	(working copy)
@@ -635,7 +635,8 @@
               AsciiStrnCmp(InstallerVersion, "10.11", 5) &&
               AsciiStrnCmp(InstallerVersion, "10.12", 5) &&
               AsciiStrnCmp(InstallerVersion, "10.13", 5) &&
-              AsciiStrnCmp(InstallerVersion, "10.14", 5)) {   
+              AsciiStrnCmp(InstallerVersion, "10.14", 5) &&
+              AsciiStrnCmp(InstallerVersion, "10.15", 5)) {   
             InstallerVersion = NULL; // flag known version was not found
           }
           if (InstallerVersion != NULL) { // known version was found in image

 

Thanks!

i am on installation screen with that clover and GTX 760 :):)

Share this post


Link to post
Share on other sites
Posted (edited)

EDIT: Sorry! I am extremely stupid! Please see 

for corrections!

 

Alright, so this would be the fix for FakeCPUID under 10.15 (But sorry, I cannot test!):

--- orig-kernel_patcher.c	2019-06-04 05:26:39.000000000 +0800
+++ patched.c	2019-06-04 05:24:43.000000000 +0800
@@ -483,6 +483,18 @@
 STATIC UINT8 HSieMojSearchModel[]   = {0x89, 0xc1, 0xc0, 0xe9, 0x04};
 // Need to use YosECSieSearchExt, LionReplaceModel
 
+// Catalina
+/*
+ This patch searches
+  mov eax, r12   ||   mov eax, r12
+  shr al, 0x4    ||   shr eax, 0x10
+ and replaces to
+  mov eax, FakeModel || mov eax, FakeExt
+  nop                || nop
+*/
+STATIC UINT8 CataSearchModel[]      = {0x44, 0x89, 0xE0, 0xC0, 0xE8, 0x04};
+STATIC UINT8 CataSearchExt[]        = {0x44, 0x89, 0xE0, 0xC1, 0xE8, 0x10};
+STATIC UINT8 CataReplaceMovEax[]    = {0xB8, 0x00, 0x00, 0x00, 0x00, 0x90}; // mov eax, val || nop
 
 BOOLEAN PatchCPUID(UINT8* bytes, UINT8* Location, INT32 LenLoc,
                    UINT8* Search4, UINT8* Search10, UINT8* ReplaceModel,
@@ -552,14 +564,22 @@
     return;
   }
 // High Sierra/Mojave patterns
-// Sherlocks: 10.13/10.14.DP1
+// Sherlocks: 10.13/10.14
   DBG_RT(Entry, "CPUID: try High Sierra/Mojave patch...\n");
-  if (PatchCPUID(kernelData, &StrMsr8b[0], sizeof(StrMsr8b), &HSieMojSearchModel[0],
+  if (PatchCPUID(kernelData, &StrMsr8b[0], sizeof(StrMsr8b), &CataSearchModel[0],
                  &YosECSieSearchExt[0], &LionReplaceModel[0], &LionReplaceModel[0],
                  sizeof(HSieMojSearchModel), Entry)) {
     DBG_RT(Entry, "...done!\n");
     return;
   }
+// Catalina patterns
+// PMheart: 10.15.DP1
+  DBG_RT(Entry, "CPUID: try Catalina patch...\n");
+  if (PatchCPUID(kernelData, &StrMsr8b[0], sizeof(StrMsr8b), &HSieMojSearchModel[0],
+                 &CataSearchExt[0], &CataReplaceMovEax[0], &CataReplaceMovEax[0],
+                 sizeof(CataSearchModel), Entry)) {
+    return;
+  }
 }
 
 // new way by RehabMan 2017-08-13

@Slice Please review this too, thanks!

Edited by PMheart

Share this post


Link to post
Share on other sites
Posted (edited)
36 minutes ago, arsradu said:

 

Hi Chris! :) Try to use Lilu & WhateverGreen kexts and add -lilubetaall boot flag. It should help. :)

 

Also, of course, add the kernel patch mentioned by PMHeart above.

Thanks but not working with the GT 710 

I will try with my laptop HP ProBook Intel HD 4000 :moil: :lol:

 

 EDIT *********

OK Work with the clover files here

 

Thanks to @PMheart

https://www.insanelymac.com/forum/applications/core/interface/file/attachment.php?id=327531

 

I on Installing now :D

Edited by chris1111

Share this post


Link to post
Share on other sites
2 minutes ago, CMMChris said:

Finally, up and running as well.

61914346_809999472704325_5996827312283189248_n.png

Clover or OpenCore ?

Share this post


Link to post
Share on other sites
Posted (edited)

hi...

@chris1111 ..is the clover special edition 4937

Catalina ready?

thank you..

c.frio

Edited by C.Frio

Share this post


Link to post
Share on other sites
Posted (edited)
11 minutes ago, CMMChris said:

Finally, up and running as well.

61914346_809999472704325_5996827312283189248_n.png

 

Well done!

 

Got mine working as well. :)

1086533023_Screenshot2019-06-04at00_45_02.thumb.png.b686a9cd20a8891cdcb7647a435fb5bb.png

Edited by arsradu

Share this post


Link to post
Share on other sites

Up and running but...

Catalina deleted a folder on main \ with name "tools"..

Looks not working some application like iDvd , iPhoto , TextWrangler etc..

That is the first conclusions

Fullscreen_4_6_19__12_44_am.jpg

Share this post


Link to post
Share on other sites
1 minute ago, "Sniki" said:

Theres also a new commit for WhateverGreen.kext, can you please upload a build kext from that as well.

 

I can't build it. Keeps complaining about missing headers even though I've copied them across from Lilu. I'm doing something wrong but I don't know what. Lilu was straightforward.

 

 

Share this post


Link to post
Share on other sites

Hopefully this would be the changes for XCPM, I don't want to duplicate the usage again, please see my old posts for 10.13 and 10.14 as well:

https://www.insanelymac.com/forum/topic/334898-pre-release-macos-mojave/?page=2&tab=comments#comment-2616660 (10.14)

 

 

https://www.insanelymac.com/forum/topic/324194-pre-release-macos-high-sierra/?page=3#entry2435885 (10.13)

 

And these are the new patches:

XCPM patches 10.15

_cpuid_set_info
Find: 72 3c d0 77 50 0f b6 c0
Repl: xx 3c d0 77 50 0f b6 c0

_xcpm_bootstrap
Find: 8D 43 C4 3C 22 77 22
Repl: 8D 43 xx 3C 22 77 22

_xcpm_SMT_scope_msrs #1
Find: BE060000005DE908000000
Repl: BE060000005DC390909090

_xcpm_SMT_scope_msrs #2
Find: 31 D2 E8 3E FD FF FF
Repl: 31 D2 90 90 90 90 90

_xcpm_core_scope_msrs
Find: 31 D2 E8 51 FD FF FF
Repl: 31 D2 90 90 90 90 90

_xcpm_pkg_scope_msrs
Find: 31 D2 E8 74 FD FF FF
Repl: 31 D2 90 90 90 90 90

disable all msrs above
Find: BE 06 00 00 00 5D E9 08 00 00 00 0F 1F 84 00 00 00 00 00 55
Repl: BE 06 00 00 00 5D E9 08 00 00 00 0F 1F 84 00 00 00 00 00 C3

Performance patch (credit to @vit9696)
Find: C1E3084863D389D048C1EA20
Repl: C1E308B800FF000031D29090

 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By oldman20
      Hello, my laptop is Dell Inspiron 4530 with 1 usb 3.0 port + 2 usb 2.0 port. I follow this guide but my hackintosh not recognize 3.0, just show 2.0. What shoud i do or missing step? thanks all
       

      And one more question: i cant using mouse usb at GUI Cloverboot, what's missing file? thanks so much!
    • By kali2000
      Hi again...
      I'm update to Catalina and my old config.plist to patch my laptop with new methods... all work fine.
      Only I have a little problem with may HDMI connection, when use it my laptop reboots.
      Please... Can anyone see my problem reporting files and tell me...
      Thanks in advance.


      PD. I've noticed that I also have another problem, my laptop don't go to sleep.
      Files.zip
    • By JamesMaloney
      Salve a tutti,
      ho provato diverse volte ad installare macOS sul mio laptop ma sempre senza successo, non riesco mai ad arrivare nemmeno all'installer!
      Ho tentato ormai diverse configurazioni/driver ma non capisco mai da cosa siano derivanti gli errori o i blocchi che mi trovo davanti e sto quindi cercando aiuto per capire come procedere 
      Nello specifico il config che sto provando ad utilizzare non mi trova per niente la partizione con l'installer, mentre un altro vecchio (presente sempre nella cartella di clover allegata con estensione .orig) si inchioda subito dopo la scelta della partizione di avvio.
      Qualcuno mi sa dare una mano su come superare ciò?
      Grazie in anticipo,
       
      Giacomo
       
       
      P.S. Le mie specifiche sono:
       
      - Modello ASUS N552VW-FI202T
      - Schermo 3840x2160
      - CPU Intel Core i7-6700HQ
      - RAM 16GB ddr4 2400mHz
      - Intel HD Graphics 530 + nVidia 960m 4GB (anche funzionasse solo la Intel sarebbe perfetto)
      - SSD 256GB
      - HDD 1TB
      CLOVER.zip
    • By ltooz_audis
      OK, it's been a while since I posted something here. The new Catalina was out last month, the current version is 10.15.1. I decided to install on my HP Envy 13" Kaby Lake. This one should work for all Kaby Lake laptops out there and also with MOJAVE OS too. So read carefully and watch the videos.
      1. You can't install Catalina on MBR unless you patch it, but it too complicated for me and I like to try the APFS system now instead of HFS. So, if you create the external USB drive using Boot Disk Utility, it won't install.
      2. Replace original WIFI-Bluetooth COMBO with DW1560 or better.
      3. Thanks to Lilu and people on Hackintosh world, things are much easier to install than before: Clover boot loader 5070, Lilu 1.3.9, Whatevergreen 1.3.4, AppleAlc 1.4.3, AirportBrcmFixup.kext, Bluetooth Patchram3 (I found BrcmPatchRAM3.kext + BrcmFirmwareData.kext + BrcmBluetoothInjector.kext), Hackintool is a must, VoodooPS2Controller.kext for trackpad, USBinjectAll , ACPIBatteryManager from rehabman, FakeSMC.kext.
      4. Use a 1GB USB flash drive, use Boot Disk Utility to create an EFI folder, then copy it to the EFI folder of the External USB SSD hard drive.
      I'll post more in details, but with these, you can boot Catalina without any problems.
       
      Cheers,
      Louis
       
×