Jump to content

Clover General discussion


ErmaC
30,171 posts in this topic

Recommended Posts

12 minutes ago, vector sigma said:

if work in 10.15.4 and I answered I'm still in 10.15.3 which works fine but sorry I'm not sure what you miss.

 

What I missed was that I was looking at the code above (posted back in June 2019) and according to that logic it should not work for 10.15.3.

 

But I just checked the latest patch code and now I understand why it works for you:

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, 0x04, 0xC6, 0x3C, 0x22 };
    applyKernPatch(kern, find, sizeof(find), repl, comment);
    // PMheart: attempt to add 10.15 compatibility
  } else if (os_version < AsciiOSVersionToUint64("10.15.4")) {
    STATIC UINT8 find[] = { 0x8D, 0x43, 0xC4, 0x3C, 0x22 };
    STATIC UINT8 repl[] = { 0x8D, 0x43, 0xC6, 0x3C, 0x22 };
    applyKernPatch(kern, find, sizeof(find), repl, comment);
  } else if (os_version < AsciiOSVersionToUint64("10.16")) {
    STATIC UINT8 find[] = { 0x80, 0xC3, 0xC4, 0x80, 0xFB, 0x42 };
    STATIC UINT8 repl[] = { 0x80, 0xC3, 0xC6, 0x80, 0xFB, 0x42 };
    applyKernPatch(kern, find, sizeof(find), repl, comment);

For 10.15.4+, that patch does not work. I think I need to raise a bug.

Thx for bearing with me.

Link to comment
Share on other sites

You have to look at your kernel for find bytes if still exist

else if (os_version < AsciiOSVersionToUint64("10.16")) {

    STATIC UINT8 find[] = { 0x80, 0xC3, 0xC4, 0x80, 0xFB, 0x42 };

    STATIC UINT8 repl[] = { 0x80, 0xC3, 0xC1, 0x80, 0xFB, 0x42 };

    applyKernPatch(kern, find, sizeof(find), repl, comment);

  }

Edited by vector sigma
Link to comment
Share on other sites

20 minutes ago, vector sigma said:

You have to look at your kernel for find bytes if still exist

else if (os_version < AsciiOSVersionToUint64("10.16")) {

    STATIC UINT8 find[] = { 0x80, 0xC3, 0xC4, 0x80, 0xFB, 0x42 };

    STATIC UINT8 repl[] = { 0x80, 0xC3, 0xC1, 0x80, 0xFB, 0x42 };

    applyKernPatch(kern, find, sizeof(find), repl, comment);

  }

 

Bites 0x80, 0xC3, 0xC4, 0x80, 0xFB, 0x42 exists and gets patched I think but that does not enable XCPM.

 

BTW, in the replace bytes you quoted above ( 0x80, 0xC3, 0xC1, 0x80, 0xFB, 0x42) there's one byte different from the sources. The 0xC1 should be 0xC6 for Ivy Bridge ?.

 

Link to comment
Share on other sites

3 hours ago, MacNB said:

 

Bites 0x80, 0xC3, 0xC4, 0x80, 0xFB, 0x42 exists and gets patched I think but that does not enable XCPM.

 

BTW, in the replace bytes you quoted above ( 0x80, 0xC3, 0xC1, 0x80, 0xFB, 0x42) there's one byte different from the sources. The 0xC1 should be 0xC6 for Ivy Bridge ?.

 

not for Ivy bridge, yuo mean as 'mov' in assembly?..could be. Tried?  edit, yes you're right

Edited by vector sigma
Link to comment
Share on other sites

Greetings, I spent a while without using clover trying other bootloaders but in the end I decided to go back to clover and noticed that one of the functions I used before now doesn't work. In my drivers folder I have the NTFS.efi driver and in (boot/default Boot Volume) I wrote "System Reserved" and it does not work instead of showing that partition by default the one of Mac continues to appear.

Link to comment
Share on other sites

2 hours ago, vector sigma said:

Just updated to 10.15.5 Beta 2 (19F62f) and the xcpm patch doesn't work

Thanks for updating your system and testing.

You're probably in a better influencing position than me to report it :P ?

Edited by MacNB
  • Like 1
Link to comment
Share on other sites

On 4/25/2020 at 2:46 AM, mick3lson said:

I have updated clover to version 5114, my theme work well, I've found two dots near the custom title, It's only cosmetic issue, but up to the version 5107 wasn't there.

screenshot0.thumb.jpg.830bfa843fc27d76f9f38a230b774edb.jpg

Corrected in master.

  • Like 2
Link to comment
Share on other sites

Hi @Slice

 

I've got a problem to build Clover latest commit: [CPP] kext_inject 

 

 

Spoiler

[CPP] kext_inject
/Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/kext_patcher.cpp:1013:53: error: use of undeclared identifier 'i'
      if (!Entry->KernelAndKextPatches->KextPatches.StartPattern ||
                                                    ^
/Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/kext_patcher.cpp:1014:53: error: use of undeclared identifier 'i'
          !Entry->KernelAndKextPatches->KextPatches.StartPatternLen) {
                                                    ^
2 errors generated.
make: *** [/Users/mathieu/src/Cloverbootloader/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit/OUTPUT/Platform/kext_patcher.obj] Error 1


build.py...
 : error 7000: Failed to execute command
    make tbuild [/Users/mathieu/src/Cloverbootloader/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit]


build.py...
 : error F002: Failed to build module
    /Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/refit.inf [X64, XCODE8, RELEASE]

- Failed -
 

 

Edited by Matgen84
Link to comment
Share on other sites

29 minutes ago, Matgen84 said:

Hi @Slice

 

I've got a problem to build Clover latest commit: [CPP] kext_inject 

 

 

  Reveal hidden contents

[CPP] kext_inject
/Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/kext_patcher.cpp:1013:53: error: use of undeclared identifier 'i'
      if (!Entry->KernelAndKextPatches->KextPatches.StartPattern ||
                                                    ^
/Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/Platform/kext_patcher.cpp:1014:53: error: use of undeclared identifier 'i'
          !Entry->KernelAndKextPatches->KextPatches.StartPatternLen) {
                                                    ^
2 errors generated.
make: *** [/Users/mathieu/src/Cloverbootloader/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit/OUTPUT/Platform/kext_patcher.obj] Error 1


build.py...
 : error 7000: Failed to execute command
    make tbuild [/Users/mathieu/src/Cloverbootloader/Build/Clover/RELEASE_XCODE8/X64/rEFIt_UEFI/refit]


build.py...
 : error F002: Failed to build module
    /Users/mathieu/src/Cloverbootloader/rEFIt_UEFI/refit.inf [X64, XCODE8, RELEASE]

- Failed -
 

 

Corrected.

  • Thanks 1
Link to comment
Share on other sites

15 hours ago, Pene said:

@Badruzeus

Can you confirm if this change produces you a working binary on your Linux?

(Really sorry for late reply)

I just built r5114 from latest commit under Debian 10 with GCC53, but on my test it still produces similar issue; once I see boot6 / boot7 I get Red Screen of Death immediately. It' s bit weird that last debug.log line printed about "Anime" while I use "Catalina" theme which contains no anime resource. Thanks.

CloverBuild-AOH-Deb10-042620.txt.zip

debug.log.crash-AOH.zip

Link to comment
Share on other sites

I've refactored boot options as a XStringArray, which allow to get rid of AddLoadOption and RemoveLoadOption

If someone have the impression that something changed with the boot options, come to me :)

 

@Badruzeus and linux compiler : compilation under linux doesn't work yet See @Pene posts (https://www.insanelymac.com/forum/topic/341986-c-proposition/?page=29&amp;tab=comments#comment-2719199). There is a unresolved problem with C++ static initialiser section. Will come soon (when I find the time !).

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

@Slice

Hi sorry to bother you again,

i've found a little glitch in graphics 

 

when selecting options menu, the first menu item, as per screenshots, shows indeed the icon

s3.png.e4b1a804be604e7f90a41bf6145daf7f.png

 

but when selecting a submenu the icons is gone...

s2.png.3723c8c2001c89d44332a1aef91d1625.png

 

and on others its half rendered

s1.png.36751dfcce9a79759485a1d6eeb1b1cb.png

 

Sorry can't give you more infos about it as i never noticed before

appeared on this release r5114 (2ccc95513))

 

 

curious thing is, this behaviour acts only for submeus.

 

 

Edited by LAbyOne
Link to comment
Share on other sites

×
×
  • Create New...