Jump to content

Information on VESA modes in ATI&NVIDIA bios


DieBuche
 Share

261 posts in this topic

Recommended Posts

Yes, it would display the full resolution. New Chameleon RC5 build has the module Resolution.dylib, so flashing the GPU's BIOS isn't needed anymore.

 

 

Ok, so how do I get the boot menu to show up in 1680x1050?

 

It seems my 6870 VESA only supports 4:3 resolutions, resulting in 1400x1050 max resolution for my monitor.

 

 

Note: Once booted, any resolution works properly.

Link to comment
Share on other sites

Ok, so how do I get the boot menu to show up in 1680x1050?

 

It seems my 6870 VESA only supports 4:3 resolutions, resulting in 1400x1050 max resolution for my monitor.

 

 

Note: Once booted, any resolution works properly.

 

This is my dilemma as well. Hopefully someone can figure out how to fix this...

Link to comment
Share on other sites

hys17, I took a look at your BIOSes.

 

Here's your original table:

-------------------------------------------------------------------------------

Table 2: 16 modes, 32 bytes each

-------------------------------------------------------------------------------

1 32483 [1024 x 768] 0004ff030000ff0317049f043f050003ff020000ff0202030803250300ff302a

2 32515 [1280 x 1024] 0005ff040000ff042f059f0597060004ff030000ff0300040304290400ff302a

3 32547 [1280 x 1024] 0005ff040000ff042f059f0597060004ff030000ff0300040304290400ff302a

4 32579 [1400 x 1050] 7805770500007705a705170697061a041904000019041a041d04290400ff483f

5 32611 [1600 x 1200] 40063f0600003f067f063f076f08b004af040000af04b004b304e10411ff204e

6 32643 [2048 x 1536] 0008ff070000ff072f083f085f080006ff050000ff0510061106120611ff5456

7 32675 [2048 x 1536] 0008ff070000ff073f085f083f090006ff050000ff0510061106120611ffa00f

8 32707 [ 800 x 600] 20031f0300001f034703c7031f04580257020000570258025c02730211ffa41f

9 32739 [1280 x 768] 0005ff040000ff042f059f0597060003ff020000ff0202030803210301ff0000

10 32771 [ 0 x 0] 0000000000000000000000000000000000000000000000000000000000ff9525

11 32803 [1440 x 900] a0059f0500009f05df05ff05df068403830300008303860389038f0300ff952e

12 32835 [1680 x 1050] 90068f0600008f06bf06df062f071a041904000019041b042104370400ff2f3f

13 32867 [1920 x 1200] 80077f0700007f07e30703088708b004af040000af04b104b704d20400ff0000

14 32899 [ 0 x 0] 0000000000000000000000000000000000000000000000000000000000ff421d

15 32931 [1280 x 800] 0005ff040000ff04c305f305ff0520031f0300001f03240327032b0300ff0000

16 32963 [ 0 x 0] 0000000000000000000000000000000000000000000000000000000000ff0020

 

And here's your mod:

-------------------------------------------------------------------------------

Table 2: 16 modes, 32 bytes each

-------------------------------------------------------------------------------

1 32483 [1024 x 768] 0004ff030000ff0317049f043f050003ff020000ff0202030803250300ff302a

2 32515 [1280 x 1024] 0005ff040000ff042f059f0597060004ff030000ff0300040304290400ff302a

3 32547 [1280 x 1024] 0005ff040000ff042f059f0597060004ff030000ff0300040304290400ff302a

4 32579 [1400 x 1050] 7805770500007705a705170697061a041904000019041a041d04290400ff483f

5 32611 [1600 x 1200] 40063f0600003f067f063f076f08b004af040000af04b004b304e10411ff204e

6 32643 [2048 x 1536] 0008ff070000ff072f083f085f080006ff050000ff0510061106120611ff5456

7 32675 [2048 x 1536] 0008ff070000ff073f085f083f090006ff050000ff0510061106120611ffa00f

8 32707 [ 800 x 600] 20031f0300001f034703c7031f04580257020000570258025c02730211ffa41f

9 32739 [1280 x 768] 0005ff040000ff042f059f0597060003ff020000ff0202030803210301ff0000

10 32771 [1920 x 1080] 80077f0700007f07e30703088708380437040000370439043f045a0400ff0000

11 32803 [1440 x 900] a0059f0500009f05df05ff05df068403830300008303860389038f0300ff952e

12 32835 [1680 x 1050] 90068f0600008f06bf06df062f071a041904000019041b042104370400ff2f3f

13 32867 [1920 x 1200] 80077f0700007f07e30703088708b004af040000af04b104b704d20400ff0000

14 32899 [1680 x 1050] 90068f0600008f06bf06df062f071a041904000019041b042104370400ff2f3f

15 32931 [1280 x 800] 0005ff040000ff04c305f305ff0520031f0300001f03240327032b0300ff0000

16 32963 [1440 x 900] a0059f0500009f05df05ff05df068403830300008303860389038f0300ff952e

 

You added some resolutions (1680x1050 and 1440x900) that were already present so they will have no effect. And 1920x1080 is not a standard VESA resolution so it might not work.

 

However, the real problem might be that any resolution above 1280x1024 is being blocked no matter what you have in the tables. This seems to be the case with my 9800GT. A few posts back, I posted a link to a site that showed how to unblock those modes. I just can't find the proper offsets in my BIOS to try it.

 

In the mean time, you can try this solution: http://www.insanelymac.com/forum/index.php...=255510&hl=

Link to comment
Share on other sites

hys17, I took a look at your BIOSes.

 

You added some resolutions (1680x1050 and 1440x900) that were already present so they will have no effect. And 1920x1080 is not a standard VESA resolution so it might not work.

 

However, the real problem might be that any resolution above 1280x1024 is being blocked no matter what you have in the tables. This seems to be the case with my 9800GT. A few posts back, I posted a link to a site that showed how to unblock those modes. I just can't find the proper offsets in my BIOS to try it.

 

In the mean time, you can try this solution: http://www.insanelymac.com/forum/index.php...=255510&hl=

 

Thanks. Only thing I can't figure out is if my 560Ti should be able to support VESA 1680x1050? I don't know how to find out. If I can boot into the OS and after the bootloader screens it is fine then I didn't know what approach I should take. Kind of a noob at hacking the BIOS (my specs are below in my signature if it depends on my motherboard)

Link to comment
Share on other sites

  • 1 month later...

Before flashing GTX460 with a new rom

 

$ analysevbios haostar-gtx460.rom

Attempting to open haostar-gtx460.rom

Length:60416

Found 1. possible NVIDIA Mode at 0x4193(Decimal:16787)

Empty Table at 0x42b3(Decimal:17075)

Empty Table at 0x4333(Decimal:17203)

Empty Table at 0x4373(Decimal:17267)

Correct number of finds

Mod should be working

 

# hwinfo --framebuffer

02: None 00.0: 11001 VESA Framebuffer

[Created at bios.459]

Unique ID: rdCR.BfO5bYYtG87

Hardware Class: framebuffer

Model: "NVIDIA GF104 Board - 10410001"

Vendor: "NVIDIA Corporation"

Device: "GF104 Board - 10410001"

SubVendor: "NVIDIA"

SubDevice:

Revision: "Chip Rev"

Memory Size: 14 MB

Memory Range: 0xd5000000-0xd5dfffff (rw)

Mode 0x0300: 640x400 (+640), 8 bits

Mode 0x0301: 640x480 (+640), 8 bits

Mode 0x0303: 800x600 (+800), 8 bits

Mode 0x0305: 1024x768 (+1024), 8 bits

Mode 0x0307: 1280x1024 (+1280), 8 bits

Mode 0x030e: 320x200 (+640), 16 bits

Mode 0x030f: 320x200 (+1280), 24 bits

Mode 0x0311: 640x480 (+1280), 16 bits

Mode 0x0312: 640x480 (+2560), 24 bits

Mode 0x0314: 800x600 (+1600), 16 bits

Mode 0x0315: 800x600 (+3200), 24 bits

Mode 0x0317: 1024x768 (+2048), 16 bits

Mode 0x0318: 1024x768 (+4096), 24 bits

Mode 0x031a: 1280x1024 (+2560), 16 bits

Mode 0x031b: 1280x1024 (+5120), 24 bits

Mode 0x0330: 320x200 (+320), 8 bits

Mode 0x0331: 320x400 (+320), 8 bits

Mode 0x0332: 320x400 (+640), 16 bits

Mode 0x0333: 320x400 (+1280), 24 bits

Mode 0x0334: 320x240 (+320), 8 bits

Mode 0x0335: 320x240 (+640), 16 bits

Mode 0x0336: 320x240 (+1280), 24 bits

Mode 0x033d: 640x400 (+1280), 16 bits

Mode 0x033e: 640x400 (+2560), 24 bits

Mode 0x0360: 1280x800 (+1280), 8 bits

Mode 0x0361: 1280x800 (+5120), 24 bits

Config Status: cfg=new, avail=yes, need=no, active=unknown

________________________________________________________________________________

After changing

0004FF030000FF0317049F043F050003FF020000FF0202030803250300FF302A to

80077F0700007F07E30703088708380437040000370439043F045A0400FF0000 at 0x4193,

and flashing the new rom.

 

$ analysevbios haostar-gtx460-1920x1080.rom

Attempting to open haostar-gtx460-1920x1080.rom

Length:60416

(What? nothing?)

 

# hwinfo --framebuffer

02: None 00.0: 11001 VESA Framebuffer

[Created at bios.459]

Unique ID: rdCR.BfO5bYYtG87

Hardware Class: framebuffer

Model: "NVIDIA GF104 Board - 10410001"

Vendor: "NVIDIA Corporation"

Device: "GF104 Board - 10410001"

SubVendor: "NVIDIA"

SubDevice:

Revision: "Chip Rev"

Memory Size: 14 MB

Memory Range: 0xd5000000-0xd5dfffff (rw)

Mode 0x0300: 640x400 (+640), 8 bits

Mode 0x0301: 640x480 (+640), 8 bits

Mode 0x0303: 800x600 (+800), 8 bits

Mode 0x0305: 1024x768 (+1024), 8 bits

Mode 0x0307: 1280x1024 (+1280), 8 bits

Mode 0x030e: 320x200 (+640), 16 bits

Mode 0x030f: 320x200 (+1280), 24 bits

Mode 0x0311: 640x480 (+1280), 16 bits

Mode 0x0312: 640x480 (+2560), 24 bits

Mode 0x0314: 800x600 (+1600), 16 bits

Mode 0x0315: 800x600 (+3200), 24 bits

Mode 0x0317: 1024x768 (+2048), 16 bits

Mode 0x0318: 1024x768 (+4096), 24 bits

Mode 0x031a: 1280x1024 (+2560), 16 bits

Mode 0x031b: 1280x1024 (+5120), 24 bits

Mode 0x0330: 320x200 (+320), 8 bits

Mode 0x0331: 320x400 (+320), 8 bits

Mode 0x0332: 320x400 (+640), 16 bits

Mode 0x0333: 320x400 (+1280), 24 bits

Mode 0x0334: 320x240 (+320), 8 bits

Mode 0x0335: 320x240 (+640), 16 bits

Mode 0x0336: 320x240 (+1280), 24 bits

Mode 0x033d: 640x400 (+1280), 16 bits

Mode 0x033e: 640x400 (+2560), 24 bits

Mode 0x0360: 1280x800 (+1280), 8 bits

Mode 0x0361: 1280x800 (+5120), 24 bits

Config Status: cfg=new, avail=yes, need=no, active=unknown

 

Result : Nothing actually changed, so I flashed the old rom again.

 

I attached the roms as an txt files because the attachment editor wouldn't let me upload .rom files.

 

How can I put 1920x1080 in vbios tables?

haostar_gtx460.txt

haostar_gtx460_1920x1080.txt

Link to comment
Share on other sites

This is my dilemma as well. Hopefully someone can figure out how to fix this...

 

I found a solution.

 

I installed one of the later chameleon updates (with icloud support) and put the file Resolution.dylib inside /extra/modules

 

and of course the

 

<key>Graphics Mode</key>

<string>1680x1050x32</string>

 

line in boot plist.

 

 

hope that helps you aswell.

Link to comment
Share on other sites

I have just done this mod on my ASUS 5870 and it works!

 

My card is an Asus EAH5870/G/2DIS/1GD5 connected via dvi to a dell 2407. I wanted 1920x1200 for chameleons gui as I used to have this with my gtx285 using the anval booter. Since I am now using chameleon 2.1 r1650 for Lion the game has changed!

 

 

The instructions are perhaps a little scarce in the original post for ATI owners so below is a picture guide as to what I did. I will also attach the stock & modified bios so you can compare what I did.

 

 

1:

 

Get your bios from your 5870 using gpuz in windows.

 

 

2:

 

run analysevbios on it and you should get 5 'modes' shown similar to the screen shot below. We have to edit all of them.

 

1%20copy.jpg

 

write down the hex of the 5 tables, i.e. a9ee, aa0a etc.

 

 

3:

 

Open your extracted bios using RBE 'radeon bios editor'. Click the hex dump button.

 

Now on the right in the 'jump to pos' field type in the hex value of your first table and click go!

 

it'l jump and you will see the 6byte value on the left 20 03 00 01 58 02 exactly like in DieBuche's post. Highlighted in pic Below.

 

3%20copy.jpg

 

 

4: Changing the modes to 1920x1200 resolution.

 

 

Mode 1 (a9ee)

 

Now we are not interested in the bytes 3&4 of that string. This is the case for every table. So the first edit I change 20 03 00 01 58 02 to 80 07 00 01 B0 04. We change bytes 1&2 & 5&6, leaving bytes 3&4 as they were.

 

Mode 2 (aa0a)

 

Lets jump to position aa0a in RBE. Look at the bytes and you'll see almost the same as before except bytes 3&4 in the middle are different. Edit bytes 1&2 & 5&6 to the same as you did before. So 20 03 E0 00 58 02 becomes 80 07 E0 00 B0 04.

 

4%20copy.jpg

 

Do this for the remaining 3 modes.

 

 

5:

 

Lets click on 'okay (applies changes)' in RBE and make sure the checkbox 'automatic checksum handling' is ticked.

 

Now save the modified bios out of RBE. I called mine mod.rom for ease.

 

 

6:

 

Lets run analysevbios on the modified rom. Now what should actually happen is that it will show no 'modes' found. See my screenshot.

 

5%20copy.jpg

 

What is happening is analysevbios is searching for modes that are 800x600. We have just changed those modes to 1920x1200 so of course it will show nothing found because there is no longer 800x600!!!

 

That's it now - just got to flash the bios.

 

 

Flashing the bios.

 

I used the latest atiflash on a win98 bootable usb drive. You should experiment first - I created a bootable usb dos drive. Now I had to flash my bios with 'atiflash -f -p 0 mod.rom' I was planning to use the -pa flag which is supposed to flash all adaptors in the system without question - However it fails for me and demands I choose the adaptor number. atiflash -i tells me my adaptor is 0.

 

So knowing the right flash command i created a second bootable usb drive with my unmodified bios on. This was my blindflash failsafe. I put 'atiflash -reboot -f -p 0 stock.rom' into auto exec.bat. The reboot flag tells it to reboot after flashing so I know its finished.

 

Lastly on my gigabyte ex58-ud5, it seems to have an issue booting of usb reliably. To make sure the blind flash was gonna work I unplugged my regular hard drives and set the first boot drive to be 'usb-hdd' This ensures it will boot from the usb no matter what.

 

Enjoy!

Link to comment
Share on other sites

Hi Dublove, thank you so much for detailed guide, I hope that should help many hackintoshers out there. I am trying to add 1920x1080 vesa mode to my Gigabyte HD5750 but I am stuck on step 2 (analysing vbios). when I execute the commad in terminal, all I get is info about lenth. I dont get any info on modes. I have tried many ways but same results. I am doing it on Lion, may be that is the reason.

 

I have attached my vbios and would really appreciate if you could analyse it on your system and tell me what are the 5 modes (eg: A9EE) for my bios. I can do the rest. Note: there are two bioses in bioses folder, one extracted via gpuz and one via winflash.

 

Once again, thank you so much for doing it for our hackintosh community.

bioses.zip

bioses.zip

Link to comment
Share on other sites

  • 2 weeks later...

please can someone help me to add 1920x1080 on my card

(nvidia quadro 2000)

 

Length:60416

Found 1. possible NVIDIA Mode at 0x41dd(Decimal:16861)

Empty Table at 0x42fd(Decimal:17149)

Empty Table at 0x437d(Decimal:17277)

Empty Table at 0x43bd(Decimal:17341)

Correct number of finds

Mod should be working

 

Rom File

http://www.megaupload.com/?d=5PKKG95F

Link to comment
Share on other sites

Hello DieBuche,

 

I have tried to hex edit to rom using, NiBitor, but no luck :(

 

Could you help me patch my NVIDIA rom for 9600GT. I am trying to get the 1920X1080 during the Chameleon boot screen and the Apple splash screen. I am using a DELL U2312HM with a DVI connection.

 

Here's the ROM:

 

http://www.mediafire.com/?5z2d6wodw21s5dd

 

P.S.: I don't even know even if it is reading the new rom. Is there a way to know?

Link to comment
Share on other sites

Hey

I read from a successful mod of the HD6850, but the tool from the first post isn't working for me and just shows the lenght but not the exact position of the resolutions.

Has somebody a solution? I tried different bios from different manufactures (XFX, Sapphire, Club3D, AMD, ...)

 

Greetings

Link to comment
Share on other sites

  • 1 month later...

HOLY {censored}

 

 

it worked!!!!!! Full 2560x1440x32 Resolution on an Apple 27" Cinema Display, Asus 6870.

 

 

 

Awesome guide, Thank you!!!!!

 

Hey guys,

 

Which part do I have to change to get 2560x1440x32 for a ATI sapphire 5770?

I already made the patch for 1920x1080x32...

 

 

 

Thanks and best regards

Len

Link to comment
Share on other sites

Thanks to dublove i was finally able to hard flash my MSi ATi HD 5870, i can get now 1920 x 1080, but i still have those 1 inch thick, awful borders. Does anyone know, how to remove them?

 

I have the same problem, with an HD 4850. I noticed the resolution did change, because during boot there were some lines that wouldn't fit in one line and now it does.

Besides, in case of any problem with my monitor, I believe it would be safer to have 800x600 mode. I guess it'd be better to replace another "less useful" resolution, perhaps 1152x864. How can I do that?

 

Edit: another reason, look what happened to my BIOS screen (previously, it was fullscreen, almost full, with the same black borders).

 

Edit2: I managed to replace 1600x1200 with 1920x1080, so BIOS went back to normal, but I still have those borders.

post-947959-0-95517700-1327686087_thumb.jpg

post-947959-0-03840900-1327686108_thumb.jpg

post-947959-0-86810200-1327686134_thumb.jpg

post-947959-0-41283500-1327688169_thumb.jpg

Link to comment
Share on other sites

Well Guilherme, I don't know if DieBuche is still around. But it looks like that we are yet to find someone who could post screenshots of Chameleon boot screen which does not have the blackborders. Since you claimed that you were able to change the resolution, did you also try to set the resolution in the theme.plist file in your theme folder?

Link to comment
Share on other sites

Okay, I've tried following the tutorial in the first post, but I just don't get it. :(

 

I'm running a 1GB ASUS GTX 460 with the stock BIOS, and I want to edit it it so that I can use 1920x1080x32@60Hz. When running the included program I get:

 

Attempting to open stock.rom

Length:60928

Found 1. possible NVIDIA mode at 0x418d(Decimal:16781)

Empty Table at 42ad(Decimal:17069)

Empty Table at 432d(Decimal:17197)

Empty Table at 436d(Decimal:17261)

Correct number of finds

Mod should be working

 

So I opened the .rom file in NiBiTor and went to the HexEdit function, then went to 0x418d and it was just 00 00 - I don't get what I'm trying to find here?

 

Also, how to I actually edit the file?

 

If anyone could give me quick step-by-step instructions on how to add a 1920x1080 VESA mode to my 460's BIOS, I'd really appreciate it. Thanks :)

Link to comment
Share on other sites

I tried it with my 460 as well and it didn't work. The entry was there and I made a couple of edits but still no 1680x1050 on boot. Some say it doesn't work on nVidia cards if you use DVI but I had it working fine on my old 8800GT with DVI and I didn't have to make any rom edits.

Link to comment
Share on other sites

I tried it with my 460 as well and it didn't work. The entry was there and I made a couple of edits but still no 1680x1050 on boot. Some say it doesn't work on nVidia cards if you use DVI but I had it working fine on my old 8800GT with DVI and I didn't have to make any rom edits.

What I don't get is what I even need to do to try it out. I figure that even if others aren't reporting success, it's worth having a go, but I'm just confused now about what I'm supposed to do. What tool should I actually be using to edit the hex in the BIOS?

 

EDIT: I figured out what to do, but after flashing it twice, it's still not working. :(

Link to comment
Share on other sites

Well Guilherme, I don't know if DieBuche is still around. But it looks like that we are yet to find someone who could post screenshots of Chameleon boot screen which does not have the blackborders. Since you claimed that you were able to change the resolution, did you also try to set the resolution in the theme.plist file in your theme folder?

Yes, I changed the theme size as well. I believe it might be a BIOS limitation, because the BIOS screen and POST screen have the same borders, even before loading anything of any OS. Interesting to note, when I shut OS X down, there are a few lines on a black screen, but this time they fit the whole screen.

Link to comment
Share on other sites

 Share

×
×
  • Create New...