[Techtalk] Multi-heading (was Re: Simply Hardware-It's Baack)

Meredydd Luff meredydd at everybuddy.com
Tue Aug 27 12:33:14 EST 2002

DISCLAIMER: I'm currently disconnected from my double-headed workstation at 
school, so I don't have the XF86Config from there as a reference. I'm doing 
this from memory, which means that I may get things wrong. If you're having a 
problem, ASK - it's probably my fault :-)

OK, first step is to get the bus addresses of both your cards. If they're 
both PCI/AGP, they should both show up under "lspci". The line for my 
laptop's card looks like this:

00:02.1 Display controller: Intel Corporation: Unknown device 3577            

However, yours will hopefully both say something other than "unknown device", 
otherwise you might have complications - OTOH, the VESA server works fine 

The important number is the one on the left - "00:02.1" in my case. That's 
the bus address for the card. Write down the one for each card.

Oh, hell. Just at this point I realise that my laptop has a specialised 
VESA-only XF86Config, so I don't have the exact name of the relevant option. 
I'll sketch out what you should do, and get back to you soon when I've 
checked the docs/a different box:

Under the "Device" section for your graphics adapter, there should be a 
commented-out option, something like pciaddr or busaddr, with a sample bus 
address on it. Uncomment it, and change it to the address of the 1st card.
Then, copy that entire Device section again. Change the identifier of the new 
one, and set any other options up as necessary (I didn't need any). Set the 
bus address to that of the second card.

Likewise, make a copy of the "Monitor" section for your second monitor with a 
different Identifier. Make a copy of the "Screen" section, and set the Device 
and Monitor to the new copies you just created.

Right, now comes the bit that actually makes your X server sit up and take 
notice of the new screen. In the "ServerLayout" section, there is a "Screen" 
line, saying, for example:

    Screen "Screen 1"                                                         

To that, you should add a line, something like:
    Screen "Screen 2" RightOf "Screen 1" 

Now, if you start your X server, you should see both screens initialise. One 
will be :0.0, and one will be :0.1. You can run entirely different desktops 
on both monitors, but you can move the mouse from one to the other.

However, that's probably not what you want either. You probably really want 
one desktop stretched across both, so you can move windows from one to the 
other. If you start your X server with the argument "+xinerama", your two 
screens will now be one continuous display (:0.0). Yadaa!

If you have problems, please ask!



MSN Developer, Everybuddy project

MSN:     blip109 at hotmail.com
AIM:     blip109
Yahoo:   modula7

More information about the Techtalk mailing list