Jump to content

syscl

Coders
  • Content count

    290
  • Joined

  • Last visited

  • Days Won

    9

syscl last won the day on September 21 2017

syscl had the most liked content!

About syscl

  • Rank
    InsanelyMac Sage

Profile Information

  • Gender
    Male

Recent Profile Visitors

4,471 profile views
  1. syscl

    EFICheckDisabler

    I just don't know why a lot of people think LPCB device injection is necessary on Skylake+ platform. Actually, on Skylake+ platform you only need PPMC and PMRC combine together to make LPCB work(like in a real Mac, confirmed from MacBookPro's ioreg). AppleLPC will not load in this case. More details can be checked in my git: https://github.com/syscl/XPS9350-macOS/commit/ed474d5bc68efba71ed827e5eef5c5db910d24c2(I discovered this since Dec 1 2016). syscl
  2. syscl

    Clover Problems and Solutions

    Thank you, I have committed to r4269 already. In fact, as of my first version of this script I use diskutil for all mounting, unmount and identified ESP/EFI partition, so actually all this operations can use diskutil(more concise and tidy code). Since we now use LogoutHook so that we don't need to worry about diskutil is unavailable issue. syscl
  3. syscl

    Clover General discussion

    I think this may be a Clover's "bug" in SearchAndReplace() routine because user can insert dedicated made search patterns such that SearchAndReplace() will search for not only kernel but also prelinked data. We should change the KERNEL_MAX_SIZE for SearchAndReplace to more accurate arguments(e.g. kernelBoundary and kextBoundary), and change the start searching location instead of starting from 0x0? syscl
  4. syscl

    Clover General discussion

    Thank you @Slice and @Badruzeus @Regi Yassin 's report, please try r4255 to see if this indeed solve wrong MatchOS injection on your computer. syscl
  5. syscl

    Clover General discussion

    Have you noticed when this message occurs? Like which version you first saw this message? syscl
  6. syscl

    Clover General discussion

    Because I saw @cecekpown said that you also have archCpuType issue in previous version, your log shows that my r4252-p2 solved the archCpuType issue. I haven't see CPU receptor problem in log and don't find it in code as well... Weird... syscl
  7. syscl

    Clover General discussion

    I don't have the permission to download the preboot.log.. why?? By the way, can r4252-p2 boot (because I cannot see your boot log)? syscl
  8. syscl

    Clover General discussion

    So r4252-p2 not work on your system? Could you provide the preboot.log by pressing the F2 when boot? Thank you in advance, syscl
  9. syscl

    Clover General discussion

    @Slice Please try this one. r4252-p2.zip Thank you, syscl
  10. syscl

    Clover General discussion

    Oh, I see, seems this is 10.7.x, so GetOSVersionKextsDir use "/EFI/Clover/kexts10.7." as folder. Please give me a few minutes... syscl
  11. syscl

    Clover General discussion

    @Slice I think GetOSVersionKextsDir has already taken care of 10.xx.xx: AsciiStrnCpyS(FixedVersion, 16, OSVersion, 5); Here's the patch for r4252 Index: rEFIt_UEFI/Platform/kext_inject.c =================================================================== --- rEFIt_UEFI/Platform/kext_inject.c (revision 4252) +++ rEFIt_UEFI/Platform/kext_inject.c (working copy) @@ -311,23 +311,6 @@ // syscl - allow specific load inject kext // Clover/Kexts/Other is for general injection thus we need to scan both Other and OSVersion folder - CHAR16 UniSysVers[6]; - CHAR8 ShortOSVersion[6]; - INTN i; - for (i = 0; i < 6; i++) { - ShortOSVersion[i] = Entry->OSVersion[i]; - if (ShortOSVersion[i] == '\0') { - break; - } - if (((i > 2) && (ShortOSVersion[i] == '.')) || i == 5) { - ShortOSVersion[i] = '\0'; - ShortOSVersion[i + 1] = '\0'; - break; - } - } - AsciiStrToUnicodeStrS(ShortOSVersion, UniSysVers, 6); - DBG("OSVesion: %a, ShortOSVersion=%a, uni-vers=%s,\n", Entry->OSVersion, ShortOSVersion, UniSysVers); - if ((SrcDir = GetOtherKextsDir())) { MsgLog("Preparing kexts injection for arch=%s from %s\n", (archCpuType==CPU_TYPE_X86_64)?L"x86_64":(archCpuType==CPU_TYPE_I386)?L"i386":L"", SrcDir); CurrentKext = InjectKextList; @@ -366,8 +349,10 @@ FreePool(SrcDir); } - if ((SrcDir = GetOSVersionKextsDir(ShortOSVersion))) { + if ((SrcDir = GetOSVersionKextsDir(Entry->OSVersion))) { MsgLog("Preparing kexts injection for arch=%s from %s\n", (archCpuType==CPU_TYPE_X86_64)?L"x86_64":(archCpuType==CPU_TYPE_I386)?L"i386":L"", SrcDir); + CHAR16 UniSysVers[6]; + AsciiStrToUnicodeStrS(Entry->OSVersion, UniSysVers, 6); CurrentKext = InjectKextList; while (CurrentKext) { DBG("current kext name %s Match %s, while sysver: %s\n", CurrentKext->FileName, CurrentKext->MatchOS, UniSysVers); Please give this a try and see if this work on your computer as well(I mean not corrupt previous kext inject function as well) r4252-p1.zip syscl
  12. syscl

    Clover General discussion

    For those who experienced archCpuType missing issue, please try this one. r4252-p1.zip I narrowed down the issue and now the issue should have gone(work on M3800). @Slice, why we need this piece of code? This is the place that cause the archCpuType issue CHAR16 UniSysVers[6]; CHAR8 ShortOSVersion[6]; INTN i; for (i = 0; i < 6; i++) { ShortOSVersion[i] = Entry->OSVersion[i]; if (ShortOSVersion[i] == '\0') { break; } if (((i > 2) && (ShortOSVersion[i] == '.')) || i == 5) { ShortOSVersion[i] = '\0'; ShortOSVersion[i + 1] = '\0'; break; } } AsciiStrToUnicodeStrS(ShortOSVersion, UniSysVers, 6); If GetOSVersionKextsDir return null, then we should not declare local variable ShortOSVersion. I used my version that the issue has gone. syscl
  13. syscl

    Clover General discussion

    @Slice, from @cekepawon report, there's something funny, thinning fail occurs when the first time inject Shiki.kext in both my case and @Matgen84's case(still not sure). Another possible: memory issues around string between UnisysVers and ShortOSVersions? Will try once back to home. syscl
  14. syscl

    Clover General discussion

    Slice, I svn diff, and terminal give me nothing. I build r4251 with ./ebuild.sh, still give me log like this on Dell Precision M3800. preboot.log.zip You said Official Clover cannot have "Preparing for kext injection...", what that mean sorry? Am I doing something wrong? Or miss something? syscl
  15. syscl

    Clover General discussion

    Hi, is there something changed in r4250? I have tried to build r4250 and give me "Thinning failed". I have to force archCpuType=CPU_TYPE_X86_64 to make it boot, otherwise the archCpuType is corrupted? Here's the log from r4251(same with r4250 when I reverted). preboot.log.zip
×