MakAsus Posted January 11 Share Posted January 11 (edited) 2 hours ago, miliuco said: @Slice More doubts for me as I am not a programmer and my skills are limited. The value 0x803 seems to fit more closely with the sum of bitmasks (1+2+800) and, on the other hand, the value 0x380 (80+100+200) does not match what is expected. However, the value I see on macOS is 03080000. So could it be that Clover or OpenCore save the value correctly and macOS saves it in the reverse order? Please type a CsrActiveConfig value (use 0x prefix for hex): 0x803 Active values for 0x803 (2,051) : CSR_ALLOW_UNTRUSTED_KEXTS - 0x1 (1) CSR_ALLOW_UNRESTRICTED_FS - 0x2 (2) CSR_ALLOW_UNAUTHENTICATED_ROOT - 0x800 (2,048) Please type a CsrActiveConfig value (use 0x prefix for hex): 0x380 Active values for 0x380 (896) : CSR_ALLOW_DEVICE_CONFIGURATION - 0x80 (128) CSR_ALLOW_ANY_RECOVERY_OS - 0x100 (256) CSR_ALLOW_UNAPPROVED_KEXTS - 0x200 (512) (BitMask Decode script by corpnewt). 0x1 + 0x2 + 0x800 = 0x803 This is simple binary arithmetic. Take a regular calculator, click View > Programmer > Hexadecimal and add the values. 😉 2 hours ago, miliuco said: @Slice Config.plist has the right value: But Hackintool and even nvram command in Terminal or IOReg have reverse order: Since About This Hack gets the value from IOReg, the value is displayed as is. let sipValue = run ("ioreg -fiw0 -p IODeviceTree -rn options | grep \"csr-active-config\" | awk '{print \"(0x\"substr($3,4,2) substr($3,2,2) substr($3,6,4)\")\"}' | tr -d '\n'") What I don't know is why in config.plist it has to be the other way, I suppose Clover and OpenCore expect this value in Little Endian although in other places we see it as Big Endian. <key>CsrActiveConfig</key> <string>0x0803</string> Edited January 11 by MakAsus 1 1 Link to comment Share on other sites More sharing options...
Slice Posted January 11 Share Posted January 11 @miliuco Clover, OpenCore and macOS think similar. The error is in application About_This_Hack. 0x0803 = <03080000> byte by byte. 0x0803 != 0x03080000 2 1 Link to comment Share on other sites More sharing options...
miliuco Posted January 11 Share Posted January 11 1 hour ago, Slice said: Clover, OpenCore and macOS think similar. The error is in application About_This_Hack. 0x0803 = <03080000> byte by byte. 0x0803 != 0x03080000 Ok, understood, thanks. Link to comment Share on other sites More sharing options...
matxpa Posted January 11 Share Posted January 11 Just now, Slice said: @miliuco Clover, OpenCore and macOS think similar. The error is in application About_This_Hack. 0x0803 = <03080000> byte by byte. 0x0803 != 0x03080000 No, I'm sur the error comes from Apple and System commands "ioreg" and "nvram", isn't it ? ioreg -fiw0 -p IODeviceTree -rn options | grep "csr-active-config" "csr-active-config" = <03080000> nvram csr-active-config csr-active-config %03%08%00%00 nvram csr-active-config | sed 's/%//g' csr-active-config 03080000 nvram csr-active-config | awk '{print "0x"$2}' | sed 's/%//g' 0x03080000 <03 08 00 00> is the reverted hex value of <08 03 00 00> but is 0x803 a real hex value, may be Hackintool Calc is wrong too ? And what you'd like to see : ioreg -fiw0 -p IODeviceTree -rn options | grep "csr-active-config" | awk '{print "(0x"substr($3,4,2) substr($3,2,2) substr($3,6,4)")"}' (0x08030000) as you can see with ETH @Jief_Machak & @Slice it's Clover r5157 (1947d48) at 20240110-20h48 XCODE15 RELEASE and a working BCM94360 (as BCM worked fine with r5157 (a9b0654) (20231112-03h48), r5157 (1914496) (20231116-19h14) and r5157 (bdb7a95) (20231116-22h10) ioreg -fiw0 -p IODeviceTree -rn options | grep "csr-active-config" | awk '{print "(0x"substr($3,4,2) substr($3,2,2) substr($3,6,4)")"}' | sed 's/0*)$/)/g' (0x0803) nvram csr-active-config | sed 's/%//g' | awk '{print "(0x"substr($2,4,2) substr($2,2,2)")"}' | sed 's/0)$/)/g' (0x803) nvram csr-active-config | sed 's/%//g' | awk '{print "(0x"substr($2,3,2) substr($2,1,2)")"}' | sed -e 's/x0/x/g' -e 's/0)$/)/g' (0x803) Regards 1 1 Link to comment Share on other sites More sharing options...
Slice Posted January 11 Share Posted January 11 Thanks for confirmation the Clover works. Anyway record like <03080000> means a set of bytes from low to big. First byte is 03, second is 08, third is 00 etc. Your script is wrong. 0x0803 means as usual 03 is first byte, 08 is second byte. 1 1 Link to comment Share on other sites More sharing options...
Slice Posted January 11 Share Posted January 11 Same as decimal numbers 1357 (one thousand three hundreds fifty seven). 7 is low digit 5 means 5*10 3 means 3*100 1 means 1*1000 For hex numbers all is the same 0x0803 means 3*1 0*16 8*256 From right to left. 1 1 Link to comment Share on other sites More sharing options...
PG7 Posted January 11 Share Posted January 11 (edited) 2 hours ago, matxpa said: hello, can you pass me this Clover r5157 Thank you and good day Edited January 11 by PG7 1 Link to comment Share on other sites More sharing options...
Slice Posted January 11 Share Posted January 11 On 1/8/2024 at 12:15 PM, MakAsus said: Yes SMBIOS->Trust = false. I understand so we didn't come to final solution. And I also just want so that it becomes as it was earlier in Clover and as it is in OpenCore now. The last release in which I saw the correct memory map, it seems to me, was v5.0 r5119. What if you set "true"? 1 Link to comment Share on other sites More sharing options...
matxpa Posted January 11 Share Posted January 11 (edited) 23 minutes ago, PG7 said: hello, can you pass me this Clover r5157 Thank you and good day @PG7 Hi, below is r5157 (aka 5156+++) CloverX64_r5157_20240110-20h48_1947d48_XCODE15_RELEASE_master_local.efi (rename it to BOOTX64.efi and CLOVERX64.efi, but you know that ...) Regards Edited January 11 by matxpa 4 1 Link to comment Share on other sites More sharing options...
Slice Posted January 11 Share Posted January 11 @MakAsus and other having problems with Memory shown in SystemProfilier. As well try to set SMBIOS->Memory->Channels=2 By default this value = 1 1 Link to comment Share on other sites More sharing options...
matxpa Posted January 11 Share Posted January 11 (edited) 2 hours ago, Slice said: Thanks for confirmation the Clover works. Anyway record like <03080000> means a set of bytes from low to big. First byte is 03, second is 08, third is 00 etc. Your script is wrong. 0x0803 means as usual 03 is first byte, 08 is second byte. @Slice Your script is wrong., may be but which one ? "ioreg' and/or "nram" aren't my script(s) (but surely macOS components), they both return <03080000> value where 1st byte is at 1st place, second byte 2nd place and so on and <08030000> is the reverted value ATH displays a formatted, ">" replaced with ")" & "<" replaced with "(0x", third word from "ioreg" returned value : "csr-active-config" = <03080000> Regards Edited January 11 by matxpa 1 Link to comment Share on other sites More sharing options...
Slice Posted January 11 Share Posted January 11 3 minutes ago, matxpa said: @Slice Your script is wrong., may be but which one ? "ioreg' and/or "nram" aren't my script(s), they both return <03080000> value where 1st byte is at 1st place, second byte 2nd place and so on and <08030000> is the reverted value ATH displays a formatted, ">" replaced with ")" & "<" replaced with "(0x", third word from "ioreg" returned value : "csr-active-config" = <03080000> Regards Again "csr-active-config" = <03080000> is right But About_This_Hack shows 0x03080000 which is wrong. https://www.insanelymac.com/forum/topic/284656-clover-general-discussion/?do=findComment&comment=2815397 1 Link to comment Share on other sites More sharing options...
miliuco Posted January 11 Share Posted January 11 @matxpa If the key is to show 08030000 instead of 0x0803000 as @Slice says (I'm not sure of understand completely this statement), it's easy to remove 0x in the tooltip: if sipValue.length == 12 && !sipValue.contains("(0x\">\"g)") { osSipInfo += "(" + "\(sipValue.dropFirst(3))\n" } else { osSipInfo += "\n"} What do you think about it? Spoiler 1 Link to comment Share on other sites More sharing options...
MakAsus Posted January 11 Share Posted January 11 (edited) 2 hours ago, Slice said: What if you set "true"? 1 hour ago, Slice said: @MakAsus and other having problems with Memory shown in SystemProfilier. As well try to set SMBIOS->Memory->Channels=2 By default this value = 1 I changed my config file: <dict> <key>Memory</key> <dict> <key>Channels</key> <integer>2</integer> </dict> <key>Trust</key> <true/> </dict> and nothing has changed. preboot.log Edited January 11 by MakAsus Link to comment Share on other sites More sharing options...
jsl2000 Posted January 12 Share Posted January 12 On 1/11/2024 at 9:19 AM, MakAsus said: I compiled CloverBootloader commit 1947d48 which also works fine. I also compiled About This Hack.app Version 1.1.0 (1400). If anyone needs it, I can add it to my GitHub repository. Thanks and please add them to your GitHub ASAP ! Link to comment Share on other sites More sharing options...
Slice Posted January 12 Share Posted January 12 10 hours ago, MakAsus said: I changed my config file: <dict> <key>Memory</key> <dict> <key>Channels</key> <integer>2</integer> </dict> <key>Trust</key> <true/> </dict> and nothing has changed. preboot.log 67.5 kB · 2 downloads No effect is the bug. 1 Link to comment Share on other sites More sharing options...
MakAsus Posted January 12 Share Posted January 12 3 hours ago, Slice said: No effect is the bug. It's a pity. Link to comment Share on other sites More sharing options...
matxpa Posted January 12 Share Posted January 12 15 hours ago, Slice said: Again "csr-active-config" = <03080000> is right But About_This_Hack shows 0x03080000 which is wrong. https://www.insanelymac.com/forum/topic/284656-clover-general-discussion/?do=findComment&comment=2815397 @Slice Hi I apologize, you're right to say that I'm wrong. Regards Link to comment Share on other sites More sharing options...
matxpa Posted January 12 Share Posted January 12 (edited) 16 hours ago, miliuco said: @matxpa If the key is to show 08030000 instead of 0x0803000 as @Slice says (I'm not sure of understand completely this statement), it's easy to remove 0x in the tooltip: if sipValue.length == 12 && !sipValue.contains("(0x\">\"g)") { osSipInfo += "(" + "\(sipValue.dropFirst(3))\n" } else { osSipInfo += "\n"} What do you think about it? Reveal hidden contents @miliuco Hi ioreg -fiw0 -p IODeviceTree -rn options | grep "csr-active-config" | awk '{print substr($NF,8,2) substr($NF,6,2) substr($NF,4,2) substr($NF,2,2)}' | sed -e 's/^0*/(0x/g' -e 's/0*$/)/g' (0x803) nvram csr-active-config | sed 's/%//g' | awk '{print substr($NF,8,2) substr($NF,6,2) substr($NF,4,2) substr($NF,2,2)}' | sed -e 's/^0*/(0x/g' -e 's/0*$/)/g' (0x803) Regards Edited January 12 by matxpa 1 Link to comment Share on other sites More sharing options...
rramon Posted January 12 Share Posted January 12 On 1/10/2024 at 8:03 PM, MakAsus said: If you only have one Sonoma, then all the kexts can be put in the folder EFI/CLOVER/kexts/Other, but even in this case, I think it’s more correct to put the problematic kexts in the folder EFI/CLOVER/kexts/"system number". This will allow you, in an emergency, to boot into the installer of the previous version of the OS. Mini-PCIE 12+6 Pin Adapter plugged directly on my motherboard, so no "classic" PCI-E It works exactly the same way for a friend of mine. Otherwise, you set the value 0x0803, then you will fulfill the requirement for the root OCLP patch. I do not recommend disabling SIP completely; most programs will stop working. And you will need to find patches for each of them, and so Lilu and AMFIPass do everything you need automatically. One last thing: I have never used OCPL from Clover before. Always from OpenCore. This is a much more difficult way requiring more power understanding each of the settings. In my case, the order to adding each kext was strictly important. IOSkywalkFamily.kext should be below WhateverGreen.kext like on a picture: Thanks for your thorough explanation, this helps so much! 👍 I have one last question regarding SIP: just checked and my current setting is 0x67 (I‘m using Plist Editor Pro to edit my config.plist). Would this work with OCLP and if not, is 0x0803 similar in safety as 0x67 or more strict? Thanks again Link to comment Share on other sites More sharing options...
miliuco Posted January 12 Share Posted January 12 @rramon 0x803 is mandatory for OCLP root patch. No patch with any other value. Link to comment Share on other sites More sharing options...
Slice Posted January 12 Share Posted January 12 0x867 will be logical sum of these two values. 42 minutes ago, miliuco said: @rramon 0x803 is mandatory for OCLP root patch. No patch with any other value. I doubt about any. But I can't check as I need no OCLP. 1 Link to comment Share on other sites More sharing options...
LAbyOne Posted January 12 Share Posted January 12 1 hour ago, miliuco said: @rramon 0x803 is mandatory for OCLP root patch. No patch with any other value. Not true (in my case at least) as to run certain app i needed 867 and OCLP never failed Link to comment Share on other sites More sharing options...
rramon Posted January 12 Share Posted January 12 (edited) Hmm, I have a mid 2012 MacBook Pro 9,1 running fine with OCLP (Ventura) and completely disabled SIP - but I‘m not sure about Clover in combination with OCLP.. Does OCLP actually „know“ the 0x67 value? Edited January 12 by rramon Link to comment Share on other sites More sharing options...
LAbyOne Posted January 12 Share Posted January 12 OCLP Run after checking the minimum requirements to operate are met, is just an application made to apply a bunch of patches to enable older hardware on most recent OS the value suggested by Dortania being 803 is the CSR minimum needed configuration to apply patches 1 hour ago, rramon said: Does OCLP actually „know“ the 0x67 value? Who cares? SIP is the one that take care of it not OCLP you can use whatever CSR configuration if it integrates the minimum values required to modify the System Link to comment Share on other sites More sharing options...
Recommended Posts