Jump to content

Clover General discussion


ErmaC
30,058 posts in this topic

Recommended Posts

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:

 

config.thumb.png.3ba8360da65bfe5c74ee93dd2f92de4d.png

 

But Hackintool and even nvram command in Terminal or IOReg have reverse order:

 

Terminal.png.7e1a8486bd1b0fddfc779496b3db1cd3.png

 

Hackintool.thumb.png.b730188510945f774c323a30219ff285.png

 

ioreg.thumb.png.3b0225f81b4e0201f34849696e5da9bb.png

 

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>

Снимок экрана 2024-01-11 в 14.51.59.jpg

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

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 ?

 

Capturedecran2024-01-11a13_02_47.png.5648a079594e656c94a3b4f90eab0282.png         Capturedecran2024-01-11a15_19_33.png.0de926e1001a484b8b3deed552aa155c.png

 

 

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

Capturedecran2024-01-11a15_28_04.png.e936b5a9f798f90b5a894ae01db6a973.png Capturedecran2024-01-11a15_36_51.png.878b09d2df708fa5123bd6d60f08f8fe.png 

 

@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

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

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.

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

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.

 

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

2 hours ago, matxpa said:

 

 

Capturedecran2024-01-11a15_28_04.png.e936b5a9f798f90b5a894ae01db6a973.png 

 

hello, can you pass me this Clover r5157

Thank you and good day

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

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"?

  • Like 1
Link to comment
Share on other sites

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 by matxpa
  • Like 4
  • Thanks 1
Link to comment
Share on other sites

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 by matxpa
  • Like 1
Link to comment
Share on other sites

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

 

  • Like 1
Link to comment
Share on other sites

@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

sip.png.f28fde2dbe3b83aedd5d6c8701288ac6.png

 

  • Like 1
Link to comment
Share on other sites

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.

Снимок экрана 2024-01-11 в 21.05.27.jpg

Снимок экрана 2024-01-11 в 21.04.06.jpg

preboot.log

Edited by MakAsus
Link to comment
Share on other sites

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. 

Снимок экрана 2024-01-11 в 03.02.29.jpg

Снимок экрана 2024-01-11 в 03.02.54.jpg

Thanks and please add them to your GitHub ASAP !

Link to comment
Share on other sites

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

sip.png.f28fde2dbe3b83aedd5d6c8701288ac6.png

 

 

@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 by matxpa
  • Like 1
Link to comment
Share on other sites

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:

 

Снимок экрана 2024-01-10 в 21.18.10.jpg


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

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.

  • Like 1
Link to comment
Share on other sites

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 by rramon
Link to comment
Share on other sites

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

×
×
  • Create New...