Jump to content
30960 posts in this topic

Recommended Posts

mine:

...
<key>MatchOS</key>
<string>10.7.x,10.8.x,10.9.x,10.10.x,10.11.x,10.12.x</string>
...

 

Maybe you could improve this function to allow specific range in MatchOS by dash: "10.6.6-10.13".

To simplify, I use integer to compare as suggested by lord @bs0d. Here is my implementation. Hope you can catch the idea.

<key>MatchOS</key>
<string>10.7-10.12</string>

 

 

VOID
LOL () {
  CHAR8     *MatchOSEntry = "10.6.6-10.12.3",
            *CurrOS = "10.7",
            *a, *b;
  UINT64    ia, ib, ic;
  BOOLEAN   allow;
  struct    MatchOSes  *mos;

  if (
    (AsciiStrStr (MatchOSEntry, ",") == NULL) && // no comma(s) allowed
    (CountOccurrences(MatchOSEntry, '-') == 1)   // only 1 value range allowed
  ) {
    mos = GetStrArraySeparatedByChar (MatchOSEntry, '-');
    if (mos && (mos->count == 2)) { // do more strict
      a = mos->array[0];
      b = mos->array[1];

      ia = AsciiOSVersionToUint64 (a);
      ib = AsciiOSVersionToUint64 (;
      ic = AsciiOSVersionToUint64 (CurrOS);

      allow = ((ia <= ic) && (ib >= ic));

      MsgLog (
        "a: %a (%d) | b: %a (%d) | c: %a (%d) | allow: %a\n",
        a, ia, b, ib, CurrOS, ic, allow ? "yes" : "no"
      );
    }

    DeallocMatchOSes (mos);
  }
}

 

 

  • Like 1

yes - 100% certain to have tried your 4000 fix on both

1) fresh 4000 build and

2) then replaced CLOVER and BOOT in r3998

- no good.

 

will test 3999 what is in there that breaks it

 

right.

 

Slice made a mistake in r3999 commit.

 

now r4000, has v1 code(problem)

 

slice should be update syscl's dellsmbiospatch v2 code.

http://www.insanelymac.com/forum/topic/306156-clover-bugissue-report-and-patch/?p=2363264

 

build is no problem. checked more 

r4000 fix v2.zip

please test this file.

 

@pkdesign

 

thanks in advance

how is this different from the fix I used?

please test this file.

 

@pkdesign

 

thanks in advance

I used the v3 version and I still have sound.

 

Thanks. Hopefully this will be integrated with the next Clover update.

how is this different from the fix I used?

I used the v3 version and I still have sound.

 

Thanks. Hopefully this will be integrated with the next Clover update.

 

thank you for report

it's not big difference.

 

 

@pkdesing

@nekonoko

@Common Sense

 

please test here

 

slice updated edk2 string.c and safestring.c. 

i don't touch anything about edk2 files. 

 

only changed syscl dellsmbios v2 code.

r4000 fix used code2.zip

  • Like 2

I use a Bluetooth mouse and keyboard, so I'm trying to figure out how to reboot into Windows (and then reboot again back into OS X) without actually activating the Clover menu.

 

On a real Mac, the following terminal reboots into Windows, and restarting again from windows boots into OS X.

bless --device /dev/[Windows Partition Identifier] --mount /Volumes/[Windows Volume] --setBoot --nextonly && reboot
My EFI-boot, Clover-based Hackintosh also reboots into Windows after running this command, but once done I can't seem to get back into OS X (without lugging out my old USB keyboard to activate the Clover menu). For whatever reason, the --nextonly option is getting completely ignored. It goes without saying that I have my mac partition set as the default boot volume in config.plist.

 

Any help? Thanks!

From Windows you can use easyuefi to change boot.

 

Sent from my SM-G930F using Tapatalk

thank you for report

it's not big difference.

 

 

@pkdesing

@nekonoko

@Common Sense

 

please test here

 

slice updated edk2 string.c and safestring.c. 

i don't touch anything about edk2 files. 

 

only changed syscl dellsmbios v2 code.

 

Wow, indeed r4000 patches the SMBIOS table even with DellSMBIOSPatch, set to false in config.plist.

With vanilla r4000:

post-60007-0-89944500-1486400510_thumb.jpg

 

With your build:

post-60007-0-21769200-1486400521_thumb.jpg

Works as usual, no problems and the system log is clean now (I'm always using the verbose mode and can notice any suspicious changes). Good work!

  • Like 2

Maybe you could improve this function to allow specific range in MatchOS by dash: "10.6.6-10.13".

To simplify, I use integer to compare as suggested by lord @bs0d. Here is my implementation. Hope you can catch the idea.

<key>MatchOS</key>
<string>10.7-10.12</string>

 

 

VOID
LOL () {
  CHAR8     *MatchOSEntry = "10.6.6-10.12.3",
            *CurrOS = "10.7",
            *a, *b;
  UINT64    ia, ib, ic;
  BOOLEAN   allow;
  struct    MatchOSes  *mos;

  if (
    (AsciiStrStr (MatchOSEntry, ",") == NULL) && // no comma(s) allowed
    (CountOccurrences(MatchOSEntry, '-') == 1)   // only 1 value range allowed
  ) {
    mos = GetStrArraySeparatedByChar (MatchOSEntry, '-');
    if (mos && (mos->count == 2)) { // do more strict
      a = mos->array[0];
      b = mos->array[1];

      ia = AsciiOSVersionToUint64 (a);
      ib = AsciiOSVersionToUint64 (;
      ic = AsciiOSVersionToUint64 (CurrOS);

      allow = ((ia <= ic) && (ib >= ic));

      MsgLog (
        "a: %a (%d) | b: %a (%d) | c: %a (%d) | allow: %a\n",
        a, ia, b, ib, CurrOS, ic, allow ? "yes" : "no"
      );
    }

    DeallocMatchOSes (mos);
  }
}

 

 

Hi, I'm working at same set of functions in Enoch right now, but in truth I thought of passing as an argument any character to use as a separator (anyway the comma is now used as default on some users config and the initial thought to using it was just because is universally used as separator mostly every where (code, csv, wording in general)).

Instead for "MatchBuild" I would like to acquire any character that is not a letter or a number, ... and this will be the current separator (the OS build string contains only those ..no?). this to matain compatibility, while I think no one is using this :lol: .
Whether it will work well in Enoch, I will present it to Slice ..if he like it
  • Like 1

Wow, indeed r4000 patches the SMBIOS table even with DellSMBIOSPatch, set to false in config.plist.

With vanilla r4000:

attachicon.gifbefore1.jpg

 

With your build:

attachicon.gifafter1.jpg

Works as usual, no problems and the system log is clean now (I'm always using the verbose mode and can notice any suspicious changes). Good work!

Just vanilla r4000 has old dellsmbiospatch code(problem about kexttopatch)

 

I just changed files from syscl's uploaded files v2. And build

 

I think edk2 problem maybe resolved by slice in r3999.

 

I just confirm who has problem rtc, audio problem in r3998 vanilla

 

Thank you for report

 

나의 LG-F410S 의 Tapatalk에서 보냄

here is fix build r4000 with edk2 r23837

attachicon.gif스크린샷 2017-02-06 오후 11.46.34.png

 

enjoy

 

deleted build file to avoid confusion

 

 

I do not understand where is the fix for I can compile. Sorry for my english...

 

Thanks

Yosh Micky long live Enoch. The separator will remain the same ("," comma). For MatchBuild & current "-" dash (both Im still prefer it should to be unique / to reject any given multiple values separated by commas for now). That dash is to represent range, let say "10.7.x,10.8.x,10.9.x,10.10.x,10.11.x,10.12.x" should be same as "10.7-10.12".

 

Sherlocks check this

  • Like 2

Yosh Micky long live Enoch. 

 

it's a train for me :)

 

The separator will remain the same ("," comma). For MatchBuild & current "-" dash (both Im still prefer it should to be unique / to reject any given multiple values separated by commas for now). That dash is to represent range, let say "10.7.x,10.8.x,10.9.x,10.10.x,10.11.x,10.12.x" should be same as "10.7-10.12".

 

Sherlocks check this

I can't see a big difference...

"10.7.x-10.8.x-10.9.x-10.10.x-10.11.x-10.12.x"

"10.7.x,10.8.x,10.9.x,10.10.x,10.11.x,10.12.x"

.... but do as you like :)

 

EDIT

'/' or '\' can be used to divide a path into its components   :idea:

  • Like 1

right.

 

Slice made a mistake in r3999 commit.

 

now r4000, has v1 code(problem)

 

slice should be update syscl's dellsmbiospatch v2 code.

http://www.insanelymac.com/forum/topic/306156-clover-bugissue-report-and-patch/?p=2363264

 

build is no problem. checked more 

 

Sherlocks  r4000 fix v2.zip 

 

Fix kext patch broken since rev 3999.

 

Fred

@wowfunhappy 

so it works to go to windows. then why dont you create a default volume Clover to boot macOS - that way, macOS can boot and does not require any intervention.

 

As I mentioned in my post, macOS is already set as the default. That's why this is so odd.

 

 

From Windows you can use easyuefi to change boot.

It looks like easyuefi costs $30? I'm not opposed to paying for software, but that's a lot of money for something that really should be happening automatically anyway.

Edit: The free version won't work on my pro edition of Windows.

Just notice iMac17,1 does support Night Shift.

 

@Slice

 

i tested r4002 build with edk2 23837.

no problem. it's good.

attachicon.gif스크린샷 2017-02-07 오후 2.05.11.png

 

thank you for update commits

I speak too soon Slice(Platform.h has already been included in libegint.h), thank you! I tested r4002 6 possible cases(like I mentioned in DellSMBIOSPatchV2):

  • No DellSMBIOSPatch key in config.plistunchecked Dell SMBIOS Patch in binaries patching: truncate Model Identifier (as expected)
  • No DellSMBIOSPatch key in config.plistchecked Dell SMBIOS Patch in binaries patching: correct Model Identifier (as expected)
  • DellSMBIOSPatch = Trueunchecked Dell SMBIOS Patch in binaries patching: truncate Model Identifier (as expected)
  • DellSMBIOSPatch = Truechecked Dell SMBIOS Patch in binaries patching: correct Model Identifier (as expected)
  • DellSMBIOSPatch = False,  unchecked Dell SMBIOS Patch in binaries patching: truncate Model Identifier (as expected)
  • DellSMBIOSPatch = Falsechecked Dell SMBIOS Patch in binaries patching: correct Model Identifier (as expected)

 

No one failed. Kext patches are OK in all the six cases, because I use hot patch for my NVME and BT.

 

Thank you @Sherlock, thank you @Slice.

 

Have a great day,

syscl

  • Like 2

I speak too soon Slice(Platform.h has already been included in libegint.h), thank you! I tested r4002 6 possible cases(like I mentioned in DellSMBIOSPatchV2):

  • No DellSMBIOSPatch key in config.plistunchecked Dell SMBIOS Patch in binaries patching: truncate Model Identifier (as expected)
  • No DellSMBIOSPatch key in config.plistchecked Dell SMBIOS Patch in binaries patching: correct Model Identifier (as expected)
  • DellSMBIOSPatch = Trueunchecked Dell SMBIOS Patch in binaries patching: truncate Model Identifier (as expected)
  • DellSMBIOSPatch = Truechecked Dell SMBIOS Patch in binaries patching: correct Model Identifier (as expected)
  • DellSMBIOSPatch = False,  unchecked Dell SMBIOS Patch in binaries patching: truncate Model Identifier (as expected)
  • DellSMBIOSPatch = Falsechecked Dell SMBIOS Patch in binaries patching: correct Model Identifier (as expected)

 

No one failed. Kext patches are OK in all the six cases, because I use hot patch for my NVME and BT.

 

Thank you @Sherlock, thank you @Slice.

 

Have a great day,

syscl

 

+1

Tested the same scenario on my ProBook, all works well! Thank you, guys!

  • Like 1
×
×
  • Create New...