Jump to content
LaptopVideo2Go Forums

Understanding Resolutions in INF


Dox

Recommended Posts

This is a guide on understanding resolutions in the INF and how to tweak/add your own.

This is based on my own knowledge so if you know what that implies carry on.

It is very important that your card is only given display resolutions that it can support to avoid problems.

Know what your card supports

Within every driver folder you download from here or nvidia you will find a mode.txt file.

This file tells you what card supports what refresh rates at what resolutions at what Bits Per Pixel (colour depth/BPP).

Since we are laptop users I recommend you find a mode.txt from a laptop driver since it will give you your card and what it can support.

From my clevo driver the mode.txt shows my card as supporting:

[nv_SoftwareDeviceSettings]

 ////////////////////////////////////////////////////////////////////
 // 0609 - NVIDIA GeForce 8800M GTS
 // 060C - NVIDIA GeForce 8800M GTX
 ////////////////////////////////////////////////////////////////////

 ; Standard Modes

    320 x  200   8   60 70 72 75
    320 x  240   8   60 70 72 75
    400 x  300   8   60 70 72 75
    480 x  360   8   60 70 72 75
    512 x  384   8   60 70 72 75
    600 x  800   8   60
    640 x  400   8   60 70 72 75 85
    640 x  480   8   60 70 72 75 85
    720 x  480   8   60
    800 x  600   8   60 70 72 75 85
   1024 x  768   8   60 70 72 75 85
   1280 x  720   8   60
   1280 x  800   8   60 70 72 75 85
   1280 x 1024   8   60 70 72 75 85
   1440 x  900   8   60 70 72 75 85
   1600 x 1200   8   60 70 72 75 85
   1680 x 1050   8   60 70 72 75 85
   1920 x 1080   8   60
   1920 x 1200   8   60 70 72 75 85
   1920 x 1440   8   60 70 72 75
   2048 x 1536   8   60
   ------------------------------------------------------------------
    320 x  200  16   60 70 72 75
    320 x  240  16   60 70 72 75
    400 x  300  16   60 70 72 75
    480 x  360  16   60 70 72 75
    512 x  384  16   60 70 72 75
    600 x  800  16   60
    640 x  400  16   60 70 72 75 85
    640 x  480  16   60 70 72 75 85
    720 x  480  16   60
    800 x  600  16   60 70 72 75 85
   1024 x  768  16   60 70 72 75 85
   1280 x  720  16   60
   1280 x  800  16   60 70 72 75 85
   1280 x 1024  16   60 70 72 75 85
   1440 x  900  16   60 70 72 75 85
   1600 x 1200  16   60 70 72 75 85
   1680 x 1050  16   60 70 72 75 85
   1920 x 1080  16   60
   1920 x 1200  16   60 70 72 75 85
   1920 x 1440  16   60 70 72 75
   2048 x 1536  16   60
   ------------------------------------------------------------------
    320 x  200  32   60 70 72 75
    320 x  240  32   60 70 72 75
    400 x  300  32   60 70 72 75
    480 x  360  32   60 70 72 75
    512 x  384  32   60 70 72 75
    600 x  800  32   60
    640 x  400  32   60 70 72 75 85
    640 x  480  32   60 70 72 75 85
    720 x  480  32   60
    800 x  600  32   60 70 72 75 85
   1024 x  768  32   60 70 72 75 85
   1280 x  720  32   60
   1280 x  800  32   60 70 72 75 85
   1280 x 1024  32   60 70 72 75 85
   1440 x  900  32   60 70 72 75 85
   1600 x 1200  32   60 70 72 75 85
   1680 x 1050  32   60 70 72 75 85
   1920 x 1080  32   60
   1920 x 1200  32   60 70
   1920 x 1440  32   60

 ; Horizontal Spanning Modes

   1280 x  480   8   60 70 72 75 85
   1600 x  600   8   60 70 72 75 85
   2048 x  768   8   60 70 72 75 85
   2560 x  800   8   60 70 72 75 85
   2560 x 1024   8   60 70 72 75 85
   2880 x  900   8   60 70 72 75 85
   3200 x 1200   8   60 70 72 75 85
   3360 x 1050   8   60 70 72 75 85
   3840 x 1200   8   60 70 72 75 85
   3840 x 1440   8   60 70 72 75
   4096 x 1536   8   60
   ------------------------------------------------------------------
   1280 x  480  16   60 70 72 75 85
   1600 x  600  16   60 70 72 75 85
   2048 x  768  16   60 70 72 75 85
   2560 x  800  16   60 70 72 75 85
   2560 x 1024  16   60 70 72 75 85
   2880 x  900  16   60 70 72 75 85
   3200 x 1200  16   60 70 72 75 85
   3360 x 1050  16   60 70 72 75 85
   3840 x 1200  16   60 70 72 75 85
   3840 x 1440  16   60 70 72 75
   4096 x 1536  16   60
   ------------------------------------------------------------------
   1280 x  480  32   60 70 72 75 85
   1600 x  600  32   60 70 72 75 85
   2048 x  768  32   60 70 72 75 85
   2560 x  800  32   60 70 72 75 85
   2560 x 1024  32   60 70 72 75 85
   2880 x  900  32   60 70 72 75 85
   3200 x 1200  32   60 70 72 75 85
   3360 x 1050  32   60 70 72 75 85
   3840 x 1200  32   60 70
   3840 x 1440  32   60

 ; Vertical Spanning Modes

    640 x  960   8   60 70 72 75 85
    800 x 1200   8   60 70 72 75 85
   1024 x 1536   8   60 70 72 75 85
   1280 x 1600   8   60 70 72 75 85
   1280 x 2048   8   60 70 72 75 85
   1440 x 1800   8   60 70 72 75 85
   1600 x 2400   8   60 70 72 75 85
   1680 x 2100   8   60 70 72 75 85
   1920 x 2400   8   60 70 72 75 85
   1920 x 2880   8   60 70 72 75
   2048 x 3072   8   60
   ------------------------------------------------------------------
    640 x  960  16   60 70 72 75 85
    800 x 1200  16   60 70 72 75 85
   1024 x 1536  16   60 70 72 75 85
   1280 x 1600  16   60 70 72 75 85
   1280 x 2048  16   60 70 72 75 85
   1440 x 1800  16   60 70 72 75 85
   1600 x 2400  16   60 70 72 75 85
   1680 x 2100  16   60 70 72 75 85
   1920 x 2400  16   60 70 72 75 85
   1920 x 2880  16   60 70 72 75
   2048 x 3072  16   60
   ------------------------------------------------------------------
    640 x  960  32   60 70 72 75 85
    800 x 1200  32   60 70 72 75 85
   1024 x 1536  32   60 70 72 75 85
   1280 x 1600  32   60 70 72 75 85
   1280 x 2048  32   60 70 72 75 85
   1440 x 1800  32   60 70 72 75 85
   1600 x 2400  32   60 70 72 75 85
   1680 x 2100  32   60 70 72 75 85
   1920 x 2400  32   60 70
   1920 x 2880  32   60

The [nv_SoftwareDeviceSettings] means that the "resolutions table" for my card is located in the INF under [nv_SoftwareDeviceSettings], such as below:

[nv_SoftwareDeviceSettings]
HKR,, InstalledDisplayDrivers,     %REG_MULTI_SZ%, nv4_disp 
HKR,, VgaCompatible,               %REG_DWORD%,    0 
HKR,, VPEENABLE,                   %REG_DWORD%,    0 
.....................................

HKR,, NV_Modes, %REG_MULTI_SZ%,  "{*}S 1280x800 1400x1050x32 1440x900 1600x1024x32 1600x1200x32 1920x1200 1920x1440 2048x1536=1F;1400x1050x8,16 1600x1024x8,16 1600x1200x8,16=3F;640x480 800x600 1024x768 1152x864 1280x960 1280x1024=7F;{406-6E9}S 640x400=7F;320x200 320x240 400x300 480x360 512x384=F;HV 1400x1050x32 1600x1024x32 1600x1200x32 1920x1200 1920x1440 2048x1536=1F;"

How it works

  1. Understanding the Code
    • HKR,, NV_Modes, %REG_MULTI_SZ%, is where we are gonna put the what resolutions, refresh rates and BPP our card support.
    • "{*} means that all cards support the modes we are gonna include.
    • S means that the resolutions we are gonna put on that line is the Standard Modes from the mode.txt file
    • H means that the resolutions we are gonna put on that line is the Horizontal Modes from the mode.txt file
    • V means that the resolutions we are gonna put on that line is the Vertical Modes from the mode.txt file
    • *x* is the resolution itself that supports all BPP (8,16 & 32)
    • *x*x8,16 means the resolution is limited to those BPP
    • =1F is the resolutions we are gonna restrict the cards to. 1F mean the card supports 60 70 72 75 85hz refresh rates.
    • ; means thats the end of the grouped modes that support that supports a particular resolution/mode etc

Refresh rate code:

Refresh rates table Dox@lv2go
1=     60
3=     60 70
F=     60 70 72 75
1F=    60 70 72 75 85
3F=    60 70 72 75 85 100
7F=    60 70 72 75 85 100 120
3FF=   60 70 72 75 85 100 120 140 144 150
7FF=   60 70 72 75 85 100 120 140 144 150 170
FFF=   60 70 72 75 85 100 120 140 144 150 170 200
1FFF=  60 70 72 75 85 100 120 140 144 150 170 200 240

[*]Small example

Starting with the line and using mode.txt as a guide:

HKR,, NV_Modes, %REG_MULTI_SZ%, "{*}S 320x200 320x240=F;1920x1200x8,16=1F;1920x1200=1F;H 1280x480 1600x600=1F;3840x1440x8x6=3; V 640x960 800x1200=1F;"

The above code means the following:

320x200 and 320x240 supports all BPP with resolutions up to 85hz

1920x1200 only supports BPP of 8&16 of refresh rate up to 85hz

1280x480 an 1600x600 are Horizontal resolutions that support all BPP up to 85hz

3840x1440 only supports BPP 8&16 up to 70hz

640x960 and 800x1200 are vertical resolutions which supports all BPP up to 85hz

[*]Adding More Modes

You can add more resolutions by adding this line: HKR,, NV_Modes, %REG_SZ_APPEND%, (simply tells the driver you would like to include new modes)

This is useful if you want to add more modes to the driver without changing the top line that already came with the INF.

HKR,, NV_Modes, %REG_MULTI_SZ%, "{*}S 320x200 320x240=F;1920x1200x8,16=1F;1920x1200=1F;H 1280x480 1600x600=1F;3840x1440x8x6=3; V 640x960 800x1200=1F;"

HKR,, NV_Modes, %REG_SZ_APPEND%, "SHV etc etc etc this tells th driver you want to add more standard modes, vertical modes and horizontal modes without having to use ; to separate the resolutions

HKR,, NV_Modes, %REG_MULTI_SZ%, "{*}S etc etc....

HKR,, NV_Modes, %REG_SZ_APPEND%, "S etc etc;H etc etc; V is another way of doing the above but this time the resolutions are separated so you know what is what.

Adding Custom Resolutions

  1. Hexadecimal
    You can add custom resolutions by knowing abit about hexadecimal.
    The format is 8***
    Where *** is a hexadecimal value representing the resolutions.
    So 8032 = 50hz and 800A = 10hz
  2. Converting Decimal to Hexadecimal
    I'm not gonna teach you hexadecimal, the easiest way is to use windows calculator.
    • Open up in windows calculator
    • Press View then choose scientific
    • Press Dec then type a number
    • Press Hex and it will give you the dec in hex.

[*]Notes

The custom refresh rate is added as the same way shown from before at the end of the resolutions

I don't recommend this if your card doest support the resolution you just made

Most laptop refresh rates are locked at 60hz despite the card supporting a higher refresh rate

Conclusions

Having your card only support the "correct" resolutions can avoid damage and issues

This guide is designed for intermediate to advance users who are confident in INF tweaking

and by no means 100% includes everything to do with all things resolutions since I don't have any nvidia documentation

If you are not confident with tweaking the resolutions table don't do it!!.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...