« How to Choose Computer Power Supply | Main | Spring in My Backyard Garden »


Installing NVIDIA Driver for Fedora Core 5, with TV as Primary Display

post_nvidia.jpgI have recently installed a NVIDIA TNT2 M64 video card with TV out on the whitebox and have successfully configured an old APEX TV as the primary monitor for both console and xwindows. The work involved installing a "close source" driver avialable via NVIDIA's official web site and manually editing the xorg.conf file (see attached as the extended entry).

However, once I upgraded the Fedora distribution to Core 5, the NVIDIA driver does not work any more. Further studies revealed that this is the "fault" of both Fedora and NVIDIA. Firstly, the initial release of Fedora Core 5 used a wrong kernel distribution which prevented non-GPL modules from being loaded (full story at OS News, and the new kernel release). And secondly, the latest "official" NVIDIA driver needs to be patched in order to work on Fedora Core 5 (NVNews Discussions).

Apparently, I am not the only one who encountered the same problem. And thankfully there are already some detailed instructions on how to make it work. I just followed this instruction and I am a happy camper again!

My xorg.conf file that uses a CRT TV as the primary display:

################# Start of File ###############################################
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 1.0  (buildmeister@builder3)  Wed Dec 14 16:39:22 PST 2005

# Xorg configuration created by system-config-display

Section "ServerLayout"
    Identifier     "TwinView (Analog LCD + TV) configuration"
    Screen      0  "TwinView" 0 0
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"

# RgbPath is the location of the RGB database.  Note, this is the name of the 
# file minus the extension (like ".txt" or ".db").  There is normally
# no need to change the default.
# Multiple FontPath entries are allowed (they are concatenated together)
# By default, Red Hat 6.0 and later now use a font server independent of
# the X server to render fonts.
    RgbPath         "/usr/X11R6/lib/X11/rgb"
    FontPath        "unix/:7100"
EndSection

Section "Module"
    Load           "dbe"
    Load           "extmod"
    Load           "fbdevhw"
    Load           "glx"
    Load           "record"
    Load           "freetype"
    Load           "type1"
EndSection

Section "InputDevice"

# Specify which keyboard LEDs can be user-controlled (eg, with xset(1))
#	Option	"Xleds"		"1 2 3"
# To disable the XKEYBOARD extension, uncomment XkbDisable.
#	Option	"XkbDisable"
# To customise the XKB settings to suit your keyboard, modify the
# lines below (which are the defaults).  For example, for a non-U.S.
# keyboard, you will probably want to use:
#	Option	"XkbModel"	"pc102"
# If you have a US Microsoft Natural keyboard, you can use:
#	Option	"XkbModel"	"microsoft"
#
# Then to change the language, change the Layout setting.
# For example, a german layout can be obtained with:
#	Option	"XkbLayout"	"de"
# or:
#	Option	"XkbLayout"	"de"
#	Option	"XkbVariant"	"nodeadkeys"
#
# If you'd like to switch the positions of your capslock and
# control keys, use:
#	Option	"XkbOptions"	"ctrl:swapcaps"
# Or if you just want both to be control, use:
#	Option	"XkbOptions"	"ctrl:nocaps"
#
    Identifier     "Keyboard0"
    Driver         "kbd"
    Option         "XkbModel" "pc105"
    Option         "XkbLayout" "us"
EndSection

Section "InputDevice"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "IMPS/2"
    Option         "Device" "/dev/input/mice"
    Option         "ZAxisMapping" "4 5"
    Option         "Emulate3Buttons" "yes"
EndSection

Section "Monitor"
    Identifier     "CRT"
    VendorName     "Monitor Vendor"
    ModelName      "Analog LCD Panel 1024x768"
    HorizSync       31.5 - 48.5
    VertRefresh     40.0 - 70.0
    Option         "dpms"
EndSection

Section "Monitor"
    Identifier     "TV"
    VendorName     "TV Vendor"
    ModelName      "Generic CRT TV"
    HorizSync       30.0 - 50.0
    VertRefresh     40.0 - 60.0
EndSection

Section "Device"
    Identifier     "GeForce"
    Driver         "nvidia"
    BoardName      "nVidia GeForce2/MX 400"
EndSection


# Edit the color depth and CRT's resolution if you like
Section "Screen"
    Identifier     "TwinView"
    Device         "GeForce"
    Monitor        "TV"
    DefaultDepth    16
    Option         "NoLogo"
    Option         "CursorShadow" "on"
    Option         "TwinView"
    Option         "TwinViewOrientation" "Clone"
    Option         "ConnectedMonitor" "CRT, TV"
    Option         "TVStandard" "NTSC-M"
    Option         "TVOutFormat" "SVIDEO"
    Option         "MetaModes" "CRT: 800x600, TV: 800x600"
    Option         "HorizSync" "CRT: 31.5 - 48.5; TV: 30 - 50"
    Option         "VertRefresh" "CRT: 40.0 - 70.0; TV: 40 - 60"
    SubSection     "Display"
        Viewport    0 0
        Depth       16
        Modes      "800x600" "640x480"
    EndSubSection
EndSection
################# End of File ###############################################