LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware
User Name
Password
Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?

Notices


Reply
  Search this Thread
Old 01-10-2005, 05:38 PM   #1
used2win32
Newbie
 
Registered: Jan 2005
Location: Oregon, USA
Distribution: Slackware 10.0 at home, PHLAK & Gnoppix on the Thinkpad
Posts: 3

Rep: Reputation: 0
Xinerama and Twin View for multi-monitor


I have a working dual monitor system with a single video card that has a VGA and a DVI output, the DVI has a VGA adpator on it. My desktop spans two monitors connected to the two VGA connectors. I can seamlessly move objects from monitor one to monitor two across the single desktop.

From the xorg.conf file I setup, I (now guess) I am using Xinerama...and this leads to my questions.

There are three ways to display multiple desktops.
1. Clone mode (all monitors display the same info)
2. Multihead (each monitor has its own X session and screen)
3. Combined (one large desktop spanning multiple monitors)

My questions:

In 'Combined' mode, how does Xinerama differ from nVidia's Twinview (or from another vendor) solution?

In 'Multihead' mode, how does one navigate from one X session and screen to another?

Are there performance, speed, OpenGL limits/benefits of one method over another?


If I need to add more information, I will.

Thank you for all of the information and help.
 
Old 01-12-2005, 03:48 AM   #2
gmbailey
LQ Newbie
 
Registered: Dec 2004
Posts: 9

Rep: Reputation: 0
I have been trying for some time to do what you
are describing... (I got hookrd on dual monitors
while using a not-to-be named OS...)

What is this Xorg vs XFree86?
I have tried many times to hack XF86Config-4
using xinerama, fglx radeon and vesa, with and
without FB support... where do I go to catch up to you?
I'm not a gamer, I want to get familiar with Debian
(which I think is just GREAT)

My profile: (how to I add this profile stuff so that it will
show up on the left of my posts???
AMD athlon 1.8MHz / 1G RAM
xp / RH9 / Xandros 2.0 / Debian Woody
ATI "powered by" (www.yuan.com.tw) Radeon 9600 le
(dual head - vga / DVI with VGA adaptor)
LG E700B Studioworks monitor 1024x768
Source Diamond View (older monitor) 1024x768
 
Old 01-12-2005, 07:25 AM   #3
acid_kewpie
Moderator
 
Registered: Jun 2001
Location: UK
Distribution: Gentoo, RHEL, Fedora, Centos
Posts: 43,417

Rep: Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975
i don't use Xinerama myself, it's not as flexible as i'd want it to be, so i use two seperate X desktops. on my kit the mouse still happily moves between the screens, but the actual programs can not be dragged across.

i believe that if you are looking for a combined display, then the twinview extensions are a slightly better bet as it's going to run at a lower level, with more work being done by the graphics card itself, rahter than Xinerama using more normal CPU power.
 
Old 01-12-2005, 11:19 AM   #4
used2win32
Newbie
 
Registered: Jan 2005
Location: Oregon, USA
Distribution: Slackware 10.0 at home, PHLAK & Gnoppix on the Thinkpad
Posts: 3

Original Poster
Rep: Reputation: 0
gmbailey,

Don't quote me on this part, but I believe X.org is basically just a branched off version (fork) of Xfree86-4.4-rc2. There was a license change which affects anything newer than 4.4-rc2. Most distro's are changing to x.org.

I am not familiar with the ATI drivers (so you'll have to change that info along with the monitor info), but here is a starter Xorg.conf file.

I have a dual-head card similar to yours, so much of the information should be transferrable. I assume your driver is already installed correctly.

To keep it simple, I labeled everything that I see on the left monitor as '0' and on the right monitor as '1'.

Step summary for the file below:
1. I enabled Xinerama (which is why I posted the original message here)
2. I created an entry for both monitors
3. I created a graphics section for each 'half' of the video card
4. I created a screen for each output
5. I set the layout to the way the monitors are setting on my (now crowded) desk




# **********************************************************************
# Server flags section.
# **********************************************************************

Section "ServerFlags"
Option "Xinerama" "true"
EndSection


# **********************************************************************
# Monitor section
# **********************************************************************

Section "Monitor"
Identifier "monitor0"
VendorName "Dell"
ModelName "D1028L"
HorizSync 31.5-50
VertRefresh 70-90
EndSection

Section "Monitor"
Identifier "monitor1"
VendorName "Dell"
ModelName "D1028L"
HorizSync 31.5-50
VertRefresh 70-90
EndSection


# **********************************************************************
# Graphics device section
# **********************************************************************

# Any number of graphics device sections may be present

Section "Device"
Identifier "video0"
Driver "nvidia"
VendorName "nVidia-eVGA"
BoardName "GeForceFX 5500"
BusID "PCI:1:0:0"
Screen 0
EndSection

Section "Device"
Identifier "video1"
Driver "nvidia"
VendorName "nVidia-eVGA"
BoardName "GeForceFX 5500"
BusID "PCI:1:0:0"
Screen 1
EndSection


# **********************************************************************
# Screen sections
# **********************************************************************

Section "Screen"
Identifier "screen0"
Device "video0"
Monitor "monitor0"
DefaultDepth 24

Subsection "Display"
Depth 8
Modes "1152x864" "1024x768" "800x600" "640x480"
EndSubsection
Subsection "Display"
Depth 16
Modes "1152x864" "1024x768" "800x600" "640x480"
EndSubsection
Subsection "Display"
Depth 24
Modes "1152x864" "1024x768" "800x600" "640x480"
EndSubsection
Subsection "Display"
Depth 32
Modes "1152x864" "1024x768" "800x600" "640x480"
EndSubsection
EndSection

Section "Screen"
Identifier "screen1"
Device "video1"
Monitor "monitor1"

DefaultDepth 24

Subsection "Display"
Depth 8
Modes "1152x864" "1024x768" "800x600" "640x480"
EndSubsection
Subsection "Display"
Depth 16
Modes "1152x864" "1024x768" "800x600" "640x480"
EndSubsection
Subsection "Display"
Depth 24
Modes "1152x864" "1024x768" "800x600" "640x480"
EndSubsection
Subsection "Display"
Depth 32
Modes "1152x864" "1024x768" "800x600" "640x480"
EndSubsection

EndSection

# **********************************************************************
# ServerLayout sections.
# **********************************************************************

Section "ServerLayout"

Identifier "Simple Layout"

InputDevice "Mouse1" "CorePointer"
InputDevice "Keyboard1" "CoreKeyboard"

Screen 0 "screen0"
Screen 1 "screen1" RightOf "screen0"

EndSection
 
Old 01-13-2005, 03:48 AM   #5
gmbailey
LQ Newbie
 
Registered: Dec 2004
Posts: 9

Rep: Reputation: 0
Many thanks for you reply....
That hurts! I previously bought a
nvidia TI4200 128Mb dual head card
(which worked great until it failed.)
I sent it back to the suppliers, and waited until finally
they sent me a replacement ...ATI radeon card
(skipping the long sad story...)

I have two other nvidia cards on two separate
machines which work fine
dual-heading with xp...

What is twinview?
How do you switch from XFree86 to Xorg?

It sounds a bit scary for a novice like me...
 
Old 01-13-2005, 03:57 PM   #6
Electro
LQ Guru
 
Registered: Jan 2002
Posts: 6,042

Rep: Reputation: Disabled
At this time, there is no difference between XFree86 and Xorg by the driver's view point. You do not need to change.

Twinview is nVidia's own term and its only on nVidia cards. It acts like Xinerama, but it is very simple to understand. The nVidia driver does the work for you which is good thing. You do not need Xinerama to increase the screen size, but some programs rely on Xinerama code. Xinerama should be used if you want to use two different video card brands to increase workspace.

Games may not understand Xinerama at all so they will either crash, one monitor will show the game and the other will be blank, or both monitors will show half the game. Playing games with a null bar in the middle of the screen is very annoying.

I have not setup Xinerama or Twinview to expand my workspace. I did setup Twinview to clone to the TV at certain resolutions.

gmbailey, you should of complain to get the same card that failed.
 
Old 01-16-2005, 06:49 AM   #7
gmbailey
LQ Newbie
 
Registered: Dec 2004
Posts: 9

Rep: Reputation: 0
Thanks for reply...
I just got xandros 2.0 to work (with xinerama)
I installed a second nvidia riva TNT2 32 MB pci card
so that I have the radeon 9600 le card with its 'dual head'
used as PCI:1:0:0 and the TNT2 as PCI:0:11:0

Xandros seems to be using some proprietary detection
software? buildxconf?
xandros's 'no-brainer' correctly recognised the hardware, included three devices
(2 for the radeon card, and one for the TNT2 32Mb
and set up three monitors...
I tried to update-upgrade-dist-upgrade my debian woody
but started to get into
some pretty murky waters....
Debian (woody) still will not start gdm ...
Here is xandros XF86Config-4 which works on same hardware
and the debian XF86Config-4 which doesn't work.
Xandros is easy for me coming from a win background...
However, I love apt-get etc and
am determined to try to get debian-proper
to do what xandros is doing so easily out of the box...
xandros is using some pretty scsi-like filesystem stuff..
which allows me to browse and edit files easily across
ext2 ext3 reiserfs win95 lba32 and ntfs
(on one computer, two physical hdd's and in one xandros 'explorer' window) very impressive
including editing and saving files across different OS's.
################################################################################
## Automatically generated file by buildxconf
## part of the Xandros hardware detection system
##
## See Also:
## 'man devices-overview' for information about the detection system
## 'man setxconf' a utility for interacting with the detection system
## to modify the X configuration
## 'man XF86Config' for the format of this file
##
## Warning:
## If this file is edited manually, then buildxconf will no longer
## modify this file. It must be removed to be regenerated.
################################################################################


Section "Files"
ModulePath "/usr/X11R6/lib/modules/override"
ModulePath "/usr/X11R6/lib/modules/altdrivers"
ModulePath "/usr/X11R6/lib/modules"

# Local Fontserver: Disabled by default.
#FontPath "unix/:7100"

# Unscaled Bitmap Fonts:
FontPath "/usr/lib/X11/fonts/75dpi:unscaled"
FontPath "/usr/lib/X11/fonts/100dpi:unscaled"

# Scalable TrueType and CID Fonts (via DeFoMa):
FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/CID"
FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"

# Scalable TrueType Fonts (via std X path):
FontPath "/usr/lib/X11/fonts/TrueType"

# Scalable Speedo and Type1 Fonts:
FontPath "/usr/lib/X11/fonts/Type1"
FontPath "/usr/lib/X11/fonts/Speedo"

# Scaled Bitmap fonts (ugly) :
FontPath "/usr/lib/X11/fonts/100dpi"
FontPath "/usr/lib/X11/fonts/75dpi"
FontPath "/usr/lib/X11/fonts/misc"
FontPath "/usr/lib/X11/fonts/cyrillic"

# Misc. Fonts:
FontPath "/usr/share/fonts"
EndSection

Section "Module"
Load "ddc"
Load "dbe"
Load "extmod"
Load "glx"
Load "record"
Load "bitmap"
Load "freetype"
Load "speedo"
Load "type1"
Load "vbe"
Load "int10"
Load "xandetect"
EndSection

Section "InputDevice"
Identifier "Keyboard1"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xfree86"
EndSection

# extra options in [mouse.p1] ps2info = 0x3
Section "InputDevice"
Identifier "mouse.p1"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/psaux"
Option "Protocol" "Auto"
Option "Emulate3Buttons" "YES"
Option "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
Identifier "mouse.usb"
Driver "mouse"
Option "SendCoreEvents" "YES"
Option "Device" "/dev/input/mice"
Option "Protocol" "IMPS/2"
Option "Emulate3Buttons" "YES"
Option "ZAxisMapping" "4 5"
EndSection

Section "DRI"
Mode 0666
EndSection

# pci info: 0x1002, 0x4150, 0x100
# extra options in [video.1] VideoRam = 131072k
Section "Device"
Identifier "Device1"
Driver "fglrx"
BusID "PCI:1:0:0"
Screen 0
EndSection

# pci info: 0x10DE, 0x2D, 0x58
# extra options in [video.2] VideoRam = 32768k
# extra options in [video.2] Xmodules = -dri -GLcore
Section "Device"
Identifier "Device2"
Driver "nvidia"
Option "NoRenderAccel"
BusID "PCI:0:11:0"
Screen 0
EndSection

# pci info: 0x1002, 0x4170, 0x101
Section "Device"
Identifier "Device3"
Driver "fglrx"
BusID "PCI:1:0:1"
Screen 0
EndSection

Section "Monitor"
Identifier "Monitor1"
VendorName "GSM"
ModelName ""
HorizSync 30-70
Option "DPMS"
EndSection

Section "Monitor"
Identifier "Monitor2"
VendorName "MEA"
ModelName "5515"
VertRefresh 50-61
HorizSync 30-70
Option "DPMS"
EndSection

Section "Monitor"
Identifier "Monitor3"
VendorName "Unknown"
ModelName "Default"
VertRefresh 55-60.939
HorizSync 31.5-105
EndSection

# res 1024 768
Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
SubSection "Display"
Depth 4
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 15
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 16
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 32
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
EndSection

# res 1024 768
Section "Screen"
Identifier "Screen2"
Device "Device2"
Monitor "Monitor2"
DefaultDepth 24
SubSection "Display"
Depth 4
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 15
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 16
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 32
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
EndSection

# res 1024 768
Section "Screen"
Identifier "Screen3"
Device "Device3"
Monitor "Monitor3"
DefaultDepth 24
SubSection "Display"
Depth 4
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 15
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 16
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 32
Modes "1024x768" "800x600" "640x480"
EndSubSection
EndSection

Section "ServerFlags"
AllowMouseOpenFail
Option "Xinerama"
EndSection

Section "ServerLayout"
Identifier "Default Layout"
Screen "Screen1" LeftOf "Screen2"
Screen "Screen2" LeftOf "Screen3"
Screen "Screen3"
InputDevice "Keyboard1"
InputDevice "mouse.p1"
InputDevice "mouse.usb"
EndSection
 
Old 01-16-2005, 06:56 AM   #8
gmbailey
LQ Newbie
 
Registered: Dec 2004
Posts: 9

Rep: Reputation: 0
This is second message since it is fairly long with 2 XF86Config-4 files
in one message... I tried to edit the output from xf86config in debian...
(using xandros as inspiration...)
Section "Module"
Load "ddc"
Load "dbe"
Load "extmod"
Load "glx"
Load "record"
Load "bitmap"
Load "freetype"
Load "speedo"
Load "type1"
Load "vbe"
Load "int10"
EndSection

Section "Files"

RgbPath "/usr/X11R6/lib/X11/rgb"


# FontPath "/usr/X11R6/lib/X11/fonts/local/"
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/"

ModulePath "/usr/X11R6/lib/modules"

EndSection


Section "InputDevice"

Identifier "Keyboard1"
Driver "Keyboard"

Option "AutoRepeat" "500 30"


Option "XkbRules" "xfree86"
Option "XkbModel" "pc104"
Option "XkbLayout" "us"

EndSection


Section "InputDevice"
Identifier "Mouse1"
Driver "mouse"
Option "Protocol" "PS/2"
Option "Device" "/dev/mouse"
EndSection


# pci info: 0x1002, 0x4150, 0x100
# extra options in [video.1] VideoRam = 131072k
Section "Device"
Identifier "Device1"
VendorName "Unknown"
BoardName "Unknown"
Driver "fglrx"
BusID "PCI:1:0:0"
Screen 0
EndSection

# pci info: 0x10DE, 0x2D, 0x58
# extra options in [video.2] VideoRam = 32768k
# extra options in [video.2] Xmodules = -dri -GLcore
Section "Device"
Identifier "Device2"
Driver "nvidia"
Option "NoRenderAccel"
BusID "PCI:0:11:0"
Screen 0
EndSection

Section "Monitor"
Identifier "Monitor1"
VendorName "GSM"
ModelName ""
HorizSync 30-70
Option "DPMS"
EndSection

Section "Monitor"
Identifier "Monitor2"
VendorName "MEA"
ModelName "5515"
VertRefresh 50-61
HorizSync 30-70
Option "DPMS"
EndSection

Section "Monitor"
Identifier "Monitor3"
VendorName "Unknown"
ModelName "Default"
VertRefresh 55-60.939
HorizSync 31.5-105
EndSection

# res 1024 768
Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
SubSection "Display"
Depth 4
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 15
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 16
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 32
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
EndSection

# res 1024 768
Section "Screen"
Identifier "Screen2"
Device "Device2"
Monitor "Monitor2"
DefaultDepth 24
SubSection "Display"
Depth 4
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 15
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 16
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 32
Modes "1024x768" "832x624" "800x600" "640x480"
EndSubSection
EndSection

# res 1024 768
Section "Screen"
Identifier "Screen3"
Device "Device3"
Monitor "Monitor3"
DefaultDepth 24
SubSection "Display"
Depth 4
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 15
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 16
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 32
Modes "1024x768" "800x600" "640x480"
EndSubSection
EndSection

Section "ServerFlags"
AllowMouseOpenFail
Option "Xinerama"
EndSection

Section "ServerLayout"
Identifier "Default Layout"
Screen "Screen1" LeftOf "Screen2"
Screen "Screen2" LeftOf "Screen3"
Screen "Screen3"
InputDevice "Keyboard1"
InputDevice "mouse.p1"
InputDevice "mouse.usb"
EndSection
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Twin View and SuSE 9.3 ninjaz Linux - Hardware 3 11-20-2005 06:17 PM
Separate Wallpaper in Twin View fredmt Linux - General 1 08-28-2005 05:29 PM
Twin View in Suse 9.3 Gonto SUSE / openSUSE 5 06-10-2005 04:33 AM
CAn't get twin view to work JROCK1980 Linux - Software 5 02-22-2004 12:19 PM
Twin view. I placed it in wrong section. I got the link here JROCK1980 Linux - Hardware 0 02-19-2004 01:01 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware

All times are GMT -5. The time now is 05:54 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration