I’ve got two heads!

I’ve been meaning to do it for a while, but I’ve finally bought myself a second head! No, not one to go on my neck, Zaphod style, but another LCD monitor on my computer.

Two heads are better than one!

This means that I now have to monitors side by side, with the ability to simply move my mouse from one to the other. It makes using my computer a lot easier. I can just keep my email and such like open on one screen, and carry on my work on the other. Windows can be picked up from one screen and dragged over to the other, even being left in the middle of the two, tho’ this makes it harder to use due to the surroundings of the monitors.

Both monitors are the same model. I got one last year to replace my old one that seemed to be getting watermarks on it and have been very impressed with it. The model is AG Neovo F419, and I may well be getting another one for full triple header wonderfullness!

Setting this up is very easy, just needing a couple of extra configuration parameters in the X config file. I’m using a GeForce Quadro 4 card with Dual DVI outputs which gives fantastic performance. Running glxgears gives me 1900+ FPS, even when the gears window is moved from screen to screen.

Changes needed to get it working were in the /etc/X11/xorg.conf file under Kubuntu 6.06 in the ‘Device’ section for the graphics card:

Section "Device"
        Identifier      "NVIDIA Corporation NV28GL [Quadro4 980 XGL]"
        Driver           "nvidia"
        BusID           "PCI:1:0:0"
        Option          "NvAGP" "1"
        Option          "RenderAccel" "true"
        Option          "TwinView" "true"
        Option          "MetaModes" "1280x1024,1280x1024;1024x768,1024x768"
        Option          "TwinViewOrientation" "DFP-0 LeftOf DFP-1"
        Option          "ConnectedMonitor" "DFP,DFP"

The magic lines are from the ‘TwinView’ option down. TwinView basically makes the two screens act as one extra long one as far as the computer and the window manager are concerned. The ‘MetaModes’ line then splits the new big screen back into two smaller ones. It does this so that things that know how to handle seperate monitors can program them both seperately such as allowing different wallpapers etc. It also makes sure that 3d games don’t try and use both screens, which with only two monitors means that, for example in FPS games, the view point is right in the middle of the two monitors. The ‘TwinViewOrientation’ simply tells the computer where the two monitors are in respect to each other so that you can place the second one on the left or right of the main one. The last line ‘ConnectedMonitor’ should not really be needed, being auto detected, but I put it in just to make sure. It simply says that the two monitors connected are digital flat panels.

All in all the setup took about 20 mins from getting the monitor out of the box, wiring it up (realising that my original monitor was actually connected to the second output, so had to switch them round), getting the brightness and contrast set to the same on both monitors (quite important to make it look good, and very easy to do with identical monitors) and reconfiguring X.

I’m definately going to look into getting a third one at some point, but I’d then need a second PCI graphics card. Or maybe I’ll take the chance to upgrade my PC and get a PCI-X based system with multiple graphics cards! 🙂 I’ll also have to rearrange my cellar to fit 3 monitors on my desk!