Jump to content

Installing new macOS on unsupported hardware (OCLP patcher and others)


ruslan61
322 posts in this topic

Recommended Posts

Sharing this to potentially help others who are using OCLP to patch their legacy hacks.  I have found that my old HackBookPro6,2 does not boot macOS when FeatureUnlock.kext is enabled.  See details here.

  • Like 1
Link to comment
Share on other sites

Has anyone used ocvalidate on the config.plist generated by OCLP?  If you do, you'll find the following error:

 

461671344_ScreenShot2023-03-17at3_11_54PM.png.511504ead51e60352f4d0091975c4e90.png

 

ocvalidate is flagging the following:

 

25196792_ScreenShot2023-03-17at3_10_23PM.png.dc00ab56c1100f80883e997c437444e7.png

 

Is this an ocvalidate error or a true error in the config.plist?

Edited by deeveedee
Link to comment
Share on other sites

2 hours ago, deeveedee said:

Has anyone used ocvalidate on the config.plist generated by OCLP?  If you do, you'll find the following error:

 

461671344_ScreenShot2023-03-17at3_11_54PM.png.511504ead51e60352f4d0091975c4e90.png

 

ocvalidate is flagging the following:

 

25196792_ScreenShot2023-03-17at3_10_23PM.png.dc00ab56c1100f80883e997c437444e7.png

 

Is this an ocvalidate error or a true error in the config.plist?

I saw it for the first time, but it can be a OCLP specific need. So, I let it like this.

Link to comment
Share on other sites

2 hours ago, Stefanalmare said:

If you don't have windows, delete it.

 

I'm inclined to agree with you.  Interesting that OCLP, which is supposed to be only for real Macs, generates an EFI that includes something only for Windows.

Link to comment
Share on other sites

EDIT: I asked this question on Open Core Discord and according to user 'non-metal satan,' This kernel patch replaces the code of function _apfs_filevault_allowed with <B801000000C3>.  I'm awaiting clarification of this answer.

 

==========================================

 

I'm continuing to try to understand more about Kernel Patching.  The kernel patch below is specified in the OCLP-generated config.plist for the MacBookPro6,2 (probably other SMBIOS models as well).  Is anyone able to explain what this patch does without specifying a "Find" value?  I used HexFiend to explore apfs.kext and did find the "Base" value "_apfs_filevault_allowed" in the apfs binary, but I'm not sure what the patch does without specifying a "Find" value.  Thank you.

 

OCLP kernel patch

Spoiler

1667408500_ScreenShot2023-03-22at1_02_17PM.png.38464252d0d22da66f1c5ac25a5d9443.png

 

 

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

On 3/22/2023 at 7:11 PM, deeveedee said:

EDIT: I asked this question on Open Core Discord and according to user 'non-metal satan,' This kernel patch replaces the code of function _apfs_filevault_allowed with <B801000000C3>.  I'm awaiting clarification of this answer.

 

==========================================

 

I'm continuing to try to understand more about Kernel Patching.  The kernel patch below is specified in the OCLP-generated config.plist for the MacBookPro6,2 (probably other SMBIOS models as well).  Is anyone able to explain what this patch does without specifying a "Find" value?  I used HexFiend to explore apfs.kext and did find the "Base" value "_apfs_filevault_allowed" in the apfs binary, but I'm not sure what the patch does without specifying a "Find" value.  Thank you.

 

OCLP kernel patch

  Hide contents

1667408500_ScreenShot2023-03-22at1_02_17PM.png.38464252d0d22da66f1c5ac25a5d9443.png

 

 

It allows you to enable vault with amfi disabled. I use filevault in 2 legacy machines with amfi=0x80. My 50 cents......

Edited by Stefanalmare
  • Like 2
Link to comment
Share on other sites

14 hours ago, Stefanalmare said:

It allows you to enable vault with amfi disabled. I use filevault in 2 legacy machines with amfi=0x80. My 50 cents......

Thanks, but I understand the result.  I'm asking what specifically the kernel patch does given that it does not specify a "Find" byte sequence ("Find" is empty).  I wanted to know where is the "Replace" sequence <B801000000C3> inserted into kernel.  According to user "non-metal satan" in OpenCore Discord, the kernel patch with a blank "Find" and "Base" _apfs_filevault_allowed replaces the contents of function _apfs_filevault_allowed with <B801000000C3>.  I'd be curious to know how someone determined this kernel patch, as I looked at apfs.kext with HexFiend and can't figure it out.

Edited by deeveedee
  • Like 2
Link to comment
Share on other sites

2 hours ago, deeveedee said:

Thanks, but I understand the result.  I'm asking what specifically the kernel patch does given that it does not specify a "Find" byte sequence ("Find" is empty).  I wanted to know where is the "Replace" sequence <B801000000C3> inserted into kernel.  According to user "non-metal satan" in OpenCore Discord, the kernel patch with a blank "Find" and "Base" _apfs_filevault_allowed replaces the contents of function _apfs_filevault_allowed with <B801000000C3>.  I'd be curious to know how someone determined this kernel patch, as I looked at apfs.kext with HexFiend and can't figure it out.

The sequence <B801000000C3> doesn't exist in the binary. You have to write it at the beginning of procedure "_apfs_filevault_allowed".

You should use some disassembler which is able to see symbols or look for my hackers tool to find binary.

 

[For Hackers] An utility to search a masked string

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

Just a reminder that Khronokernel doesn't want us posting links to the nightly OCLP build.  If we direct users to the OCLP nightly build, Khronokernel has asked that we post a link to this page only (not directly to the nightly build).

 

From this page:  Do not distribute these links in forums, instead direct to this file.

  • Like 4
Link to comment
Share on other sites

1 hour ago, 1Revenger1 said:

Best place is the Configuration.pdf, which outlines all of the different options and what values can be put into them.

 

That was too obvious! I feel like an idiot.  The configuration.pdf couldn't be more clear:

  1. Find
    Type: plist data
    Failsafe: Empty (Immediate replacement at Base)
    Description: Data to find. Must be equal to Replace in size if set.

Thank you.

 

EDIT: The Open Core / Dortania documentation is amazing.  I try not to take it for granted and remind myself that both Open Core and CLOVER bootloaders are being provided to us free of charge thanks to the significant  efforts by the developers.  The number of hours and the magnitude of the effort by the behind-the-scenes (and not-so-behind-the-scenes) volunteers is incredible.  We are very fortunate.

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

OCLP 0.6.2 has been released.  Thank you developers!

 

EDIT: I'm not seeing any difference in behavior of my HackBookPro6,2 after applying OCLP 0.6.2 post-install patch, but I'm not surprised since it doesn't appear that much if any of the changes from 0.6.1 -> 0.6.2 were targeted at the MBP6,2.  I did need to update NVRAM > Add > 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102 > OCLP-Version to from 0.6.1  -> 0.6.2 in my config.plist to stop the "It appears that you're running OCLP 0.6.1..." message after booting macOS.

 

EDIT2: The changelog for OCLP 0.6.3 indicates that there will be revisions for non-Metal graphics.  Looking forward to 0.6.3!

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

On 3/27/2023 at 8:33 PM, deeveedee said:

OCLP 0.6.2 has been released.  Thank you developers!

 

EDIT: I'm not seeing any difference in behavior of my HackBookPro6,2 after applying OCLP 0.6.2 post-install patch, but I'm not surprised since it doesn't appear that much if any of the changes from 0.6.1 -> 0.6.2 were targeted at the MBP6,2.  I did need to update NVRAM > Add > 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102 > OCLP-Version to from 0.6.1  -> 0.6.2 in my config.plist to stop the "It appears that you're running OCLP 0.6.1..." message after booting macOS.

 

EDIT2: The changelog for OCLP 0.6.3 indicates that there will be revisions for non-Metal graphics.  Looking forward to 0.6.3!

One of this revisions killed finder on my MBP4,1, Monterey. It works only with 0.6.2.

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

  • 2 weeks later...

I compiled OCLP 0.6.3 and used it to patch my macMini8,1, which is actually a Zotac ID92 (4th Gen. Haswell) GPU is Intel HD4600.  I get full hardware acceleration and the patch works. However . . . 

 

I use two apps with frequency, one is called Plex which I use as a media player for media I host on a Plex server on another computer.  The other is Calibre reader, which is an e-book reader that comes bundled with the Calibre e-book manager/editor/etc.  Both apps use some form of the QT framework - Plex uses QTConnect and Calibre Reader uses QTWebEngineRenderer.  Both applications work on my laptop that does not require OCLP, neither app works on my OCLP-patched macMini.  Is there a boot arg or some other solution to allow these apps to use the QT framework with OCLP?  Please help.

 

EDIT:  I removed all of the OCLP patches and tried to run Plex and Calibre.  I had the same problem with the QT Framework.  Therefore, I am ruling out OCLP as a possible cause of the problem.  I'm not sure what I did to my Zotac ID92 that would have caused a problem with the QT Framework but, since it's not likely OCLP, I will just have to keep experimenting.

Edited by mnfesq
Link to comment
Share on other sites

@mnfesq Forgive the remedial questions, but

  1. Why are you compiling OCLP 0.6.3 when nightly builds are available for download (and now the 0.6.3 release is available)?
  2. Why are you using SMBIOS macMini8,1 when a more suitable macMini SMBIOS is available for your Haswell?
Edited by deeveedee
Link to comment
Share on other sites

16 hours ago, deeveedee said:

@mnfesq Forgive the remedial questions, but

  1. Why are you compiling OCLP 0.6.3 when nightly builds are available for download (and now the 0.6.3 release is available)?
  2. Why are you using SMBIOS macMini8,1 when a more suitable macMini SMBIOS is available for your Haswell?

 

When I wrote this post, 0.6.3 was still a nightly build.  Now it's been released.  As for my SMBIOS, I used to use macMini7,1 and it was fine but when it was no longer a supported model, I tried using macMini8,1 without any ill-effects and did not need any patches until Ventura.  

 

As for the substance of my post, it turns out that my problems were with the QTWebEngine.  I found that I could not get graphics to load in Firefox in addition to the other apps I mentioned.  For now, I reverted back to an earlier version of macOS, 11.5.1, actually, and everything is running fine.  I will make a full backup of everything in this state and will then start running updates until I get back to Ventura and, hopefully, 13.3.1, without breaking anything.  I have read so many tidbits about the QTWebEngine that I am a bit confused but I recall that it may be that it has a problem with Python3, which I downloaded to compile OCLP 0.6.3.  So I don't think that OCLP has anything to do with my problem.

  • Like 2
Link to comment
Share on other sites

On 3/30/2023 at 3:59 AM, Stefanalmare said:

One of this revisions killed finder on my MBP4,1, Monterey. It works only with 0.6.2.

I thought it would be safe to test Ventura 13.3.1 on my HackBookPro6,2 after the release of OCLP 0.6.3.  After upgrading Ventura 13.2.1 to 13.3.1 and patching with OCLP 0.6.3 [RELEASE], Finder doesn't work for me.  I needed to restore Ventura 13.2.1 for working Finder.

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

×
×
  • Create New...