i flashed the card back with it's original rom and test it in the cMP...no boot.May I know if your RX6800 is flashed with the Syncretic fix?
so in conclusion, it must be pre-flashed with syncretics tool.
i flashed the card back with it's original rom and test it in the cMP...no boot.May I know if your RX6800 is flashed with the Syncretic fix?
Yup, done that, worked, then flashed the firmware, it works ! MSI GTX 1070why not just start the installation of mojave ( with OpenCore, you can ignore the need of a metal card ) and just perform the 144.0.0.0 update, without installing mojave itself?
Done ! Working ! Thanks a lot !No! Completely untested and probably not. I would strongly advise upgrading to 144.0.0.0.0.
However, if you're happy to recover yourself from a brick if need be (desoldering followed CH341A + SOIC clip, or Matt card - and with a firmware backup taken before starting) then (but only then!) I'd be very happy to hear the result...
So in addition to DXEInject, we don't add Enablegop.ffs to the terminal command, but rather EnableGopDirect.ffs? Then the command for Radeon VII Flashing looks like this: ./dxeinject oldrom.bin newrom.bin enablegopdirect ffsJust modded a reconstructed 5,1 ROM image by using DXEInject with EnableGopDirect.ffs (my Radeon VII needDirectGopRendering
), flashed the cMP, and a success. I can now hold Option key to boot.
So, you may update the "Tested GPU list" with Radeon VII (EnableGopDirect).
So in addition to DXEInject, we don't add Enablegop.ffs to the terminal command, but rather EnableGopDirect.ffs? Then the command for Radeon VII Flashing looks like this: ./dxeinject oldrom.bin newrom.bin enablegopdirect ffs
This is correct?
I did it with enablegop.ffs. Unfortunately, it's not the best, but it still works.
Thanks!
At the same time as the above update, the script was also updated to auto-detect the GOP offset - no more manually searching in a hex editor forUpdate:
AMD support has been added to the EnableGop vBIOS insertion script.
In the case of AMD, considerably less space is normally available than with Nvidia, due to a strict limit of 128k for legacy and EFI parts of the potentially larger ROM image (the rest of which is only usable internally by the card itself). So far, there has largely been enough spare space on desktop format cards for Mac Pro, and not enough space on iMac cards. If there is not enough space (i.e. script reports data would be truncated) then it is necessary to strip some legacy VGA parts of the vBIOS, or check over on the iMac GPU threads here and here to see if this has already been done for your card.
EDIT: Don't forget, you can always inject EnableGop into the main system firmware instead of the GPU vBIOS - see the README.md file in the Utilities/EnableGop directory of the most recent OC builds, or here. In that case the AMD vBIOS limit does not matter.
F1 0E 00 00
and the preceding 55 AA
EfiRom
tool, and I haven't grabbed (or built) a version of that which works back further than 10.11.)Unfortunately, it's not perfect either. Not all drives are visible. They come when you move the mouse. The image falls apart while loading. Not bad for a start...This is the exact command I used to mod the cMP's ROM image.
View attachment 2165743
Did I catch you say before that you got the same result with EnableGop.ffs, that you've got now with EnableGopDirect.ffs? i.e. Works but not perfect, and the same with either?Unfortunately, it's not perfect either. Not all drives are visible. They come when you move the mouse. The image falls apart while loading. Not bad for a start...
Yes, same result, both. I hope it will be betterDid I catch you say before that you got the same result with EnableGop.ffs, that you've got now with EnableGopDirect.ffs? i.e. Works but not perfect, and the same with either?
The imperfection itself is known - it actually only applies to this card - and there is an outstanding TODO to try again to resolve it!
Yes, I hope so too!Yes, same result, both. I hope it will be better
Ok, thinking all the way backward, now I have a clue what's going on.Yes, I hope so too!
I just asked because I thought that card was supposed to work with DirectGopRendering only - @h9826790 I guess your instance of it is still DirectGopRendering only, right?
./vBiosInsert.sh -a vega56.rom EnableGop.efi vega56Gop.rom
Auto-detecting GOP offset...
Compressing EFI using EfiRom...
Combining...
hexdump: temp/truncated.rom: No such file or directory
hexdump: temp/truncated.rom: Bad file descriptor
hexdump: temp/truncated.rom: No such file or directory
hexdump: temp/truncated.rom: Bad file descriptor
- Not enough space within 128k limit - aborting!
Is it expected to improve later (eg opencore 0.9.0)?Ok, thinking all the way backward, now I have a clue what's going on.
In fact, both EnableGop and EnableGopDirect works for the Radeon VII. However, when I performed the test (almost 3 years ago) initially, when using EnableGop via OpenCore, the screen was black, no boot picker showed up. Therefore, I assume it's not working. However, I was wrong. The Radeon VII was actually activated, but just the glitches cause nothing to show up on the screen. If I use the mouse to "paint" the screen. It should be working.
On the other hand, when I perform the test after set EnableGopDirect to true. That gitches went away magically, and I can see all the icons without any extra user input. Therefore, I deeply believed that Radeon VII need EnableGopDirect to work.
However, actually, from the very beginning, both works, it's the bug causing me have that conclusion.
So, the actual fully working condition now for RadeonVII is "EnableGopDirect via OC config".
And all "EnableGop in BootROM", "EnableGopDirect in BootROM" and "EnableGop via OC config" can activate the Radeon VII, but suffer from the same glitches. Need user input via the mouse to "paint" the icon.
Thanks for your hard work here @Bmju
I just got a Vega 56, and since you updated the vbios flashing script yesterday I figured I would try to inject the EnableGop.efi via that route as opposed to messing with my cMP bootrom.
I got the vBiosInsert.sh script you linked and managed to track down copies of EfiRom and UEFIRomExtract. Got EnableGop.efi from the OpenCore 0.8.9 release.
I dumped my Vega 56 rom via AMDVBFlash on Windows, named it vega56.rom and brought it over to my Mac Pro.
I'm issuing the command:
The output I get:
Code:Auto-detecting GOP offset... Compressing EFI using EfiRom... Combining... hexdump: temp/truncated.rom: No such file or directory hexdump: temp/truncated.rom: Bad file descriptor hexdump: temp/truncated.rom: No such file or directory hexdump: temp/truncated.rom: Bad file descriptor - Not enough space within 128k limit - aborting!
I know you said the 128k issue is largely with iMacs. Plus, the preceding errors make me think that it's some other issue.
Any ideas? I also tried a copy of the newest ROM for my card from techpowerup and got the same exact result.
Edit: I should note that I was running the script on my cMP 5,1 running Mojave. Maybe a problem due to the old OS? Also, I just noticed that the version of EfiRom I found dates back to 2009. Couldn't find anything newer--I see the source on the EDK2 GitHub but not sure how to compile it.
Even now you flashed your cMP. As long as DirectGopRendering is enabled in OpenCore, the Radeon VII should able to provide a fully functional boot picker.Is it expected to improve later (eg opencore 0.9.0)?
... in OpenCore, and a usable (though could be improved) recovery option with ALT key.Even now you flashed your cMP. As long as DirectGopRendering is enabled in OpenCore, the Radeon VII should able to provide a fully functional boot picker.
Unfortunately, I have OCLP, I don't know how to enable it. Do you need the same as yours? Thank!Even now you flashed your cMP. As long as DirectGopRendering is enabled in OpenCore, the Radeon VII should able to provide a fully functional boot picker.
Open the config.plist in EFI/EFI/OC with TextEdit.Unfortunately, I have OCLP, I don't know how to enable it. Do you need the same as yours? Thank!
DirectGopRendering
false
below it to true
Thank you!Open the config.plist in EFI/EFI/OC with TextEdit.
SearchDirectGopRendering
change thefalse
below it totrue
Thanks for the great work, I can confirm it also works greatly with my Radeon VII to provide the Apple early boot screen. Very exiting progress, I have missed the early boot screen!... in OpenCore, and a usable (though could be improved) recovery option with ALT key.
EDIT: And - I'm repeating myself - the graphical issue here only applies to this particular, more problematic than usual, card.
Thanks! OK, got further this time. Here's the result:Thanks for the report. I've just put up a bugfix. Please can you try the fixed version and report back.
Auto-detecting GOP offset...
Compressing EFI using EfiRom...
Combining...
Verifying (starting at 0xEE00)...
Found compressed EFI ROM start at 0x34
Input size: 201164, Output size: 40960, Scratch size: 13376
- 0 EFI parts in original ROM, and detected 0 EFI parts in modified ROM, expected 1!
*** WARNING - FAIL ***
Done.
Yes please!I will PM you both files if you can take a look for me
Thanks for PM-ing me the files, I'll report the issue here, just in case it bites anybody else:Thanks! OK, got further this time. Here's the result:
The two files are definitely different in a hex editor, but I'm not skilled enough to know if the ROM was modified correctly and the issue is with the script's ability to verify it, or if the ROM was not modified correctly. I will PM you both files if you can take a look for me.
efirom
which you were using - it is treating filenames which start with /
(i.e. filenames specified starting at root) as options (!) and then complaining it is an invalid option. (You can test it, e.g. efirom -d /foo/bar
says Invalid option specified: -foo/bar
.)efirom
, by using the script's -t
option, e.g. ./vBiosInsert.sh -t temp -a vega56.rom EnableGop.efi vega56Gop.rom
will work. You can remove the temp
dir and files afterwards.