Contribute
Register

[GUIDE] General Framebuffer Patching Guide (HDMI Black Screen Problem)

Joined
Oct 26, 2022
Messages
4
Motherboard
gigabyte B360m d3h
CPU
i7-8086k
Graphics
UHD 630
@Coder2j

The IGPU patching in your config.plist matches with the Connector Types shown in Hackintool. So if you only have 3 connectors available it is because you have only set three of the four connectors.

Con-0 has been set as a DisplayPort <00040000>
Con-1 has been set as a HDMI <00080000>
Con-2 has been set as HDMI <00080000>
Con-3 has been set as dummy/empty <01000000>

As shown in the screenshot from the DeviceProperties section of your config.plist.

View attachment 556999

This is a screenshot showing the different Display Connector Types and their corresponding values.

View attachment 557000
So based on the above at least two of the Con-x entries in your config are wrong. Could be more. As you have full acceleration using the HDMI connector it is likely that one of the two HDMI entries is correct.

As the DisplayPort connector doesn't work correctly I can only assume that is is incorrectly configured.

Your config lacks any mention of the DVI and VGA connectors.

When testing the 4 x display connectors did you use IORegistryExplorer to confirm which connector was active when each port was used. Even when full acceleration wasn't provided, your IOReg should have told you which port on the motherboard was activated by each connector as it was tested.

I am sure you are aware that VGA connectors are not natively supported in macOS. So the chances are your VGA connector won't work, but setting it correctly, even if using a process of elimination as you identify the other three connectors, would be advisable. VGA connectors are often found to work when set as DisplayPort. Not sure why but that is common enough to be viable.

Don't set any of the connectors with the Dummy connector type, unless you want to explicitly disable that connector.

As you have messed up the connector types so splendidly I am wondering what your system sets each connector as natively, i.e. when there are no DeviceProperty over-rides, all the 'con-x' entries are removed from your config.plist.

DO NOT post a copy of your config.plist with your Serial Number visible. It will just result in the post being moved to a non-public forum before being deleted. As has happened here!
Thanks for your quick reply.

When all the con-x are removed, I got no display signal after the verbose. Although current patch setting is messed, it is the only setting to get at least my HDMI work.


As shown in the Hackintool, the third row is red when I connected with HDMI. So it means that my Framebuffer setting for the con2 is correct right?

hackintool Connectors Info.png


I connect both HDMI and Displayport, but only HDMI port was recognised as shown below screenshot.

ioregistry.png


I tried connection type DP for row 1 and 2 with different possible busid, but none of them work. Does it mean that my DP port should be the con3? So I think I can try to enable the con3 with different index (what possible value is it? 4 or can be 1 or 2?) and BusID and connection type to DP 00040000? Can you guide me how can I test further to make my DP port working? Thanks!
 
Last edited:

Edhawk

Moderator
Joined
Aug 2, 2013
Messages
4,540
Motherboard
Asus TUF Z390 Gaming
CPU
i5-8500
Graphics
RX 580
Mac
  1. iMac
  2. MacBook Air
  3. MacBook Pro
Mobile Phone
  1. iOS
Post two copies of your IOReg so we can see what is being presented in your system.

The first should be a copy while you are using the con-0, con-1, con-2 and con-3 device properties.

The second should be a copy while all these con-x entries have been removed/deleted, so we can see what you system uses natively, with just the AAPL,ig-platform-id entry present, no need for the device-id entry, plus the frame buffer-patch-enable, stolenmem, fbmem and unifiedmem entries.

Screenshot 2022-10-26 at 21.47.07.png
Screenshot 2022-10-26 at 21.46.45.png

Showing isolated screenshots like the one you posted above is pointless, as it only shows one section of the IOReg. Not one that we need to see either.

We need to see at least 3 different locations, AppleIntelFramebuffer@0, @1 and @2 to see what your system is using. Possibly AppleIntelFramebuffer@3 will show up in the second IOReg, if it is not explicitly disabled.
 
Joined
Oct 26, 2022
Messages
4
Motherboard
gigabyte B360m d3h
CPU
i7-8086k
Graphics
UHD 630
Post two copies of your IOReg so we can see what is being presented in your system.

The first should be a copy while you are using the con-0, con-1, con-2 and con-3 device properties.

The second should be a copy while all these con-x entries have been removed/deleted, so we can see what you system uses natively, with just the AAPL,ig-platform-id entry present, no need for the device-id entry, plus the frame buffer-patch-enable, stolenmem, fbmem and unifiedmem entries.

View attachment 557010
View attachment 557009

Showing isolated screenshots like the one you posted above is pointless, as it only shows one section of the IOReg. Not one that we need to see either.

We need to see at least 3 different locations, AppleIntelFramebuffer@0, @1 and @2 to see what your system is using. Possibly AppleIntelFramebuffer@3 will show up in the second IOReg, if it is not explicitly disabled.
Case 1:
config.plist setting:
config1.png

Hackintool:
hackintool1.png

IOReg:
iore-1-0.png
iore-1-1.png
iore-1-2.png
iore-1-3.png

Results: Only HDMI working with acceleration

Case 2:
config2.png


Result: display black screen, then no signal after verbose can not enter into macOS.
 
Joined
Oct 26, 2022
Messages
4
Motherboard
gigabyte B360m d3h
CPU
i7-8086k
Graphics
UHD 630
Hi @Edhawk,

I have read the guide in the first page a couple of times more, I think I misunderstood previously. Now I use two monitors and cables (HDMI and DP) to test my connector using the Hackintool and generate the Framebuffer patch as suggested by the guide. Here is the result, I can see two rows are red in Hackintool, the first row index 1, port 5 and type is DP, the third row index 3, port 7 and type is HDMI. I can even see the two monitors were correctly recognised in the display section, e.g. monitor names. The monitor connected with the HDMI cable is working normally, however, the monitor connected with the dp cable is not showing any graphics with no signal and soon goes to power save mode.

I also noticed one thing that in the Hackintool info section, my current Framebuffer model is iMac19,1, the selected Framebuffer model is macmini8,1. Do I need to change my SMBIOS to macmini8,1? My CPU is i7-8086k. The real Apple iMac19,1 only shipped natively intel 8th gen i5 and i9, no i7. The real Apple Macmini8,1 shipped with intel 8th get i3, i5 and i7, although their cpu is mobile one with u as the suffix.

The following screenshoots are my config.plist, Hackintool info and as you asked the 3 different IOReg screenshoots. I have tried to google it for the whole day and read the whole thread in this guide. Don't know what else I can try to fix it. Can you help me what might be the issue or what I can try to fix it? Thanks very much!

config3.png
hackintool2-1.png
hackintool2-2.png
hackintool2-3.png
hackintool2-3.png
iore-2-1.png
iore-2-2.png
iore-2-3.png

hackintool2-4.png
 

Edhawk

Moderator
Joined
Aug 2, 2013
Messages
4,540
Motherboard
Asus TUF Z390 Gaming
CPU
i5-8500
Graphics
RX 580
Mac
  1. iMac
  2. MacBook Air
  3. MacBook Pro
Mobile Phone
  1. iOS
If you know con-0 is the DP connector and con-2 is the HDMI connector, you need to make those changes in your IGPU framebuffer settings.

You can then try con-1 as DVI and then as VGA, to see which connector is correct. I would suggest setting it as DVI first. See if that helps.

Using a non-native CPU/IGPU setup is never ideal, but it should work the same as a native CFL CPU.

The difference in the Mac Model names is down to the fact you are using a Framebuffer that provides 3 x connectors that can be used to drive a display.
  • This framebuffer is more suited to the Macmini8,1 as that is how that system operates, i.e. without a discrete GPU and the IGPU undertakes all graphics processing.
  • The iMac19,1 expects the IGPU to be used with a discrete GPU and for the IGPU to be run with a Headless/empty framebuffer, i.e. the IGPU is not used to drive a display just for QuickSync and Compute processes. The Discrete GPU is used for graphics processing.
While you are not using a discrete GPU, it might be wise to switch to the Macmini8,1 SMBIOS as it better matches your system. This may fix some of the GPU issues you are facing.

Before you switch to the Macmini8,1 SMBIOS:
  • Make sure you sign out of your iCloud account, as you will face issues when you reboot your system with the new SMBIOS data, if you don't.
 
Joined
Apr 22, 2014
Messages
43
Motherboard
Intel NUC8i7BEH
CPU
i7-8559U
Graphics
Iris Plus 655
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
Hi,

I believe I'm in the right place to ask for help.

As shown in my signature, I currently run Catalina smoothly on an ASUS Z490-P mobo, supplied with an I9-10850K and Intel UHD 630, with an external IIYAMA display (installed and running OC 068 bootloader). The only running port is DP, in this case, however the display is supplied with both HDMI and DP-1.2.

And then I try to boot Ventura on the same box with OC 086. And I'm facing the black screen culprit right after OC boot when trying to boot "Install MacOS Ventura".

It is difficult to use the receipes explained in this fabulous guide, since I got only one display.

Could someone help me anyway ?

The framebuffer definitions I use are the following :

1670878168325.png



I copied them from my Catalina setup using Hackhintool (thanx Headkaze), after several refinements.
As you can see above, I tried to switch busid and type values between con0 and con1 FBs to no avail (red lines).
In both Catalina and Ventura, I used iMac20,2 as SystemProductName. I think con2 FB should be empty.

Where are the mistakes, please ? What am I missing ?

I can provide more info on request.

Many thanks, Regards, G.
 

UtterDisbelief

Moderator
Joined
Feb 13, 2012
Messages
8,461
Motherboard
Gigabyte Z590i Aorus Ultra - OC 0.8.0
CPU
i5-10600k
Graphics
Dell RX560
Mac
  1. iMac
  2. Mac mini
Classic Mac
  1. eMac
  2. iBook
Mobile Phone
  1. Android
Hi,

I believe I'm in the right place to ask for help.

As shown in my signature, I currently run Catalina smoothly on an ASUS Z490-P mobo, supplied with an I9-10850K and Intel UHD 630, with an external IIYAMA display (installed and running OC 068 bootloader). The only running port is DP, in this case, however the display is supplied with both HDMI and DP-1.2.

And then I try to boot Ventura on the same box with OC 086. And I'm facing the black screen culprit right after OC boot when trying to boot "Install MacOS Ventura".

It is difficult to use the receipes explained in this fabulous guide, since I got only one display.

Could someone help me anyway ?

The framebuffer definitions I use are the following :

View attachment 559804


I copied them from my Catalina setup using Hackhintool (thanx Headkaze), after several refinements.
As you can see above, I tried to switch busid and type values between con0 and con1 FBs to no avail (red lines).
In both Catalina and Ventura, I used iMac20,2 as SystemProductName. I think con2 FB should be empty.

Where are the mistakes, please ? What am I missing ?

I can provide more info on request.

Many thanks, Regards, G.

Hi there

Possibly try a different device-ID. The I9-10850K has a UHD 630 with ID of 0x9BC5, so:

AAPL,ig-platform-id of 0000C89B

... might work?

:)
 
Joined
Apr 22, 2014
Messages
43
Motherboard
Intel NUC8i7BEH
CPU
i7-8559U
Graphics
Iris Plus 655
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
Hi there

Possibly try a different device-ID. The I9-10850K has a UHD 630 with ID of 0x9BC5, so:

AAPL,ig-platform-id of 0000C89B

... might work?

:)

Thanks, but it does not work much better. Going up to "startup" plus "prohibited sign" after Apple logo plus a little bit of progress bar.

But the boot log is showing a lot of AppleIntelCFLGraphicsFramebuffer messages which I can't interpret. See attached file. What's up then ?

Many thanks, Regards, G.
 

Attachments

  • bootlog_1312_01_short01.txt
    271.1 KB · Views: 5

UtterDisbelief

Moderator
Joined
Feb 13, 2012
Messages
8,461
Motherboard
Gigabyte Z590i Aorus Ultra - OC 0.8.0
CPU
i5-10600k
Graphics
Dell RX560
Mac
  1. iMac
  2. Mac mini
Classic Mac
  1. eMac
  2. iBook
Mobile Phone
  1. Android
Thanks, but it does not work much better. Going up to "startup" plus "prohibited sign" after Apple logo plus a little bit of progress bar.

But the boot log is showing a lot of AppleIntelCFLGraphicsFramebuffer messages which I can't interpret. See attached file. What's up then ?

Many thanks, Regards, G.

Those Framebuffer messages are normal. There is no crash there I can see.

The prohibited sign is a classic sign of one of two things:

1) that the USB Installer is in a USB port which has become disabled during boot.

or

2) that the main drive you are booting from is not in the correct format or partition scheme.

Perhaps consider ZIP'ing your EFI folder and uploading it for us to check (remember to blank your serial-number for privacy reasons).
 
Joined
Apr 22, 2014
Messages
43
Motherboard
Intel NUC8i7BEH
CPU
i7-8559U
Graphics
Iris Plus 655
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
Those Framebuffer messages are normal. There is no crash there I can see.

The prohibited sign is a classic sign of one of two things:

1) that the USB Installer is in a USB port which has become disabled during boot.

or

2) that the main drive you are booting from is not in the correct format or partition scheme.

Perhaps consider ZIP'ing your EFI folder and uploading it for us to check (remember to blank your serial-number for privacy reasons).

Thanks : tested both your suggestions but neither works.

I will gladly appreciate your help : I attach my EFI.

Many Thanks, Regards, G.

PS I want to underline that this same rig is running smoothly Catalina 10.15.7 with OC 068.
 

Attachments

  • EFI-Tmx3.tar.zip
    36.7 MB · Views: 11
Top