• Competitor rules

    Please remember that any mention of competitors, hinting at competitors or offering to provide details of competitors will result in an account suspension. The full rules can be found under the 'Terms and Rules' link in the bottom right corner of your screen. Just don't mention competitors in any way, shape or form and you'll be OK.

How do you edit Nvidia drivers to change refresh rates?

Soldato
Joined
29 May 2006
Posts
5,377
I am having no end of problems with refresh rates in some newer games a they keep defaulting down to 60hz. None of the programs are working so my last resort is to edit the drivers. I have been told you can edited the inf file for drivers to make 100hz only mode to show up per resolution. Anyone know how?

Edit: Think I have it but can someone confirm

3B = 111011 => 100Hz=1 85Hz=1 75Hz=1 72Hz=0 70Hz=1 60Hz=1

So what I need is

3B = 100000 => 100Hz=1 85Hz=0 75Hz=0 72Hz=0 70Hz=0 60Hz=0


But what do I change 3B to?
 
Last edited:
I tend to just run a little program called "refreshlock" (google!) from bootup.

It just makes life so much easier, once its done its done.

I force 150hz @ 800x600x32
120hz @ 1280x1024x32
100hz @ 1600x1200..


and thats that, no more hassle, it just automatically does it as soon as i load any game based on the resolution the game is currently set to :D
 
Should have said in the first post I am using Vista 64-bit.
RefreshForce and RefreshLock don’t work. After playing about a bit RivaTuner works but only on some games. The Witcher is being very stubborn and is still at 60hz. RivaTuner did fix American McGee's Alice which is now a nice 100hz.


EDIT: Come to think of it perhaps RefreshLock did work on some games, only tried it on Witcher which doesnt seem to work with anything.
 
Last edited:
The way I do it is to explicitly set the refresh rate I want in the nv_disp.inf file. To do this, you need to:

-Extract driver to a Temp location
-Edit nv_disp.inf in notepad
-Search for the line beginning "nv_modes"
-Delete existing references to the resolution in question
-Re-input the resolution you want between other resolutions seperated by semicolons in the following format:
;1600x1200x32=80**;
where ** is the HEX code of the resolution you want. In the case of 100hz, this translates as 64. So you would have this present in the NV_Modes list:
;1600x1200x32=8064;
Obviously this just applies for 1600x1200 32bit, you can add as many other resolutions as you want in a line, e.g:
;640x480x32 800x600x32 1024x768x32 1600x1200x32=8064;
You should also be able to add custom resolutions in this fashion by inputting the numbers you want.

Now simply run setup.exe from that directory, install as normal, and on reboot you should have 100hz available.
 
http://www.pagehosting.co.uk/rl/ doesn’t work 100%
Only some games work with it and it won’t auto load with windows, I have to load it manually each time I reboot.

Yes it does and sure you HAVE to load it each Reboot unless you add to start Menu.

Go ahead and use their other PERM FIX " RefreshForce ", although they advise you try the later 1st.
 
Last edited:
"Yes it does and sure you HAVE to load it each Reboot unless you add to start Menu."
No it does not work 100% it doesnt work with The Witcher. I got it to work with my older games but it failing to work on newer games.

Least its better then nothing. Nearly all my current games work now.
 
:)

And MS are to blame for messing with the Refesh method in XP, remember old days, you set to Default or any choosen HZ or Optimal in the drivers and the PC would do the MAX HZ at each RES.

I never knew this and replayed Max Payne 1 on new XP (needs patches to even install) and was ill in 30mins as it was 60hz :(.
 
Last edited:
I am having no end of problems with refresh rates in some newer games a they keep defaulting down to 60hz. None of the programs are working so my last resort is to edit the drivers. I have been told you can edited the inf file for drivers to make 100hz only mode to show up per resolution. Anyone know how?

Edit: Think I have it but can someone confirm

3B = 111011 => 100Hz=1 85Hz=1 75Hz=1 72Hz=0 70Hz=1 60Hz=1

So what I need is

3B = 100000 => 100Hz=1 85Hz=0 75Hz=0 72Hz=0 70Hz=0 60Hz=0


But what do I change 3B to?


In case you need this for tinkering...
The first 2 chars seem to be in base16 ie hex and the second group is in binary

You just need to convert the binary to hex
To do this group the 1s and 0s into nibbles (groups of 4 starting from the lsb)
eg 3 = 11 and b= 1011

so your new byte (2 nibbles make a byte)
10 0000 would be 20 in hex

this takes me back to the joys of assembely language sigh...
 
Back
Top Bottom