Can I replace the legacy graphics card firmware with GOP?

I have AMD HD6450 card with legacy bios with 64KB chip. So I can’t update about GOP because the chip capacity is too small. I learned from the Internet that there was a hybrid version of this card with legacy and GOP bios with 128KB chip: GV-R645-1GI rev 2

Link to the bios FZ1: vga_bios_r645gi_fz1.exe

Can I cut the GOP bios from the R645GI.FZ1 file from offset 10000 and program my card with the 64KB chip?


You can’t do that. 10000 (hex) = 65536 (dec) = 64KB.
If you add it after offset 10000 you will make the bios bigger than 64KB and atiflash will probably fail to flash. (The problem is that the vbios you try to flash is bigger than the chip.)


A hybrid bios is made of legacy bios + gop. in amd case gop relies on the data in the legacy bios (clocks and voltages for example are only in the legacy bios and not in gop section, without them the gpu will just not work). If you replace the legacy bios with the gop you will basicaly break the gpu (to be honest I doubt atiflash will even let you flash it).
The legacy bios dev id and the gop dev id need to match. I haven’t check the files but I do know that it’s possible to see several dev ids for the same gpu model despite the fact that it was produced by the same manufacturer.

I highly doubt you can keep the legacy bios and insert the gop in 64KB. (You have 2 problems: 1) space, because legacy bios + gop <= 64KB for this to work (and you can’t really cut parts from the legacy bios) 2) (if by a miracle 1) is not a problem then) you will have to change/add the address where the gop secton is starting (you will have an unusual starting address for the gop section).)

Probably the only way to do it is to buy a compatible 128KB chip, spi flash the 128KB with the modded vbios and physicaly replace the 64KB chip with the 128KB chip.
If you ask me a HD6450 just doesn’t worth the effort to do such thing.

Intel HD 4000 has similar performance with HD 6450. And if the motherboard has UEFI bios you already have gop for the Intel HD 4000.
Probably the situation is similar with AMD APU. I don’t know because I never had one.
The idea is that the HD6450 is a weak gpu. It’s not even capable to hardware decode 1080p60fps. And the entire process of replacing the chip might cost more than an used gpu that is UEFI ready (if you don’t have a spi writer you will have to buy the 128KB chip, the spi writer at least, after that you will have to unsolder the 64KB chip and solder the 128KB (dependng on the chip it can be easier or harder)).

Why exactly do you need UEFI? Unless you need more than 4 primary partitions or partitions bigger than 2TB I don’t really see a reason for UEFI. (No clue about Mac.)

@thedukesd


It will fit. The R645GI.FZ1 bios file has 120KB and the GOP from the 10000 offset to the end of the file has 56KB - so I still have 8KB of free space:


[quote="thedukesd, post:2, topic:34866"] (clocks and voltages for example are only in the legacy bios and not in gop section, without them the gpu will just not work) [/quote]
Will this data fit in 8KB and can be transferred to GOP section?

[quote="thedukesd, post:2, topic:34866"] Why exactly do you need UEFI? Unless you need more than 4 primary partitions or partitions bigger than 2TB I don't really see a reason for UEFI. [/quote]
I need this for testing with WinXP 64-bit under pure UEFI.
At the moment, I can easily boot WinXP SP2 64-bit under UEFI with CSM (GPT or MBR) using the bootmgfw.efi + winload.efi loader from the beta version of 64-bit Windows Server 2008 Longhorn 16497:
Does Windows XP have EFI?

In the vbios you posted the legacy section that you need to keep is 58,6KB and the gop is 56KB. 58,6KB + 56KB = 114,6 KB > 64 KB



You want to convert the GOP into a full standalone pure UEFI bios. That’s not going to work because GOP was not designed with that in mind.

If you gonna use the GOP you will need various parts from the legacy bios. The vbios is closed sourced so saying for sure what can be removed and what can’t be removed might not even be possible. You basicaly have to remove the tables that are not needed, reduce the size of other tables (and you actually need to understand what is in those tables).
By keeping GOP at best the vbios will be: chop down legacy bios + gop. (There should be a couple of things that you can chop down, like if the vbios has timings for 2 types of vram you can remove the vram timings for the vram you don’t physically have on the gpu (this should be safe), you might be able to chop down the powerplay table and keep only the boot clocks and nuke out the rest (I advice against this, but if you really have to reduce the space you might just have to do it, from personal experience I can tell you for sure that if the boot clocks are there and the rest of the powerplay table is a mess it will work but it will use only the boot clocks)).

You can’t just remove random parts from the legacy bios and hope it will work. You will for sure break the gpu if you random cut things from the legacy bios.
Look if you cut a particular table from the legacy bios and fix everything that has to be fixed most likely the gpu will not boot. It might go as far as refusing to be flashed with atiflash forcing you to flash it with a spi writer. With such trial and error you might happy break the bios chip…

Atomdis for example is not enough for this task. For example in the bios you posted atomdis only shows tables that start from a***. Between 0 and a*** there is a lot of data and you actually need to remove most of it to make it fit in the remaining 8KB.

Regarding vbios structure you might want to read https://www.overclock.net/forum/67-amd/1…2-390-390x.html , yes I know it’s not for TeraScale architecture but the basics from that topic still apply.
It’s possible that the stuff used by Linux (kernel + mesa) to initialise an amd/ati gpu to help a bit (windows + windows drivers being close sourced won’t help you at all because you won’t find the needed documentation, linux kernel + mesa being opensource is the only area where you will find documentation (most likely it’s incomplete documentation…)). You will basicaly have to find and read the documentation (sorry I have no links).


F…k, but I don’t want legacy + GOP !!!

I want GOP alone (56KB) + clock data, VRAM timings, tables etc. (8KB). 56+8=64KB and then it will fit in my card on flash MX25L512:



Who came up with this? How do I want to boot Windows in a pure UEFI which requires GOP will I still use the legacy firmware from graphics card? - no sense all this GOP

That is, answering the title question in the subject:
You cannot replace vbios by GOP

P.S. For testing with WinXP, I will look for and buy another AMD card that already has GOP e.g. Gigabyte GV-R667D3-1GI HD6670 or Gigabyte GV-R645-1GI rev 2 HD6450 or AMD 7xxx series