ATI Radeon X800
This card seems to be a good choice for Linux users, with both dual-head and 3D acceleration.
It is supported by the open-source radeon driver for 2D, and ATI provide a proprietary driver which as of March 2005 works very well to provide 3D acceleration even in a dual-head configuration.
Drivers for the 128MB PCI Express x16 ATI Radeon X800 SE
This was wildly easier than I expected. The proprietary drivers from ATI have been packaged by SuSE/Novell for their distro and by Livna for Fedora Core 3.
Packaged fglrx driver for SuSE 9.2
For SuSE 9.2, follow the instructions in the README. Thanks SuSE! For a dual-monitor setup, use the /etc/X11/XF86Config provided below.
The proprietary ATI drivers, repackaged quite perfectly by SuSE as convenient RPMs, are available at the following links on their "supplemental" download location. I'm not sure if they're also available via YaST Online Update (aka YOU), probably they are. Remember that SuSE don't provide official support for 3D acceleration -- still, their support is already so good, I can't imagine what more could be done :)
ftp://ftp.suse.com/pub/suse/i386/supplementary/X/ATI/suse92/i386/fglrx/8.10.19/README
ftp://ftp.suse.com/pub/suse/i386/supplementary/X/ATI/suse92/i386/fglrx/8.10.19/fglrx-8.10.19-1.1.i586.rpm
ftp://ftp.suse.com/pub/suse/i386/supplementary/X/ATI/suse92/i386/fglrx/8.10.19/km_fglrx-8.10.19-1.1.i586.rpm
Packaged fglrx driver for SuSE 9.1 and SLES-9
For SuSE 9.1 and Novell SLES-9, follow the instructions in the README. For a dual-monitor setup, use the /etc/X11/XF86Config provided below.
ftp://ftp.suse.com/pub/suse/i386/supplementary/X/ATI/suse91/i386/fglrx/8.10.19/README
ftp://ftp.suse.com/pub/suse/i386/supplementary/X/ATI/suse91/i386/fglrx/8.10.19/fglrx-8.10.19-1.1.i586.rpm
ftp://ftp.suse.com/pub/suse/i386/supplementary/X/ATI/suse91/i386/fglrx/8.10.19/km_fglrx-8.10.19-1.1.i586.rpm
Packaged fglrx driver for Fedora Core 3
The proprietary drivers from ATI have been packaged by Livna for Fedora Core 3. Please refer to this
install guide by Dr. Timothy Fenn
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/ati-fglrx-8.10.19.1-0.lvn.1.3.i386.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/ati-fglrx-devel-8.10.19.1-0.lvn.1.3.i386.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.741_FC3-8.8.25.1-0.lvn.4.3.i586.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.741_FC3-8.8.25.1-0.lvn.4.3.i686.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.741_FC3smp-8.8.25.1-0.lvn.4.3.i586.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.741_FC3smp-8.8.25.1-0.lvn.4.3.i686.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.760_FC3-8.8.25.1-0.lvn.4.3.i386.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.760_FC3-8.8.25.1-0.lvn.4.3.i586.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.760_FC3-8.8.25.1-0.lvn.4.3.i686.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.760_FC3smp-8.8.25.1-0.lvn.4.3.i386.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.760_FC3smp-8.8.25.1-0.lvn.4.3.i586.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.760_FC3smp-8.8.25.1-0.lvn.4.3.i686.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.766_FC3-8.10.19.1-0.lvn.1.3.i586.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.766_FC3-8.10.19.1-0.lvn.1.3.i686.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.766_FC3smp-8.10.19.1-0.lvn.1.3.i586.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.766_FC3smp-8.10.19.1-0.lvn.1.3.i686.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.770_FC3-8.10.19.1-0.lvn.1.3.i586.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.770_FC3-8.10.19.1-0.lvn.1.3.i686.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.770_FC3smp-8.10.19.1-0.lvn.1.3.i586.rpm
http://rpm.livna.org/fedora/3/i386/RPMS.unstable/kernel-module-fglrx-2.6.10-1.770_FC3smp-8.10.19.1-0.lvn.1.3.i686.rpm
Packaged fglrx driver for Ubuntu
The friendly Ubuntu maintainers have put together a Binary Driver Howto. Ubuntu is based on Debian.
Configuring the fglrx driver for Full-screen Anti-aliasing
To enable fullscreen anti-aliasing in the fglrx driver (to remove the jagged pixel effects, helping games like gltron look much better, but which slows down the framerate you'll be able to get by about half), add the following to your /etc/X11/XF86Config file, in the "Device" section:
Option "FSAAEnable" "yes"
Option "FSAAScale" "4"
Video Playback with the fglrx driver
For video playback in fullscreen using mplayer, use the "gl2" video output driver. Also, if you are using an external receiver connected to the digital output of your sound card, enable AC3 passthrough: the alsa driver for the Audigy2 card supports it just fine now.
mplayer -vo gl2 -ao alsa -ac hwac3,a52 filename.avi
SuSE 9.2 fglrx Driver Dual-Head Configuration
In this configuration, on the right-hand-side I have an analog (Sun GDM-90W10) monitor connected via a VGA-to-DVI converter to the DVI port of the X800 card,
and on the left-hand-side I have an analog (Dell E193FP) LCD monitor connected to the VGA port of the X800 card. This config enables what ATI refer to as
the big desktop view, so your two monitors work together as one to display a very wide desktop. This configuration does not use Xinerama,
and doesn't work the same way normal X drivers work. The X800 hardware does all the work (so there's no :0.0 and :0.1, only :0.0).
Also, xv only works on one head at a time, so you cannot span an xv window across two heads, although you can use opengl in mplayer
or xine to play back video with it spanning across both heads, giving quite a cinematic experience. Maximizing a window doesn't work correctly: it fills both heads,
which usually isn't what you want. Also, video playback in xine works with xine -V xshm rather than with the default xv which gives only black.
Note: if the monitor connected to the DVI port of the X800 card is your left-hand monitor, please change the DesktopSetup as follows:
Option "DesktopSetup" "0x00000200"
Here's the complete /etc/X11/XF86Config configuration file, sorry for putting it all inline on this page,
but it's easier to keep in source-control along with the explanation if I do it like this.
# /etc/X11/XF86Config configuration file for SuSE 9.2
Section "dri"
Group 0
Mode 0666
EndSection
Section "Module"
Load "dri"
Load "dbe"
Load "type1"
Load "speedo"
Load "freetype"
Load "extmod"
Load "glx"
Load "v4l"
EndSection
Section "Files"
FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/local"
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/URW"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo"
FontPath "/usr/X11R6/lib/X11/fonts/PEX"
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/latin7/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/baekmuk:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/japanese:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/kwintv"
FontPath "/usr/X11R6/lib/X11/fonts/truetype"
FontPath "/usr/X11R6/lib/X11/fonts/uni:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/CID"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/misc/sgi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/xtest"
FontPath "/opt/kde3/share/fonts"
InputDevices "/dev/ttyS0"
InputDevices "/dev/ttyS1"
InputDevices "/dev/ttyS2"
InputDevices "/dev/ttyS3"
InputDevices "/dev/ttyS4"
InputDevices "/dev/ttyS5"
InputDevices "/dev/ttyS6"
InputDevices "/dev/ttyS7"
InputDevices "/dev/ttyS8"
InputDevices "/dev/psaux"
InputDevices "/dev/logibm"
InputDevices "/dev/sunmouse"
InputDevices "/dev/atibm"
InputDevices "/dev/amigamouse"
InputDevices "/dev/atarimouse"
InputDevices "/dev/inportbm"
InputDevices "/dev/gpmdata"
InputDevices "/dev/mouse"
InputDevices "/dev/usbmouse"
InputDevices "/dev/adbmouse"
InputDevices "/dev/input/mice"
InputDevices "/dev/input/event0"
InputDevices "/dev/pointer0"
InputDevices "/dev/pointer1"
InputDevices "/dev/pointer2"
InputDevices "/dev/pointer3"
EndSection
Section "InputDevice"
Identifier "Keyboard1"
Driver "kbd"
Option "AutoRepeat" "500 30"
Option "XkbRules" "xfree86"
Option "XkbModel" "pc101"
Option "XkbLayout" "us"
EndSection
Section "InputDevice"
Identifier "Mouse1"
Driver "mouse"
Option "Protocol" "ImPS/2"
Option "ZAxisMapping" "4 5"
Option "Device" "/dev/input/mice"
EndSection
Section "Monitor"
Identifier "Monitor0"
HorizSync 31.5 - 80.5
VertRefresh 60 - 75
Option "DPMS"
EndSection
Section "Monitor"
Identifier "Monitor1"
HorizSync 31.5 - 80.5
VertRefresh 60 - 75
Option "DPMS"
EndSection
Section "Device"
Identifier "ATI Graphics Adapter"
Driver "fglrx"
# ### generic DRI settings ###
# === disable PnP Monitor ===
#Option "NoDDC"
# === disable/enable XAA/DRI ===
Option "no_accel" "no"
Option "no_dri" "no"
# === misc DRI settings ===
Option "mtrr" "off" # disable DRI mtrr mapper, driver has its own code for mtrr
# ### FireGL DDX driver module specific settings ###
# === Screen Management ===
Option "DesktopSetup" "0x00000201"
Option "MonitorLayout" "AUTO, AUTO"
Option "IgnoreEDID" "off"
Option "HSync2" "31.5 - 80.5"
Option "VRefresh2" "60 - 75"
Option "ScreenOverlap" "0"
# === TV-out Management ===
Option "NoTV" "yes"
Option "TVStandard" "NTSC-M"
Option "TVHSizeAdj" "0"
Option "TVVSizeAdj" "0"
Option "TVHPosAdj" "0"
Option "TVVPosAdj" "0"
Option "TVHStartAdj" "0"
Option "TVColorAdj" "0"
Option "GammaCorrectionI" "0x00000000"
Option "GammaCorrectionII" "0x00000000"
# === OpenGL specific profiles/settings ===
Option "Capabilities" "0x00000000"
# === Video Overlay for the Xv extension ===
Option "VideoOverlay" "on"
# === OpenGL Overlay ===
# Note: When OpenGL Overlay is enabled, Video Overlay
# will be disabled automatically
Option "OpenGLOverlay" "off"
# === Center Mode (Laptops only) ===
Option "CenterMode" "off"
# === Pseudo Color Visuals (8-bit visuals) ===
Option "PseudoColorVisuals" "off"
# === QBS Management ===
Option "Stereo" "off"
Option "StereoSyncEnable" "1"
# === FSAA Management ===
Option "FSAAEnable" "no"
Option "FSAAScale" "1"
Option "FSAADisableGamma" "no"
Option "FSAACustomizeMSPos" "no"
Option "FSAAMSPosX0" "0.000000"
Option "FSAAMSPosY0" "0.000000"
Option "FSAAMSPosX1" "0.000000"
Option "FSAAMSPosY1" "0.000000"
Option "FSAAMSPosX2" "0.000000"
Option "FSAAMSPosY2" "0.000000"
Option "FSAAMSPosX3" "0.000000"
Option "FSAAMSPosY3" "0.000000"
Option "FSAAMSPosX4" "0.000000"
Option "FSAAMSPosY4" "0.000000"
Option "FSAAMSPosX5" "0.000000"
Option "FSAAMSPosY5" "0.000000"
# === Misc Options ===
Option "UseFastTLS" "0"
Option "BlockSignalsOnLock" "on"
Option "UseInternalAGPGART" "yes"
Option "ForceGenericCPU" "no"
BusID "PCI:1:0:0" # vendor=1002, device=4e47
Screen 0
EndSection
Section "Screen"
Identifier "Screen0"
Device "ATI Graphics Adapter"
Monitor "Monitor0"
DefaultDepth 24
#Option "backingstore"
Subsection "Display"
Depth 24
Modes "1280x1024"
ViewPort 0 0 # initial origin if mode is smaller than desktop
Virtual 1280 1024
EndSubsection
EndSection
Section "ServerLayout"
Identifier "Server Layout"
Screen "Screen0"
InputDevice "Mouse1" "CorePointer"
InputDevice "Keyboard1" "CoreKeyboard"
EndSection
SuSE 9.2 open-source radeon Driver Dual-Head Configuration
In the first configuration shown in this section, on the right-hand-side I have an analog (Sun GDM-90W10) monitor connected via a VGA-to-DVI converter to the DVI port of the X800 card,
and on the left-hand-side I have an analog (Dell E193FP) LCD monitor connected to the VGA port of the X800 card. This config enables what the radeon driver refers to as
the merged framebuffer view, so your two monitors work together as one to display a very wide desktop. This configuration does not use Xinerama,
and doesn't work the same way normal X drivers work. The X800 hardware does all the work (so there's no :0.0 and :0.1, only :0.0).
Also, xv only works on one head at a time, so you cannot span an xv window across two heads. Maximizing a window works correctly: it fills only one head.
Video playback in xine works with the default xv.
Note: SuSE SLES-9 provides an older revision of the radeon driver, where the MergedFB setting is not available.
Please check by doing man radeon to see if the radeon driver in your distro supports the required settings, before spending time trying this configuration.
# /etc/X11/XF86Config
Section "ServerLayout"
Identifier "Multihead layout"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
Option "Xinerama" "off"
Option "Clone" "off"
EndSection
Section "Files"
FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/local"
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/URW"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo"
FontPath "/usr/X11R6/lib/X11/fonts/PEX"
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/latin7/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/baekmuk:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/japanese:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/kwintv"
FontPath "/usr/X11R6/lib/X11/fonts/truetype"
FontPath "/usr/X11R6/lib/X11/fonts/uni:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/CID"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/misc/sgi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/xtest"
FontPath "/opt/kde3/share/fonts"
InputDevices "/dev/ttyS0"
InputDevices "/dev/ttyS1"
InputDevices "/dev/ttyS2"
InputDevices "/dev/ttyS3"
InputDevices "/dev/ttyS4"
InputDevices "/dev/ttyS5"
InputDevices "/dev/ttyS6"
InputDevices "/dev/ttyS7"
InputDevices "/dev/ttyS8"
InputDevices "/dev/psaux"
InputDevices "/dev/logibm"
InputDevices "/dev/sunmouse"
InputDevices "/dev/atibm"
InputDevices "/dev/amigamouse"
InputDevices "/dev/atarimouse"
InputDevices "/dev/inportbm"
InputDevices "/dev/gpmdata"
InputDevices "/dev/mouse"
InputDevices "/dev/usbmouse"
InputDevices "/dev/adbmouse"
InputDevices "/dev/input/mice"
InputDevices "/dev/input/event0"
InputDevices "/dev/pointer0"
InputDevices "/dev/pointer1"
InputDevices "/dev/pointer2"
InputDevices "/dev/pointer3"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "yes"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "fbdevhw"
Load "glx"
Load "record"
Load "freetype"
Load "type1"
Load "dri"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Dell 1901FP (Analog)"
HorizSync 30.0 - 80.0
VertRefresh 56.0 - 76.0
Option "dpms"
EndSection
Section "Device"
Identifier "Videocard0"
Driver "radeon"
VendorName "Videocard vendor"
BoardName "ATI Radeon X800SE"
Option "CRT2HSync" "30.0-80.0"
Option "CRT2VRefresh" "56.0-76.0"
Option "CRT2Position" "LeftOf"
Option "MergedFB" "true"
Option "MonitorLayout" "CRT, CRT"
BusID "PCI:1:0:0"
Screen 0
EndSection
Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Virtual 2560 1024
Depth 24
Modes "1280x1024"
EndSubSection
EndSection
Section "DRI"
Group 0
Mode 0666
EndSection
############################################################################
In this second configuration, on the right-hand-side we have the analog (Sun GDM-90W10) monitor connected via the regular VGA port of the X800 card,
and on the left-hand-side is the digital (Dell 2405FPW) LCD monitor connected via the DVI port of the X800 card. Essentially, the only difference between this
configuration and the previous one is that the "CRT2Position" option is now set to "RightOf", and the "MonitorLayout" option is set to "TMDS, CRT",
and the resolution is set to "1920x1200". The analog output of the radeon card at this resolution seems to be truncated on the right. What I mean is, for
example if you use one of the background wallpapers from InterfaceLIFT,
then display the same image on both desktops, around 15% along the right part of the image is truncated on the analog output. I didn't notice this at first, and
resizing windows to full screen works correctly. It's puzzling.
By the way, the Dell 2405FPW monitor has a "bug": the component input doesn't correctly filter Macrovision (e.g. from a DVD player), and passes the
messy signal on through to the monitor's Genesis gm1601 scaler processor, resulting in it becoming "confused" and rendering the video with a thin "wavy"
segment, usually near the top of the video. So if you're seeing this effect, don't worry, there's nothing wrong with your monitor. The 2405FPW also doesn't support
HDCP, so you can't use it as a TV. Probably this is all intended by Dell, to help us get more work done. Recently, I found that the Samsung DVD-HD841 players have a useful workaround for these problems: if you power on a DVD-HD841 with no disc in the drive, and press the following sequence of keys on its remote control: "ANGLE", "4", "3", "2", "7" (which will display the message "HDCP Free") it will cause the player to turn off the HDCP on its DVI output, making it nicely compatible with the Dell 2405FPW monitor. Also, the component output, when run at either 720p (1280x720) or 1080i (1920x1080) displays no wavy lines and looks almost as good as the DVI output (colors look a bit more realistic on the DVI output), making it convenient if you prefer not to switch the DVI connector from your computer to the DVD player and back again each time.
This config still enables the merged framebuffer view, so your two monitors work together as one to display a very wide desktop. This configuration does not use Xinerama,
and doesn't work the same way normal X drivers work. The X800 hardware does all the work (so there's no :0.0 and :0.1, only :0.0).
Also, xv only works on one head at a time, so you cannot span an xv window across two heads. Maximizing a window works correctly: it fills only one head.
Video playback in xine works with the default xv.
#######################################################
# Xorg configuration created by system-config-display
Section "ServerLayout"
Identifier "Multihead layout"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
Option "Xinerama" "off"
Option "Clone" "off"
EndSection
Section "Files"
FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/local"
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/URW"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo"
FontPath "/usr/X11R6/lib/X11/fonts/PEX"
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/latin7/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/baekmuk:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/japanese:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/kwintv"
FontPath "/usr/X11R6/lib/X11/fonts/truetype"
FontPath "/usr/X11R6/lib/X11/fonts/uni:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/CID"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/misc/sgi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/xtest"
FontPath "/opt/kde3/share/fonts"
InputDevices "/dev/ttyS0"
InputDevices "/dev/ttyS1"
InputDevices "/dev/ttyS2"
InputDevices "/dev/ttyS3"
InputDevices "/dev/ttyS4"
InputDevices "/dev/ttyS5"
InputDevices "/dev/ttyS6"
InputDevices "/dev/ttyS7"
InputDevices "/dev/ttyS8"
InputDevices "/dev/psaux"
InputDevices "/dev/logibm"
InputDevices "/dev/sunmouse"
InputDevices "/dev/atibm"
InputDevices "/dev/amigamouse"
InputDevices "/dev/atarimouse"
InputDevices "/dev/inportbm"
InputDevices "/dev/gpmdata"
InputDevices "/dev/mouse"
InputDevices "/dev/usbmouse"
InputDevices "/dev/adbmouse"
InputDevices "/dev/input/mice"
InputDevices "/dev/input/event0"
InputDevices "/dev/pointer0"
InputDevices "/dev/pointer1"
InputDevices "/dev/pointer2"
InputDevices "/dev/pointer3"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "yes"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "fbdevhw"
Load "glx"
Load "record"
Load "freetype"
Load "type1"
Load "dri"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Dell 2405FPW (Digital)"
HorizSync 30.0 - 80.0
VertRefresh 56.0 - 76.0
Option "dpms"
EndSection
Section "Device"
Identifier "Videocard0"
Driver "radeon"
VendorName "Videocard vendor"
BoardName "ATI Radeon X800SE"
Option "CRT2HSync" "30.0-80.0"
Option "CRT2VRefresh" "56.0-76.0"
Option "CRT2Position" "RightOf"
Option "MergedFB" "true"
Option "MonitorLayout" "TMDS, CRT"
BusID "PCI:1:0:0"
Screen 0
EndSection
Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1920x1200"
EndSubSection
EndSection
Section "DRI"
Group 0
Mode 0666
EndSection
############################################################################
Developer specification
Model information
The card I have here is the 128MB PCI Express x16 (DVI/VGA/TV-out) ATI Radeon X800 SE,
which seems to be an OEM card made for Dell with half the memory of the boxed ATI X800 cards with PCI Express x16 interfaces.
Boxed ATI cards with 128MB seem to only be available with AGP interfaces.
Installation
Installs into the PCI Express 16x interface on the motherboard.
Distro here
- SuSE/Novell 9.2
- RedHat? RHEL4
- Fedora Core 3
- SuSE/Novell SLES-9
Current support
Dual monitors (wide desktop) with 3D acceleration enabled.
Own experience
- The proprietary "fglrx" driver from ATI works very well now with revision 8.10.19 of the driver, with 3D acceleration working even on dual heads.
- The open-source "radeon" drivers also perform admirably and with a much better documented configuration, although without 3D acceleration.
Own Experience
The only unusual thing I noticed, related to 3D acceleration, was that while running the ID Software OpenGL game "Quake III Arena", for which ID very kindly make a linux version of the engine available for free download, the mouse would soon stop working. The fix for this appears to be to boot the system with acpi enabled (the default) rather than with "acpi=off" which was needed for the installation and that the installer added after it was done. So your /boot/grub/menu.lst file should look something like this:
title Linux (with acpi enabled, to make Quake happy :)
kernel (hd0,4)/vmlinuz root=/dev/sda6 vga=0x319 selinux=0 splash=silent resume=/dev/sda1 elevator=cfq showopts
initrd (hd0,4)/initrd
RedHat RHEL-4 and Fedora Core 3 open-source radeon Driver Dual-Head Configuration
In this configuration, on the right-hand-side I have an analog (Sun GDM-90W10) monitor connected via a VGA-to-DVI converter to the DVI port of the X800 card,
and on the left-hand-side I have an analog (Dell E193FP) LCD monitor connected to the VGA port of the X800 card. This config enables what the radeon driver refers to as
the merged framebuffer view, so your two monitors work together as one to display a very wide desktop. This configuration does not use Xinerama,
and doesn't work the same way normal X drivers work. The X800 hardware does all the work (so there's no :0.0 and :0.1, only :0.0).
Also, xv only works on one head at a time, so you cannot span an xv window across two heads. Maximizing a window works correctly: it fills only one head.
Video playback in xine works with the default xv. High Definition TV playback in RedHat RHEL-4 with xine-hd from pcHDTV uses
remarkably little CPU, I haven't figured out why yet. See here for more details on digital television in the USA.
# /etc/X11/xorg.conf for dual-head operation with the radeon driver for RedHat RHEL-4 and Fedora Core 3
Section "ServerLayout"
Identifier "Multihead layout"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
Option "Xinerama" "off"
Option "Clone" "off"
EndSection
Section "Files"
RgbPath "/usr/X11R6/lib/X11/rgb"
FontPath "unix/:7100"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "yes"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "fbdevhw"
Load "glx"
Load "record"
Load "freetype"
Load "type1"
Load "dri"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Dell 1901FP (Analog)"
HorizSync 30.0 - 80.0
VertRefresh 56.0 - 76.0
Option "dpms"
EndSection
Section "Device"
Identifier "Videocard0"
Driver "radeon"
VendorName "Videocard vendor"
BoardName "ATI Radeon X800SE"
Option "CRT2HSync" "30.0-80.0"
Option "CRT2VRefresh" "56.0-76.0"
Option "CRT2Position" "LeftOf"
Option "MergedFB" "true"
Option "MonitorLayout" "CRT, CRT"
BusID "PCI:1:0:0"
Screen 0
EndSection
Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Virtual 2560 1024
Depth 24
Modes "1280x1024"
EndSubSection
EndSection
Section "DRI"
Group 0
Mode 0666
EndSection
SuSE 9.1 and SuSE/Novell SLES-9 fglrx Driver Dual-Head Configuration
In this configuration, on the right-hand-side I have an analog (Sun GDM-90W10) monitor connected via a VGA-to-DVI converter to the DVI port of the X800 card,
and on the left-hand-side I have an analog (Dell E193FP) LCD monitor connected to the VGA port of the X800 card. This config enables what ATI refer to as
the big desktop view, so your two monitors work together as one to display a very wide desktop. This configuration does not use Xinerama,
and doesn't work the same way normal X drivers work. The X800 hardware does all the work (so there's no :0.0 and :0.1, only :0.0).
Also, xv only works on one head at a time, so you cannot span an xv window across two heads, although you can use opengl in mplayer
or xine to play back video with it spanning across both heads, giving quite a cinematic experience. Maximizing a window doesn't work correctly: it fills both heads,
which usually isn't what you want. Also, video playback in xine works with xine -V xshm rather than with the default xv which gives only black.
Note: if the monitor connected to the DVI port of the X800 card is your left-hand monitor, please change the DesktopSetup as follows:
Option "DesktopSetup" "0x00000200"
Here's the complete /etc/X11/XF86Config configuration file, it's almost exactly the same as the one shown above for SuSE 9.2, but I'll
just keep it here as it's simpler to keep track of each configuration in a separate section so that I can document any additional details (none so
far, it seems to work exactly the same as it does in SuSE 9.2 which is using xorg).
# /etc/X11/XF86Config configuration file for SuSE 9.2 and SuSE/Novell SLES-9
Section "dri"
Group 0
Mode 0666
EndSection
Section "Module"
Load "dri"
Load "dbe"
Load "type1"
Load "speedo"
Load "freetype"
Load "extmod"
Load "glx"
Load "v4l"
EndSection
Section "Files"
FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/local"
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/URW"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo"
FontPath "/usr/X11R6/lib/X11/fonts/PEX"
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/latin2/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/latin7/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/baekmuk:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/japanese:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/kwintv"
FontPath "/usr/X11R6/lib/X11/fonts/truetype"
FontPath "/usr/X11R6/lib/X11/fonts/uni:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/CID"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/ucs/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/hellas/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/misc/sgi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/xtest"
FontPath "/opt/kde3/share/fonts"
InputDevices "/dev/ttyS0"
InputDevices "/dev/ttyS1"
InputDevices "/dev/ttyS2"
InputDevices "/dev/ttyS3"
InputDevices "/dev/ttyS4"
InputDevices "/dev/ttyS5"
InputDevices "/dev/ttyS6"
InputDevices "/dev/ttyS7"
InputDevices "/dev/ttyS8"
InputDevices "/dev/psaux"
InputDevices "/dev/logibm"
InputDevices "/dev/sunmouse"
InputDevices "/dev/atibm"
InputDevices "/dev/amigamouse"
InputDevices "/dev/atarimouse"
InputDevices "/dev/inportbm"
InputDevices "/dev/gpmdata"
InputDevices "/dev/mouse"
InputDevices "/dev/usbmouse"
InputDevices "/dev/adbmouse"
InputDevices "/dev/input/mice"
InputDevices "/dev/input/event0"
InputDevices "/dev/pointer0"
InputDevices "/dev/pointer1"
InputDevices "/dev/pointer2"
InputDevices "/dev/pointer3"
EndSection
Section "InputDevice"
Identifier "Keyboard1"
Driver "Keyboard"
Option "AutoRepeat" "500 30"
Option "XkbRules" "xfree86"
Option "XkbModel" "pc101"
Option "XkbLayout" "us"
EndSection
Section "InputDevice"
Identifier "Mouse1"
Driver "mouse"
Option "Protocol" "ImPS/2"
Option "ZAxisMapping" "4 5"
Option "Device" "/dev/input/mice"
EndSection
Section "Monitor"
Identifier "Monitor0"
HorizSync 31.5 - 80.5
VertRefresh 60 - 75
Option "DPMS"
EndSection
Section "Monitor"
Identifier "Monitor1"
HorizSync 31.5 - 80.5
VertRefresh 60 - 75
Option "DPMS"
EndSection
Section "Device"
Identifier "ATI Graphics Adapter"
Driver "fglrx"
# ### generic DRI settings ###
# === disable PnP Monitor ===
#Option "NoDDC"
# === disable/enable XAA/DRI ===
Option "no_accel" "no"
Option "no_dri" "no"
# === misc DRI settings ===
Option "mtrr" "off" # disable DRI mtrr mapper, driver has its own code for mtrr
# ### FireGL DDX driver module specific settings ###
# === Screen Management ===
Option "DesktopSetup" "0x00000201"
Option "MonitorLayout" "AUTO, AUTO"
Option "IgnoreEDID" "off"
Option "HSync2" "31.5 - 80.5"
Option "VRefresh2" "60 - 75"
Option "ScreenOverlap" "0"
# === TV-out Management ===
Option "NoTV" "yes"
Option "TVStandard" "NTSC-M"
Option "TVHSizeAdj" "0"
Option "TVVSizeAdj" "0"
Option "TVHPosAdj" "0"
Option "TVVPosAdj" "0"
Option "TVHStartAdj" "0"
Option "TVColorAdj" "0"
Option "GammaCorrectionI" "0x00000000"
Option "GammaCorrectionII" "0x00000000"
# === OpenGL specific profiles/settings ===
Option "Capabilities" "0x00000000"
# === Video Overlay for the Xv extension ===
Option "VideoOverlay" "on"
# === OpenGL Overlay ===
# Note: When OpenGL Overlay is enabled, Video Overlay
# will be disabled automatically
Option "OpenGLOverlay" "off"
# === Center Mode (Laptops only) ===
Option "CenterMode" "off"
# === Pseudo Color Visuals (8-bit visuals) ===
Option "PseudoColorVisuals" "off"
# === QBS Management ===
Option "Stereo" "off"
Option "StereoSyncEnable" "1"
# === FSAA Management ===
Option "FSAAEnable" "no"
Option "FSAAScale" "1"
Option "FSAADisableGamma" "no"
Option "FSAACustomizeMSPos" "no"
Option "FSAAMSPosX0" "0.000000"
Option "FSAAMSPosY0" "0.000000"
Option "FSAAMSPosX1" "0.000000"
Option "FSAAMSPosY1" "0.000000"
Option "FSAAMSPosX2" "0.000000"
Option "FSAAMSPosY2" "0.000000"
Option "FSAAMSPosX3" "0.000000"
Option "FSAAMSPosY3" "0.000000"
Option "FSAAMSPosX4" "0.000000"
Option "FSAAMSPosY4" "0.000000"
Option "FSAAMSPosX5" "0.000000"
Option "FSAAMSPosY5" "0.000000"
# === Misc Options ===
Option "UseFastTLS" "0"
Option "BlockSignalsOnLock" "on"
Option "UseInternalAGPGART" "yes"
Option "ForceGenericCPU" "no"
BusID "PCI:1:0:0" # vendor=1002, device=4e47
Screen 0
EndSection
Section "Screen"
Identifier "Screen0"
Device "ATI Graphics Adapter"
Monitor "Monitor0"
DefaultDepth 24
#Option "backingstore"
Subsection "Display"
Depth 24
Modes "1280x1024"
ViewPort 0 0 # initial origin if mode is smaller than desktop
Virtual 1280 1024
EndSubsection
EndSection
Section "ServerLayout"
Identifier "Server Layout"
Screen "Screen0"
InputDevice "Mouse1" "CorePointer"
InputDevice "Keyboard1" "CoreKeyboard"
EndSection
-- PeterKnaggs - 14 Jun 2005
|