AMD and Nvidia GOP update (No requests, DIY)

Are you saying that both ways end up with an open window where you need to search for the file? On my UAC disabled system, it works as intended: in drop mode works as before; when launching GOPupd.bat alone, I get the message and a pause, so the user can read the instructions, then I get to select the file. I suppose I will have to test with UAC enabled on my own, I wanted this feedback from tecnics, considering that he was the one to miss the instructions.

I don’t know if i have misunderstood and this is irrelevant, but if i drag and drop a file on to “GOPupd.bat” or “#Nvidia_ROM_Info.bat” i have to press enter twice Before i see the information about the rom file.

EDIT: UAC disabled on my system.

I forgot to test the usual batch issue, spaces. Batch loves spaces and special characters in filepaths. The new batch works 100%, sorry about the previous report. I tried naming the folder “1” and everything works.

UAC Enabled/Disabled (both):

Drag&Drop file to GOPupd
Drag&Drop file to #Nvidia_ROM_Info
Drag&Drop file to #AMD_ROM_Info
Run GOPupd to manually select file

I don’t have the “double enter” issue that Pacman is reporting, either with the old or newer batch. Windows 10 with UAC enabled (disabled for testing).



Subscribed to the thread. Going to keep tabs on this thread from now on for sure. You wouldn’t know anything about the release cycle of NVFlash or a change log would you?

@Pacman
@plutomaniac

I also tested with UAC enabled and it works as I wanted when I launch GOPupd.bat without drop: a message, a pause for the message to be read (no excuses this time), a window to browse the file. There is one issue I’m seeing in drop mode, when the first file has spaces, which wasn’t present before, as it can be seen with *_ROM_Info.bat files. I will see what I can do about this.

Pacman, I haven’t seen this problem before. Is there something else to mention, something on the screen before pressing Enter? What happens if you don’t press Enter, what happens if you press only once? Only GOPupd.bat has been modified this time, I haven touched ROM_Info in a while. From my tests and Plutomaniac’s, it should work with UAC enabled or disabled.

Edit: The attached file should clear the issue with spaces.

@JoeDirt

I don’t have a changelog or any other hints. I just scan some links I have and manually check every file. Like Plutomaniac, Pacman and other contributors here, there is no magic inside or a direct link with OEMs, just a tedious work. Which is why I attached that rumbling about leechers, that probably made me look like a paranoid, I’m just pissed at their behaviour. Don’t worry, you and the community are the good guys, the leechers will be named soon.

GOPupd_select.rar (2.05 KB)

Well, it works fine, but when i drop a file on any of the bat files i have to press enter twice, it is not a problem for me, i just thought that if it happens to anyone else it might be confusing.

If i don’t enter twice, nothing happens.

I made a Little video of how it looks, it may not be totally clear but i have to press enter twice in both examples.

2.zip (3.61 MB)



Roger that sir. All the places I check are GPU manufacturers. Very rare I find an updated version. I got lucky once on ASUS and found an updated version. I’ve tried contacting Nvidia via e-mail, Facebook, and Twitter but to no avail. On a side note, I did find a reference to the GP100 in this latest version!

@Pacman

That issue is strange indeed. I don’t see what could be causing it. At that point I would expect to be UAC kicking in, but you said you tested both ways. The only other thing I can think off is the code testing for Admin rights, but I tested that part in Win7 and Win10, Plutomaniac did the same. Maybe it is user specific, as in localized OS or antivirus?

@JoeDirt

I noticed your post from OCN, didn’t checked before. But now I did and I see a mention of “GP100 E2980 SKU 0” from 5.227 version. What I see new is PreserveTune, but I would have to check more, as they changed the position of some strings. No mention of a Pascal compatible GOP yet.

@ lordkag

Yes, it is odd, Windows 10 is the US-EN version set to Swedish Local, only AV is Windows defender, i tried changing the Local to US but no change.

Dear lordkag,

I’ve tried to add GOP to Gigabyte GV-R577SL-1GD (an AMD HD5770) graphics card.
Reboot worked but cold boot could not initialize legacy ROM (q-code error b2).

During updating process there were messages in red:

“Data after ROM and not part of EFI! Please report it!”

"Unable to recover extra data at the same offset 0x1A000! Please report it!"

So here we go with reporting - please help.

GV-R577SL-1GD.rar (148 KB)

I’m afraid you are out of options. As you can see in the yellow message before the update, there is an AMD microcode at that offset, which is also mentioned in the main VBIOS code. Because the EFI ROM is larger, I had to relocate the microcode, as mentioned in the report. From your error, the microcode is important or its load has no fallback in case of an error. Even if we fix the pointer to match the new offset (and this is by no means safe or tested before), you will run out of space. You chip is 128KB or 0x20000 in size. Legacy ROM is 0xF200 in size, EFI ROM is 0xEA00, microcode is 0x4EE4 = total is 0x22AE4. Even if I would use an older GOP of size 0xE600, the total will be 0x226E4.

Unless you have spare chips of 256KB and soldering tools, plus a risk-proof attitude, you should reflash original VBIOS or buy a new card. Even if the new card is missing GOP (I have seen this from AMD), you should be able to use GOPupd.

Thank you for your comprehensive answer.

Reflashed the card to its original vBIOS already before reporting back. Are all AMD GOPs ie EFI ROMs the same size? The question comes from the idea that the 5770 cards were once used on MAC… one can find evidencies in Internet (http://www.techpowerup.com/gpudb/2234/ra…ac-edition.html). Cards must be initialized during boot-time.

TPU db contains also a vBIOS of Apple HD5770. It has EFI part included but GopInfoX.exe crashes after showing this information. Is it possible to use this EFI ROM?

Apple.HD5770.1024.100511.rar (83.7 KB)

The size problem is questionable. Starting with 1.53.0.0.0, AMD GOP is universal, one and the same for each card. Before that, there were many released with legacy tables inside, that worked for a specific card and probably marginally for cards that supported that configuration. This also means that older GOPs were actually larger because of the included legacy tables. You shouldn’t use a Mac GOP, it was designed for Mac OS and (probably) by Mac engineers, some of them are compiled as EBC = EFI byte code. Just look at the VBIOS you uploaded, does it look like something you would use outside Mac OS?

Apple_HD5770.png



For your card, here is the math. You probably have a 0x20000 chip, test this with GPU-Z and save the current VBIOS, check the size. In order to remain in that margin, you need 0x20000 - 0xF200 - 0x4EE4 = 0xBF1C, the size of the EFI ROM. If you want to have the microcode in the same position, you need 0x1A0000 - 0xF200 = 0xAE00 size of EFI ROM. Please note that the EFI ROM is already compressed, there is nothing more to be done on this matter. The only EFI ROMs that are within these sizes are from 1.52.0.0.0 and bellow. I see three solutions for your problem:
- a prepared image with GOP 1.48.0.15.33, microcode is NOT relocated, nothing to fix. This should be the safest method.
- a prepared image with GOP 1.52.0.0.0, microcode is relocated, need to fix the pointer to microcode. I’m not even sure if the pointer is where I think it is, you might end up with a broken card.
- a prepared image with latest GOP 1.59.0.0.0, microcode is relocated and replaced with a dummy structure, need to fix the pointer to microcode. Apart from the risk of solution 2, you now increase it by using a dummy microcode.

Only solution 3 has a signed GOP, you won’t be able to use Secure Boot without it. Solution 1 uses an old GOP and also one of the smallest I have. Not sure why the small size, but at least is far less dangerous than the other two solutions.

The size of the EEPROM is as you wrote.

The original idea of mine was to disable CSM and have a bit faster boot but HD 5770 didn’t enable it. Secure Boot would be bonus but it’s not necessity in any way. So, let’s leave option 3 out. What’s the major difference for a user between 1.48.0.15.33 and 1.52.0.0.0 of GOP?

PS Found the following list there where 1.52.0.0.0 seems to have a signed version… Ofcourse this doesn’t give any hint on the size and suitability of it.


1.48.0.15.33 - **** - Apr 1 2013 15:17:35 - 258928 - 892957 - 0xDEADBEEF - Unsigned - F0B1F439
1.50.0.15.36 - 2499 - Jun 14 2013 16:15:09 - 264398 - 920203 - 0xDEADBEEF - Unsigned - 2291F98D
1.52.0.0.0 - **** - Aug 1 2013 15:39:57 - 2538 - 936442 - 0xDEADBEEF - Signed - ED421429
1.52.0.0.0 - 2539 - Aug 1 2013 15:41:39 - 267852 - 936470 - 0xDEADBEEF - Unsigned - 89268A72

Sadly, I don’t have a changelog for GOPs, I would have posted one if it was available. What is immediately observable is the support for new IDs (drop the file on GOPupd.bat and don’t press anything, look in <VBIOS_name>_temp folder for a file “AMD_GOP_x.xx.x.x.x_IDs.txt”). One can also observe the increase of AMD_Build and AMD_Changelist, which points to the number of patches.

You are right, that list tells nothing of size or supported IDs, I just added what is generally useful informations. The signed 1.52.0.0.0 is a little larger and a bit different, as you can see from the numbers. From what I have (and I have a lot of them, thanks to Plutomaniac and TPU), only 1.52.0.0.0, 1.50.0.15.36, 1.48.0.15.33, 1.45.0.15.31, 1.40.0.15.24 fit the size of the chip with microcode, with only 1.48.0.15.33 and 1.40.0.15.24 fitting the microcode at the same offset. All of them unsigned and universal, of course. Since you don’t want to risk your card (perfectly understandable), I have uploaded a patched VBIOS with 1.48.0.15.33 GOP. For some reason, GOPInfoX still crashes at the end, but ATIFlash shows the microcode and the image is clean, nothing was relocated.

GV-R577SL-1GD_updGOP.rar (85 KB)

Thank you very much! The modded vBIOS works as expected both in legacy and CSM Disabled UEFI mode including cold boot. GPU-Z recognizes also UEFI part. Much appreciated.

@lordkag

Nvidia GOP GM1xx 10034

Also, various AMD GOP I’ve extracted from here and there. Some older are not found at the DB.

GOP.rar (385 KB)


AMD GOP dNo.ffs - strange accommodation version, through a variable. 4.2.3…%.d…%.d.%.d.

Edit:
What a Smart Card Reader USB Driver, KBD, mouse and etc inside?
It feels that the GOP from the external USB videocard.

@ SoniX:

I don’t know what that thing is but I did manage to figure out it’s source, a 2012 AMD ASUS laptop. So no external graphics card.

https://www.asus.com/Notebooks/X55U/overview/

That comes from the Setup module, which contains the same pattern found in the AMD GOP, probably for displaying the GOP version from inside UEFI menu. I encountered the same thing for Realtek UNDI, although not sure if it was inside Setup or DXE Core. Since the Setup GUID doesn’t change, I’ve added it to the blacklist of UEFI_Strip.

Released Version 1.9.0:
- updated GM1xx to 0x10034, thanks to Plutomaniac.
- updated GK1xx to 0x10034, thanks to me.
- added the possibility to search for file, by simply launching GOPupd.bat alone. Thanks to UBU and Sonix.