Skip to main content

nVidia Triple-head Display

What with the price of older-but-decent video cards and monitors being very reasonable, I decided to move from the dual-head display I have been using in various forms for the past 15 years to triple-head. I was currently running dual-head using a single vNidia 9800GT card and two monitors. I added a second vNidia 9800GT and a third Samsung SyncMaster 930b 17" monitor which was attached to the new video card.

After some aggravation, I got it working, except that the Google-Chrome browser goes wonky in the display, but Firefox and other apps seem to be unaffected. If you want to see the wonky behavior, a video is available. As it was, it was mostly unusable for daily work and completely useless for games.

After much tweaking and swearing, I chose the path of least resistance and purchased a newer video card that would work out-of-the-box with three monitors, a 4GB nVidia GeForce GTX 1050 Ti.

There's a lot of help with this setup when using MS Windows as well as special external hardware that accomplishes it. For Linux, it was necessary to get a single head working with the nVidia driver, then use nvidia-settings to configure all three heads. Also. many of these multi-monitor setups used for gaming are used with wide-screen displays. That seems a little excessive to me, but that may be in my future if I have the extra cash.

As a result, the display performs flawlessly across three heads, but I need to learn the widescreen tweaks for my older video games. I can do that with information from the PC Gaming Wiki, an excellent site for the underlying details of PC games.

UPDATE - Nov. 26, 2017

I just acquired an Ultra-Wide-Screen monitor, an LG 20UM57-P. Resolution is 2560x1080 @60-Hz. It's different than viewing three separate monitors and may take some getting used to.

UPDATE - Feb. 8, 2018

I have been using the LG 20UM57-P flanked by the two Samsung SyncMaster 930bs. The LG is 2560x1080 and the 930bs are 1280x1024. I have X configured as a single X-server of 5120x1080. The small difference between the SyncMasters and the LG are not very noticeable.

My xorg.conf is:

 Section "ServerLayout"
    Identifier     "layout1"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Module"
    Load           "v4l" # Video for Linux
EndSection

Section "ServerFlags"
    Option         "DontZap" "False" # disable (server abort)
    Option         "allowmouseopenfail"
    # allows the server to start up even if the mouse does not work
    #DontZoom # disable / (resolution switching)
EndSection

Section "InputDevice"

    # generated from data in "/etc/sysconfig/keyboard"
    Identifier     "Keyboard0"
    Driver         "kbd"
    Option         "XkbModel" "pc105"
    Option         "XkbLayout" "us"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Samsung SyncMaster"
    HorizSync       30.0 - 81.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "LG"
    ModelName      "UltraWide 25UM58"
    HorizSync       28.0 - 33.0
    VertRefresh     43.0 - 75.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor2"
    VendorName     "Samsung"
    ModelName      "SyncMaster 930b"
    HorizSync       30.0 - 81.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "NVIDIA GeForce 420 series and later"
    Option         "DPMS"
    Option         "DynamicTwinView" "false"
    Option         "AddARGBGLXVisuals"
    Option         "coolBits" "true"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 1050 Ti"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-1"
    Option         "metamodes" "DVI-D-0: nvidia-auto-select +0+0, HDMI-0: nvidia-auto-select +1280+0, DP-1: nvidia-auto-select +3840+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "screen1"
    Device         "device0"
    Monitor        "Monitor1"
    DefaultDepth    24
EndSection

Section "Screen"
    Identifier     "screen2"
    Device         "device0"
    Monitor        "Monitor2"
    DefaultDepth    24
EndSection

I need to research metamodes so that some games only see the LG monitor in the middle, but Quake in 5120x1080 using the DarkPlaces game engine is awesome.

I need to use nvidia-settings to establish the relationship of each monitor to the other. The left SyncMaster 930b is "LeftOf" the UltraWide 25UM58. The UltraWide 25UM58 is "absolute" and the right SyncMaster 930b is "RightOf" the UltraWide 25UM58. It should be possible to save this configuration to ~/.nvidia-settings-rc and initialize the display with $ nvidia-settings --load-config-only, but I have not yet gotten that to work.

Comments

Popular posts from this blog

DOS4GW.EXE Version 2.01a and Alternative DOS Extenders

DOS4GW.EXE
The TenberryDOS extender DOS4GW.EXE was used by many early DOS games. I still enjoy playing many of these games and DOS4GW.EXE is usable with DOSBox, so they can be played on Linux.

However, the version of DOS4GW.EXE that was included with the game was whatever was current at the time. The most recent version that includes many bugfixes that possibly affected the games when used with DOSBox have been fixed in the latest version, 2.01a.

It's not free at US$49, but you can downloaded it here. Simply substitute it for whatever version of DOS4GW.EXE your game provided and enjoy the bug-fixed goodness. Tenberry also makes a "high-performance" "pro" version of DOS4GW.EXE, but it costs $300. I think that they could sell quite a few of these to hobby users (since, you know, DOS is dead) for US$5.

Open Souce to the Rescue
There are better performing, free and Open Source alternatives available and worth a look.

DPMI Explained
But first, let's understand w…

Mageia

The first release of Mageia 1 is out. You can download it from here and read the release notes here.

If you've used Mandriva Linux, you'll feel right at home with Mageia. Mandriva has always had a reputation of working well for both the novice user and the power user. Installation is typically easy and hardware support is among the best of any distro. The user and administrative tools are comprehensive and easy to use. Of course, under the hood, it's all Linux and all configuration files are plain text files and all a competent administrator needs do is to choose a shell and a text editor.

Mandriva has also been known for excellent default fully-featured configurations of the KDE, GNOME, XFCE and LXDE desktop environments as well as a broad range of available applications. Mageia is no exception in this regard.

For the average user, the changes are mostly cosmetic. The Mageia art, colors and graphics are very well done (and contributed by the Mageia user community). But …

Fixing a Buggy ACPI BIOS Updated for Windows 8 and Linux Kernel 3.x

In the BIOS, there is a table that configures/determines a number of hardware values for ACPI and your system to use.

One of the features of ACPI is that the values and methods used can be differentiated at boot time depending on what OS you run. Each version of MS Windows has a unique identifier and while Linux can identify as "Linux", the Linux ACPI gurus have decided that Linux will always identify itself as "Windows NT". Even if you force Linux to identify itself as Linux, the Linux ACPI code still lies to the BIOS, except for the computers specifically listed in drivers/acpi/blacklist.

If you are running very new hardware intended for Windows Vista or Windows 8, you might get better performance on ACPI-related issues if you identify, or "spoof", your Linux OS as Vista or Windows 8. This is done by adding the boot-time kernel parameter of acpi_osi="Windows 2006" or "Windows 2012" respectively (and the quotes are necessary). still,…