Announcement

Collapse
No announcement yet.

1680x1050 resolution, nvidia, story and questions

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    1680x1050 resolution, nvidia, story and questions

    Yet another "how do I get 1680x1050" post - only I got there, I'm typing this at 1680x1050.

    AMD 64 X2 4200+, on board nvidia 6150, 64 bit Gutsy, Philips 200W LCD.

    I first battled with this last December when I first installed Kubuntu, and gave up then. Finding that I only booted Windows so that a could get the better resolution, I had another crack at it. Vast amounts of mucking around with xorg.conf ensued. sudo dpkg--reconfigure xserver-xorg many times, but the display with the DVI cable refused to budge from 1280x1024. With the VGA cable, I got many sorts of messed up displays, the closest seemingly correct vertically but squashed horizontally into 88 mm. nvidia-settings would set nothing.

    Having found conflicting reports on the necessity of using an unfree driver, I reluctantly plumped for Envy. This had a bunch of missing dependencies to fix before it would even start, then a couple more when trying to run it. Then, it did its thing, failed to produce the driver but sailed on regardless, even though I told it to stop, rendering X inoperable until I reset xorg.conf. But, poking around in the files it downloaded, I found the nvidia run script and it successfully ran, producing the "nvidia" driver and installing it.

    sudo dpkg-reconfigure xserver-xorg again, producing a different set of **** in xorg.conf and even more messed up displays, with the nVidia splash screen added, sometimes not in the middle of the screen. But in a desperate flailing around I tried where I started, the K "System Settings", "Monitor & Display" applet, and noticed that it had changed. It now allowed "higher" screen sizes. I selected 1680x1050 and the screen went into something like 1600x1200. I looked at what it had put in xorg.conf, dozens of mode lines, several for each resolution with different refresh rates, and resolutions all the way up to 1920x1200. I edited it to have just 1680x1050, but this gave 1280x1024 as before, but the "Monitor & Display" now offers three refresh rates in its drop down box, 50, 51 and 52 Hz.

    Select 51 Hz, et voilà. 50 Hz, and nothing changes. 51 Hz did not stick after a reboot the first time, but doing it again it has stuck (so far), even with the DVI cable.

    The xorg.conf now has two screen and monitor sections, with the same set of modes. The 1680x1050 modes are for 60 and 75 Hz, and none have 50, 51 or 52 Hz. The only entries that look new compared to my manual attempts are these:

    Option "TwinView" "0"
    Option "TwinViewXineramaInfoOrder" "CRT-0"
    Option "metamodes" "1680x1050 +0+0"

    and a new section:

    Section "Module"
    Load "glx"
    Load "v4l"
    EndSection

    It appears the K system settings applet is working with stuff beyond xorg.conf. Does anyone know what or where? What is this 51 Hz refresh rate?

    I would advise anyone with this problem to get the nvidia driver, perhaps using envy, (though be prepared for failures), then either use nvidia-settings or experiment with the K system settings monitor applet.
    Regards, John Little

    #2
    Re: 1680x1050 resolution, nvidia, story and questions

    I have an Acer Aspire 9815 laptop with a 1680x1050 native resolution screen, and while I had to manually fix xorg.conf in 7.04, it auto-detected it just fine in 7.10. The "fix" mine needed was merely to add "1680x1050" as a mode; no need for modelines or metamodes.

    Code:
    Section "Screen"
    	Identifier	"Default Screen"
    	Monitor		"Configured Monitor"
    	Device		"Configured Video Device"
    	DefaultDepth	24
    	SubSection   "Display"
    		Depth   24
    		Modes   "1680x1050" "1280x1024" "1024x768" "800x600"
    	EndSubSection
    EndSection
    Entered from memory, so grossly simplified and without optimizing options (AllowGLXWithComposite, etc etc). So I guess your mileage may vary. :>


    I've always either used the nvidia-glx-new package or whatever Envy installed for me; from what I understand, the driver is responsible for autodetecting resolutions. This is an example from someone else's /var/log/Xorg.0.log.
    Code:
    (--) NVIDIA(0): Connected display device(s) on GeForce 8600 GTS at PCI:1:0:0:
    (--) NVIDIA(0):   CRT-0
    (--) NVIDIA(0): CRT-0: 400.0 MHz maximum pixel clock
    (II) NVIDIA(0): Assigned Display Device: CRT-0
    (WW) NVIDIA(0): No valid modes for "1280x1024"; removing.
    (WW) NVIDIA(0): No valid modes for "1024x768"; removing.
    (WW) NVIDIA(0): No valid modes for "800x600"; removing.
    (WW) NVIDIA(0): 
    (WW) NVIDIA(0): Unable to validate any modes; falling back to the default mode
    (WW) NVIDIA(0):   "nvidia-auto-select".
    (WW) NVIDIA(0): 
    (II) NVIDIA(0): Validated modes:
    (II) NVIDIA(0):   "nvidia-auto-select"
    (II) NVIDIA(0): Virtual screen size determined to be 640 x 480
    (WW) NVIDIA(0): Unable to get display device CRT-0's EDID; cannot compute DPI
    (WW) NVIDIA(0):   from CRT-0's EDID.

    As for the refresh rates hovering around 50hz, you needn't worry, this is a bug in the Nvidia driver. I'm told setting the option "DynamicTwinView" to "false" fixes this, but I haven't tried it myself yet. I don't see the need, seeing as it's just a display issue. And I'm not sure I'd like to disable TwinView just to fix it, either. :>

    Though I'm not really sure how "TwinView" "0" and "DynamicTwinView" "false" differs.

    TwinView is a mode of operation where two display devices (digital flat panels, CRTs, and TVs) can display the contents of a single X screen in any arbitrary configuration. This method of multiple monitor use has several distinct advantages over other techniques (such as Xinerama):
    • A single X screen is used. The NVIDIA driver conceals all information about multiple display devices from the X server; as far as X is concerned, there is only one screen.
    • Both display devices share one frame buffer. Thus, all the functionality present on a single display (e.g., accelerated OpenGL) is available with TwinView.
    • No additional overhead is needed to emulate having a single desktop.
    Dynamic TwinView

    Using the NV-CONTROL X extension, the display devices in use by an X screen, the mode pool for each display device, and the MetaModes for each X screen can be dynamically manipulated. The "Display Configuration" page in nvidia-settings uses this functionality to modify the MetaMode list and then uses XRandR to switch between MetaModes. This gives the ability to dynamically configure TwinView.

    The details of how this works are documented in the nv-control-dpy.c sample NV-CONTROL client in the nvidia-settings source tarball.

    Because the NVIDIA X driver can now transition into and out of TwinView dynamically, MetaModes are always used internally by the NVIDIA X driver, regardless of how many display devices are currently in use by the X screen and regardless of whether the TwinView X configuration option was specified.

    One implication of this implementation is that each MetaMode must be uniquely identifiable to the XRandR X extension. Unfortunately, two MetaModes with the same bounding box will look the same to XRandR. For example, two MetaModes with different orientations:

    "CRT: 1600x1200 +0+0, DFP: 1600x1200 +1600+0"
    "CRT: 1600x1200 +1600+0, DFP: 1600x1200 +0+0"

    will look identical to the XRandR or XF86VidMode X extensions, because they have the same total size (3200x1200), and nvidia-settings would not be able to use XRandR to switch between these MetaModes. To work around this limitation, the NVIDIA X driver "lies" about the refresh rate of each MetaMode, using the refresh rate of the MetaMode as a unique identifier.

    The XRandR extension is currently being redesigned by the X.Org community, so the refresh rate workaround may be removed at some point in the future. This workaround can also be disabled by setting the "DynamicTwinView" X configuration option to FALSE, which will disable NV-CONTROL support for manipulating MetaModes, but will cause the XRandR and XF86VidMode visible refresh rate to be accurate.
    KDE, I heart thee.

    Comment

    Working...
    X