Jump to content

[HOW TO] Modification of AMD FB + Clover injection

AMD Radeon Frame Buffer

  • Please log in to reply
365 replies to this topic

#301
Fljagd

Fljagd

    InsanelyMac Legend

  • Donators
  • 965 posts
  • Gender:Male
  • Location:France

Great

Thank a lot

on 10.12 With Xcode 8

Spoiler

 

on 10.11.6 with Xcode 8

Spoiler


Edited by Fljagd, 27 September 2016 - 08:48 AM.


#302
Fljagd

Fljagd

    InsanelyMac Legend

  • Donators
  • 965 posts
  • Gender:Male
  • Location:France

 

 

When I try to run any of the other scripts made for < 10.12, I just get the following, which doesn't look right at all...

 

You must change the path in Ati-Fram

Attached Files



#303
bu11etpr00f

bu11etpr00f

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male

You must change the path in Ati-Fram

 

 

That doesn't really matter, since I am running the ati-personality.pl directly. I can run the Ati-fram.command from ~/Downloads, or change the path. Either way, I get the same fatal error. Thanks for the reply to help though! :)

fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/otool: fatal error in /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump


#304
Fljagd

Fljagd

    InsanelyMac Legend

  • Donators
  • 965 posts
  • Gender:Male
  • Location:France

 

That doesn't really matter, since I am running the ati-personality.pl directly. I can run the Ati-fram.command from ~/Downloads, or change the path. Either way, I get the same fatal error. Thanks for the reply to help though! :)

fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/otool: fatal error in /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump

for example
If the script is on the desktop
You must have od, also on the desktop
And in the window Terminal, do as the attached photo

Attached Files



#305
c_g_f

c_g_f

    InsanelyMac Protégé

  • Members
  • Pip
  • 5 posts

Hello everybody! First of all, Vlada, thanks a lot for your guide which has helped me a lot to understand the connectors issue. I feel so close to get it working and at the same time I feel really close to jump out of the window so... PLEASE HELP ME
 
My system:
-Motherboard: Asrock Z68 Extreme3 Gen3 (flashed with patched 2.31 bios)
-CPU: i5 2500k
-GPU: MSI R9 390 Gaming 8G
-Display: Samsung S34E790C 3440x1440
-Bios set to Onboard Graphics as primary + AHCI + CSM disabled
 
Configuration:
-macOS 10.12 Sierra + clover bootloader (uefi only + ESP + osxaptiofix2drv as the only driver installed)
-FakeSMC + ethernet in kexts/other
 
Clover Configurator changes:
-SMBIOS iMac 12,2
-Verbose boot
 
Extensions Folder changes:
-added 0x67B11002 into AMD8000Controller and AMDRadeonX4000 kexts and fixed permissions
 
Framebuffer Info
 

Personality: Baladi

ConnectorInfo count in decimal: 6

Disk offset in decimal 1928240

 

00040000 04030000 00010300 00000000 12040303 00000000

00040000 04030000 00010100 00000000 11020101 00000000

00040000 04030000 00010200 00000000 21030202 00000000

00040000 04030000 00010400 00000000 22050404 00000000

00040000 04030000 00010500 00000000 10000505 00000000

00040000 04030000 00010600 00000000 20010606 00000000

 

My codes in order:

 

12040101 DP 

22050203 HDMI 

11020304 DVI-DL 

10000406 DVI-DL 

 

Patch 1 not working

 

04000000 14020000 00010300 00000000 11020304 00000000

00040000 04030000 00010100 00000000 12040101 00000000

00080000 04020000 00010200 00000000 22050203 00000000

04000000 14020000 00010400 00000000 10000406 00000000

00040000 04030000 00010500 00000000 10000505 00000000

00040000 04030000 00010600 00000000 20010606 00000000

 

Patch 2 not working

 

00040000 04030000 00010300 00000000 12040101 00000000

00080000 00020000 00010100 00000000 22050203 00000000

00040000 04030000 00010200 00000000 21030202 00000000

04000000 14020000 00010400 00000000 11020304 00000000

00040000 04030000 00010500 00000000 10000505 00000000

04000000 14020000 00010600 00000000 10000406 00000000

 

 
 
WHAT WORKS: 
Setting 1920x1080 in GUI section in CC without ATI injection gives me native 3440x1440 resolution but the GPU shows as having 18MB Ram.. and well there are glitches galore.
 
 
THE PROBLEM: 
When I inject my GPU ID 0x67B11002 and tick ATI injection (before patching the kexts in S/L/E I tried with 0x67B01002, the one for 390X cards, but same result) I have a BLACK SCREEN and then display goes off. disconnecting and reconnecting the cable does nothing
 
 
MY QUESTIONS:
 
1. Could somebody tell me what is wrong with my patches. Vlada says we should order by senseID but how exactly?
2. I read somewhere that the HDMI kext causes trouble?
3. Maybe Im just unlucky and my mobo/GPU is a bad combination?
 
Thanks in advance for your help.



#306
Loco Massa

Loco Massa

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts

@c_g_f

 

Did you change primary graphics to iGPU in BIOS?

 

iGPU has to be primary or Sierra won't boot, at least for me ;)



#307
c_g_f

c_g_f

    InsanelyMac Protégé

  • Members
  • Pip
  • 5 posts

@c_g_f

Did you change primary graphics to iGPU in BIOS?

iGPU has to be primary or Sierra won't boot, at least for me ;)


Yes I did.. my bios settings for the graphics are:

Primary graphics: onboard
Multi monitor iGpu: disable
Shared memory: 32
Render standby: disable

I've tried with other values for shared memory and enabling multi monitor and render standby but same result. I have the DP cable linking the 390 to my monitor and a hdmi cable linking the onboard graphics to the same monitor. But there's a strange behaviour of my motherboard: if the 390 is in the system, when I enter the bios the signal goes to DP even if in bios the onboard is set as primary. The clover page also goes to DP. In windows I can actually see the second monitor, the one hooked to onboard hdmi, so I know it's working but it seems that selecting onboard as primary doesn't do what it is supposed to. I'll try with other bioses versions. I'm almost sure the problem is with my bios.

Thanks for replying!

#308
robbie

robbie

    InsanelyMac Protégé

  • Members
  • Pip
  • 4 posts

patch for ASUS Radeon R9 270X DirectCU II (2GB version)

 

dual monitors connected to DVI ports works well

macOS 10.12

 

Original:

00040000 04030000 00010101 00000000 12040401 00000000 //DP

00040000 04030000 00010201 00000000 22050502 00000000 //DP
04000000 14020000 00010300 00000000 00000606 00000000 //DVI_D
00080000 04020000 00010400 00000000 11020103 00000000 //HDMI
 
Modified:
00020000 04020000 00010101 00000000 10000306 00000000 //DVI_I
04000000 14020000 00010200 00000000 11020505 00000000 //DVI_D
00080000 00020000 00010300 00000000 22050202 00000000 //HDMI
00040000 04030000 00010401 00000000 12040101 00000000 //DP

 

 

set in config.plist in Clover:

 

Graphics/ FB Name: Futomaki

Graphics/Iniect ATI : mark

 

Kernel and Kext Patches:

 

Name: AMD7000Controller

 
Find: 
000400000403000000010101000000001204040100000000000400000403000000010201000000002205050200000000040000001402000000010300000000000000060600000000000800000402000000010400000000001102010300000000
 
Replace: 
000200000402000000010101000000001000030600000000040000001402000000010200000000001102050500000000000800000002000000010300000000002205020200000000000400000403000000010401000000001204010100000000


#309
Loco Massa

Loco Massa

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts

@c_g_f

 

make sure that you don't have a typo in the device ID. Once I tried to solve issues for an hour after an update just because I wrote 0x67B1102 instead of 0x67B11002 ;)

 

In El Capitan my r9 390 would stay black as well. I looked at different frame buffers and several had trailing "1" in the second collumn. I thought it could be a switch and tried it for the hdmi connector. Worked and kept it in Sierra as well.

 

Try this

Note the "1" at the end of the third column in the second row

00040000 04030000 00010300 00000000 12040101 00000000

                         |
                         v
00080000 00020000 00010101 00000000 22050203 00000000


00040000 04030000 00010200 00000000 21030202 00000000
04000000 14020000 00010400 00000000 11020304 00000000
00040000 04030000 00010500 00000000 10000505 00000000
04000000 14020000 00010600 00000000 10000406 00000000


#310
c_g_f

c_g_f

    InsanelyMac Protégé

  • Members
  • Pip
  • 5 posts

@ Loco Massa,

 

I have to try it, but I'm trying to make the DP to work, otherwise I'm stuck at 30hz since my monitor is 3440x1440. I'm pretty sure the patch I have now is the right one, IOJones matches the entries for the 4 ports.

 

I had to install the whole thing again because my boot or my bios became corrupt. Redownloaded bios, repatched it, reformated disk, etc. Now when I select iGPU as primary the image goes to the monitor hooked to the iGPU and I get full resolution with igpu (injecting fake intel id with some other buffer patch) but when I hooked a DP cable on the 390, boot stops at the end.

 

Maybe it has to be with HDMI audio? something is preventing the thing to work. I've been reading about DSDT and SSDT but now I just have an horrible headache.

 

When no cable is hooked to the 390 and I boot to igpu the system detect the intel card but also the 390 (I injected 0x67B01002) with all its memory but when I hook the cable I just dont see a second monitor and the system refuses to boot with a cable hooked to the 390 (I tried DP and DVI-DL)

 

If somebody has an idea please help. I've been praying like for a week but it doesn't seem to help :)



#311
Loco Massa

Loco Massa

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts

@c_g_f

 

Give adding the "1" a try for the port you want to use as your primary in macOS. If your R9 has multiple ports add the "1" to the first DP port in the frame buffer. Adding it to my HDMI port was just for my case - wall mounted display, not enough space for DP-connector, hdmi connector to the side.

 

Without patching Baladi the card should run with Radeon - the default that gets selected if there is no match for the ports.

 

For the cause of boot stopping when a DP cable gets connected: Sorry, no clue.

 

Good luck!



#312
davedumas0

davedumas0

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
  • Gender:Male
  • Location:reno nv

i cant boot with clover ive got to use enoch is there a way to do this method with enoch?



#313
Pavo

Pavo

    InsanelyMac Legend

  • Developers
  • 540 posts
  • Gender:Male
  • Location:Fort Gordon, GA

why can't you boot with Clover?



#314
davedumas0

davedumas0

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
  • Gender:Male
  • Location:reno nv

dont know it keep throwing error when i try and boot seems like its not loading kernel i dont have the time to check atm(getting ready for work)ill try AGAIN after work today


booting with clover should solve most of my issues

 

 

p.s.  i used shaneee's amd windows install from here http://forum.amd-osx....php?f=23&t=404

and this post install http://forum.amd-osx...c.php?f=24&t=80


oh yeah the hardware is a toshiba satellite l755d-s5251 on an

 

  AMD A4-3300M its an apu with an ati 6480g card

enoch correctly identifies the hardware names etc

https://postimg.org/image/m9sw64wbh/

https://postimg.org/image/ftpum63d3/

 

here is a pic of the error i get from clover

https://postimg.org/image/5ye183dq7/



#315
c_g_f

c_g_f

    InsanelyMac Protégé

  • Members
  • Pip
  • 5 posts

I've been doing some testing to see if I can finally boot using the DP port of my 390.. some very weird things happen.. and now I realise this frame buffer issue might be more complicated than I thought..

 

IF I USE BALADI... I'm unable to boot directly to any of the ports of my 390. The only way to boot is using igpu and unhooking every cable from my 390. Once a have the login image I can hook cables to the 390, the system treats them as secondary displays. In system report I can see the card as AMD Radeon 290/390 with 8192 ram.

 

Latest patch used

00040000 04030000 00010101 00000000 12040101 00000000 DP (WORKS but only if the dvi that works is hooked first)

00080000 00020000 00010200 00000000 22050203 00000000 HDMI (WORKS)

04000000 14020000 00010300 00000000 10000406 00000000 DVI-DL (DOESN'T WORK)

04000000 14020000 00010400 00000000 11020304 00000000 DVI-DL (WORKS)

00000000 00000000 00000000 00000000 00000000 00000000 

00000000 00000000 00000000 00000000 00000000 00000000

 

The fact that the DP port is recognised by the system only if the DVI is hooked first is what amazes me. That's actually why I filled the 2 last ports with zeroes but it did change anything. I read in rampage site something about dependency between some of the bits.. this has to do with that..

 

IF I USE RADEON FRAME BUFFER.. I'm still unable to boot directly to the 390. Same method as before, waiting for the login image and plugging the cables then. BUT.. every port is recognised and when I plug the DP cable the system makes the DP display primary.. system says that I'm using a AMD Radeon HD 8xxx 8192 MB

 

I have notice a very small difference with IOJones regarding the way the DP port is recognised with each buffer

 

I don't know the differences between the 2 buffers. Do I loose performance or functionality by using radeon's? how can I test?

 

Concerning my freeze at booting with the 390 I'm pretty sure is one of 2 things. My bios, in which case I could try older versions, but the latest is the only one that has CSM feature that I can disable. Or it's maybe my boot arguments or ACPI patches. I have left all those by default but maybe I should uncheck some of them. The only thing I changed was adding verbose (without verbose no boot either in case you're wondering) but there are a lot of arguments. I hope someone will be able to help..

 

Thanks to all for the information shared. I thought I would share my findings as well.

 

 

EDIT: booting directly to DP at last!!! I just don't understand this, before my first installation I've read "disable CSM" in each guide I came across. In my case it has to be enabled.. maybe it's because I'm using a patched bios?



#316
avinide

avinide

    InsanelyMac Protégé

  • Members
  • Pip
  • 1 posts

I have a little problem with my HD4870 Vapor-X. I can't find the Transmitter and Encoder ID from redsock decoder:
 

Connector Object Id [2] which is [DVI_I]
encoder obj id [0x15] which is [INTERNAL_KLDSCP_DAC1 (osx txmit 0x00 enc 0x10?)] linkb: false
Connector Object Id [2] which is [DVI_I]
encoder obj id [0x1f] which is [INTERNAL_KLDSCP_LVTMA] linkb: false
Connector Object Id [12] which is [HDMI_TYPE_A]
encoder obj id [0x1e] which is [INTERNAL_UNIPHY (osx txmit 0x20 [duallink 0x0] enc 0x1)] linkb: true
Connector Object Id [5] which is [VGA]
encoder obj id [0x16] which is [INTERNAL_KLDSCP_DAC2] linkb: false


#317
c00lface

c00lface

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts

On my ASUS R9 390 8GB STRIX I got blackscreen after patching it. My motherboard doesn't allow me to select internal graphics as first load when an PCI-E videocard is attached to the board. If I change, save it and reboot, it is auto-detected during post process and it bypass bios information/reading. Then I'm stuck at El Capitan since in Sierra I could just boot into installer, after the installation is completed I don't have video on my screen. In El Capitan my system had some random freezes sometimes(mostly when using intense 3D acceleration). I installed Warcraft 3 and start playing it, everything runs fine for a while and then it freezes. Then I made some tests and if I minimize it and start doing some other task while it still opened, system freeze too, but faster than when I'm just playing it.

 

I had successful boot with FakeID and ATI Injection, but this situation doesn't improve my experience on hackintosh.

 

My only problem is my video card, too bad the driver sucks on OS X and it isn't friendly with R9 390. Also, there is no ramebuffer for my video card(it has 5 ports, 3-DisplayPort, 1-HDMI and 1-DVI-D).

 

Guess I did everything right while searching the right connector output. Maybe somebody could point if I'm doing something wrong? Would like to hear what you guys think. Here is how I did it.

 

I made some edition to Baladi FB with my output that I got from the shell script.

Created the patch for the kext on Clover section.

Tried to boot with my own hardware ID and with FakeID, using Baladi in the FB section.

Tried all the DisplayPorts my video card have, all of them I got black screen(just black screen, it blinks like if there is video, no warning about "no signal" is displayed).

I can turn off, login normally, even reboot the system using the keyboard shortcut.

 

Here is what I get from both shell commands.

mVFsv7O.png

 

zczIsPH.png

 

Here is what I understood as the right values I should put in the last 8 digits.

IeiJG5c.png

Here is how my FB patches looks.

SCUBP0q.png

 

Hope someone helps. Thanks.



#318
Picasso

Picasso

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 369 posts
  • Gender:Male

@RampageDev

 

Can you resolve the amd 480/470/460 issue on Sierra? Any suggestion? Thank yoou master.



#319
dgsga

dgsga

    All these moments will be lost like tears in rain.

  • Members
  • PipPipPipPip
  • 218 posts
  • Gender:Male

Hi

I have just moved over to an MSI R9 270X Gaming 2G ITX graphics card as got tired of waiting for Nvidia Web updates. I have got the 2 mini display ports on the card working well with a modified Futomaki frame buffer but only when booting in verbose mode. I get a black screen when booting in normal mode. I have tried all the AMD7000Controller frame buffers with the same result. Here are the outputs of the various decoders:

ATOM BIOS Rom: 
	SubsystemVendorID: 0x1462 SubsystemID: 0x303a
	IOBaseAddress: 0x0000
	Filename: TV303MH.1L0 
	BIOS Bootup Message: 
113-MSI TV303MH.1L0 CURACAO XT V30321S C63101 64Mx32 G5 2G                  

PCI ID: 1002:6810
Connector at index 0
	Type [@offset 43588]: DisplayPort (10)
	Encoder [@offset 43592]: INTERNAL_UNIPHY1 (0x20)
	i2cid [@offset 43698]: 0x92, OSX senseid: 0x3
Connector at index 1
	Type [@offset 43598]: DisplayPort (10)
	Encoder [@offset 43602]: INTERNAL_UNIPHY2 (0x21)
	i2cid [@offset 43725]: 0x90, OSX senseid: 0x1
Connector at index 2
	Type [@offset 43608]: HDMI-A (11)
	Encoder [@offset 43612]: INTERNAL_UNIPHY1 (0x20)
	i2cid [@offset 43752]: 0x94, OSX senseid: 0x5
Connector at index 3
	Type [@offset 43618]: DVI-I (2)
	Encoder [@offset 43622]: INTERNAL_UNIPHY (0x1e)
	i2cid [@offset 43789]: 0x95, OSX senseid: 0x6
Connector at index 4
	Type [@offset 43628]: DVI-I (2)
	Encoder [@offset 43632]: INTERNAL_KLDSCP_DAC1 (0x15)
	i2cid [@offset 43789]: 0x95, OSX senseid: 0x6




TV303MH.1L0 :

113-MSI TV303MH.1L0 CURACAO XT V30321S C63101 64Mx32 G5 2G                  

Subsystem Vendor ID: 1462
       Subsystem ID: 303a
Object Header Structure Size: 360
Connector Object Table Offset: 48
Router Object Table Offset: 0
Encoder Object Table Offset: fd
Display Path Table Offset: 12
Connector Object Id [19] which is [DISPLAY_PORT]
	encoder obj id [0x20] which is [INTERNAL_UNIPHY1 (osx txmit 0x11 [duallink 0x1] enc 0x2)] linkb: false
Connector Object Id [19] which is [DISPLAY_PORT]
	encoder obj id [0x21] which is [INTERNAL_UNIPHY2 (osx txmit 0x12 [duallink 0x2] enc 0x4)] linkb: false
Connector Object Id [12] which is [HDMI_TYPE_A]
	encoder obj id [0x20] which is [INTERNAL_UNIPHY1 (osx txmit 0x21 [duallink 0x1] enc 0x3)] linkb: true
Connector Object Id [2] which is [DVI_I]
	encoder obj id [0x1e] which is [INTERNAL_UNIPHY (osx txmit 0x10 [duallink 0x0] enc 0x0)] linkb: false
Connector Object Id [2] which is [DVI_I]
	encoder obj id [0x15] which is [INTERNAL_KLDSCP_DAC1 (osx txmit 0x00 enc 0x10?)] linkb: false

01 [DISPLAY_PORT]
encoder obj  0x20 transmitter 0x11 duallink 0x2 enc 0x2

Connector at index 0
	Type [@offset 43524]: DisplayPort (10)
	Encoder [@offset 43528]: INTERNAL_UNIPHY2 (0x21)
	i2cid [@offset 43616]: 0x91, OSX senseid: 0x3

CODE CONSTRUCTION 11 02 01 03

02 [DISPLAY_PORT]
encoder obj  0x21 transmitter 0x12 duallink 0x1 enc 0x4
Connector at index 1
	Type [@offset 43534]: DisplayPort (10)
	Encoder [@offset 43538]: INTERNAL_UNIPHY1 (0x20)
	i2cid [@offset 43643]: 0x90, OSX senseid: 0x1

CODE CONSTRUCTION 12 04 02 01

03 [HDMI_TYPE_A]
encoder obj 0x20 transmitter 0x21 duallink 0x1  enc 0x3

Connector at index 2
	Type [@offset 43544]: DisplayPort (10)
	Encoder [@offset 43548]: INTERNAL_UNIPHY1 (0x20)
	i2cid [@offset 43670]: 0x93, OSX senseid: 0x5

CODE CONSTRUCTION 21 03 03 05

04 [DVI_I]
encoder obj 0x1e  transmitter 0x10 duallink 0x0 enc 0x0
Connector at index 3
	Type [@offset 43554]: DisplayPort (10)
	Encoder [@offset 43558]: INTERNAL_UNIPHY (0x1e)
	i2cid [@offset 43697]: 0x95, OSX senseid: 0x6

CODE CONSTRUCTION 10 00 04 06


11 02 01 03
12 04 02 01
21 03 03 05
10 00 04 06


	Personality: Futomaki
ConnectorInfo count in decimal: 4
Disk offset in decimal 1765440
00 04 00 00 04 03 00 00 00 01 01 01 00 00 00 00 12 04 04 01 00 00 00 00
00 04 00 00 04 03 00 00 00 01 02 01 00 00 00 00 22 05 05 02 00 00 00 00
04 00 00 00 14 02 00 00 00 01 03 00 00 00 00 00 00 00 06 06 00 00 00 00
00 08 00 00 04 02 00 00 00 01 04 00 00 00 00 00 11 02 01 03 00 00 00 00


FIXED	Personality: Futomaki
ConnectorInfo count in decimal: 4
Disk offset in decimal 1765440
00 04 00 00 04 03 00 00 00 01 01 01 00 00 00 00 11 02 01 03 00 00 00 00
00 04 00 00 04 03 00 00 00 01 02 01 00 00 00 00 12 04 02 01 00 00 00 00
00 08 00 00 00 02 00 00 00 01 03 00 00 00 00 00 21 03 03 05 00 00 00 00
04 00 00 00 14 02 00 00 00 01 04 00 00 00 00 00 10 00 04 06 00 00 00 00



I can't fathom out why it only works in verbose mode. Any help would be much appreciated.



#320
Fljagd

Fljagd

    InsanelyMac Legend

  • Donators
  • 965 posts
  • Gender:Male
  • Location:France

My HD7950 not being EFI, I flasher the Rom to get the EFI.
Now if I start with CSM I have a black screen.
You should look if your Bios CSM is enabled.
If this is the case try to start with CSM on disabled

I can't fathom out why it only works in verbose mode. Any help would be much appreciated.

Something else
Under El capitan I used FUTOMAKI, like you.
But with Sierra it did not work, now I use Aji.

It may be a test

Attached Files


Edited by Fljagd, 05 December 2016 - 08:00 AM.







0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2016 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy