Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Wed 17 Jul 2019, 22:48
All times are UTC - 4
 Forum index » House Training » HOWTO ( Solutions )
Specify graphics card with Xorg
Moderators: Flash, Ian, JohnMurga
Post new topic   Reply to topic View previous topic :: View next topic
Page 1 of 1 [1 Post]  
Author Message
ecomoney


Joined: 25 Nov 2005
Posts: 2183
Location: Lincolnshire, England

PostPosted: Tue 03 Oct 2006, 00:00    Post subject:  Specify graphics card with Xorg  

Ive found a bug in the Xorg Wizard that sets up the first time the puppy cd is run, and that you must run when moving you puppy to another computer. If you add a new graphic card (for example a faster one with 3d to play the 3d games by MU) you must do it too. Also if you have the dreaded 815 / 845 intel chipset onto your board then adding a new card is the only way Ive found to get a decent resolution/color/colour depth.

When you run the xorgwizard on a michine with two graphics cards, the wizard fails with an error message "DC: Stack Underflow" and "Cant open display 0". Goin in and editing the xorg config file manually from the wizard reveals the reason. The xorg wizard tries to set up the xorg system to use both graphics cards under a dual monitor configuration!!! Now this would be impressive (it takes serius linux hackers weeks to set up dual monitors from my experience!) but Ive never known it to work. The workaround is this.

Go into the "Edit xorg.conf" section after you have waited for the wizard to fail with the "DC: Stack Underflow" and "Cant open display 0" messages. You will see something like the code from my sample here, but without the Arrow 's which Ive added.


Quote:


#Special base config file used in Puppy Linux.

# **********************************************************************
# Module section -- this section is used to specify
# which dynamically loadable modules to load.
# **********************************************************************
#
Section "Module"

# This loads the DBE extension module.

Load "dbe" # Double buffer extension

# This loads the miscellaneous extensions module, and disables
# initialisation of the XFree86-DGA extension within that module.
SubSection "extmod"
Option "omit xfree86-dga" # don't initialise the DGA extension
EndSubSection

# This loads the font modules
Load "type1"
Load "freetype"

# This loads the GLX module
Load "glx"

# This loads xtrap extension, used by xrandr
Load "xtrap"

EndSection

# **********************************************************************
# Files section. This allows default font and rgb paths to be set
# **********************************************************************

Section "Files"

# The location of the RGB database. Note, this is the name of the
# file minus the extension (like ".txt" or ".db"). There is normally
# no need to change the default.

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

# Multiple FontPath entries are allowed (which are concatenated together),
# as well as specifying multiple comma-separated entries in one FontPath
# command (or a combination of both methods)

FontPath "/usr/X11R6/lib/X11/fonts/misc/"
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"

EndSection

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

Section "ServerFlags"

# Uncomment this to disable the <Crtl><Alt><Fn> VT switch sequence
# (where n is 1 through 12). This allows clients to receive these key
# events.

# Option "DontVTSwitch"

# Enables mode switching with xrandr

Option "RandR" "on"

EndSection

#everything past here is auto-generated by Puppy's XorgWizard...


Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
Arrow Screen 1 "Screen1" RightOf "Screen0"
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection

Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "pc102"
Option "XkbLayout" "gb" #xkeymap0
EndSection

Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto" #mouse0protocol
Option "Device" "/dev/mouse"
#Option "Emulate3Buttons"
#Option "Emulate3Timeout" "50"
Option "ZAxisMapping" "4 5" #scrollwheel
EndSection

Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
HorizSync 31.5-94
VertRefresh 50-90
EndSection

Arrow Section "Monitor"
Arrow Identifier "Monitor1"
Arrow VendorName "Monitor Vendor"
Arrow ModelName "Monitor Model"
Arrow HorizSync 31.5-94
Arrow VertRefresh 50-90
Arrow EndSection

Section "Device"
### Available Driver options are:-
### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
### [arg]: arg optional
#Option "NoAccel" # [<bool>]
#Option "SWcursor" # [<bool>]
#Option "Dac6Bit" # [<bool>]
#Option "Dac8Bit" # [<bool>]
#Option "BusType" # [<str>]
#Option "CPPIOMode" # [<bool>]
#Option "CPusecTimeout" # <i>
#Option "AGPMode" # <i>
#Option "AGPFastWrite" # [<bool>]
#Option "AGPSize" # <i>
#Option "GARTSize" # <i>
#Option "RingSize" # <i>
#Option "BufferSize" # <i>
#Option "EnableDepthMoves" # [<bool>]
#Option "EnablePageFlip" # [<bool>]
#Option "NoBackBuffer" # [<bool>]
#Option "PanelOff" # [<bool>]
#Option "DDCMode" # [<bool>]
#Option "MonitorLayout" # [<str>]
#Option "IgnoreEDID" # [<bool>]
#Option "UseFBDev" # [<bool>]
#Option "VideoKey" # <i>
#Option "MergedFB" # [<bool>]
#Option "CRT2HSync" # [<str>]
#Option "CRT2VRefresh" # [<str>]
#Option "CRT2Position" # [<str>]
#Option "MetaModes" # [<str>]
#Option "MergedDPI" # [<str>]
#Option "NoMergedXinerama" # [<bool>]
#Option "MergedXineramaCRT2IsScreen0" # [<bool>]
#Option "DisplayPriority" # [<str>]
#Option "PanelSize" # [<str>]
#Option "ForceMinDotClock" # <freq>
#Option "RenderAccel" # [<bool>]
#Option "SubPixelOrder" # [<str>]
#Option "ShowCache" # [<bool>]
#Option "DynamicClocks" # [<bool>]
Identifier "Card0"
Driver "ati"
VendorName "ATI Technologies Inc"
BoardName "Radeon RV100 QY [Radeon 7000/VE]"
BusID "PCI:0:10:0"
EndSection

Arrow Section "Device"
Arrow ### Available Driver options are:-
Arrow ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
Arrow ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
Arrow ### [arg]: arg optional
Arrow #Option "SWcursor" # [<bool>]
Arrow #Option "PciRetry" # [<bool>]
Arrow #Option "NoAccel" # [<bool>]
Arrow #Option "SetMClk" # <freq>
Arrow #Option "MUXThreshold" # <i>
Arrow #Option "ShadowFB" # [<bool>]
Arrow #Option "Rotate" # [<str>]
Arrow #Option "VideoKey" # <i>
Arrow #Option "NoMMIO" # [<bool>]
Arrow #Option "NoPciBurst" # [<bool>]
Arrow #Option "MMIOonly" # [<bool>]
Arrow #Option "CyberShadow" # [<bool>]
Arrow #Option "CyberStretch" # [<bool>]
Arrow #Option "XvHsync" # <i>
Arrow #Option "XvVsync" # <i>
Arrow #Option "XvBskew" # <i>
Arrow #Option "XvRskew" # <i>
Arrow #Option "FpDelay" # <i>
Arrow #Option "Display1400" # [<bool>]
Arrow #Option "Display" # [<str>]
Arrow #Option "GammaBrightness" # [<str>]
Arrow #Option "TVChipset" # [<str>]
Arrow #Option "TVSignal" # <i>
Arrow Identifier "Card1"
Arrow Driver "trident"
Arrow VendorName "Trident Microsystems"
Arrow BoardName "CyberBlade/i1"
Arrow BusID "PCI:1:0:0"
Arrow EndSection

Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 16
Subsection "Display"
Depth 16
Modes "1600x1200"
EndSubsection
EndSection


Basically the trick is to remove all reference to monitor or card number 1, which is the one on the board in every case Ive found so far. It should be easy to tell from the names. These are the lines Ive arrowed, one near the top and two complete section one for the monitor and one for the card.

The editor is MP, so to remove a line you press [ctrl]+'Y'. Press [ctrl]+A to bring up a menu and select "save", then [ctrl]+A again and quit. Run the test again and this time you should get your linux video test screen up ok without the error message.

The resulting file should look like this:-

Code:

#Special base config file used in Puppy Linux.

# **********************************************************************
# Module section -- this section is used to specify
# which dynamically loadable modules to load.
# **********************************************************************
#
Section "Module"

# This loads the DBE extension module.

Load "dbe" # Double buffer extension

# This loads the miscellaneous extensions module, and disables
# initialisation of the XFree86-DGA extension within that module.
SubSection "extmod"
Option "omit xfree86-dga" # don't initialise the DGA extension
EndSubSection

# This loads the font modules
Load "type1"
Load "freetype"

# This loads the GLX module
Load "glx"

# This loads xtrap extension, used by xrandr
Load "xtrap"

EndSection

# **********************************************************************
# Files section. This allows default font and rgb paths to be set
# **********************************************************************

Section "Files"

# The location of the RGB database. Note, this is the name of the
# file minus the extension (like ".txt" or ".db"). There is normally
# no need to change the default.

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

# Multiple FontPath entries are allowed (which are concatenated together),
# as well as specifying multiple comma-separated entries in one FontPath
# command (or a combination of both methods)

FontPath "/usr/X11R6/lib/X11/fonts/misc/"
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"

EndSection

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

Section "ServerFlags"

# Uncomment this to disable the <Crtl><Alt><Fn> VT switch sequence
# (where n is 1 through 12). This allows clients to receive these key
# events.

# Option "DontVTSwitch"

# Enables mode switching with xrandr

Option "RandR" "on"

EndSection

#everything past here is auto-generated by Puppy's XorgWizard...


Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection

Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "pc102"
Option "XkbLayout" "gb" #xkeymap0
EndSection

Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto" #mouse0protocol
Option "Device" "/dev/mouse"
#Option "Emulate3Buttons"
#Option "Emulate3Timeout" "50"
Option "ZAxisMapping" "4 5" #scrollwheel
EndSection

Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
HorizSync 31.5-94
VertRefresh 50-90
EndSection

Section "Device"
### Available Driver options are:-
### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
### [arg]: arg optional
#Option "NoAccel" # [<bool>]
#Option "SWcursor" # [<bool>]
#Option "Dac6Bit" # [<bool>]
#Option "Dac8Bit" # [<bool>]
#Option "BusType" # [<str>]
#Option "CPPIOMode" # [<bool>]
#Option "CPusecTimeout" # <i>
#Option "AGPMode" # <i>
#Option "AGPFastWrite" # [<bool>]
#Option "AGPSize" # <i>
#Option "GARTSize" # <i>
#Option "RingSize" # <i>
#Option "BufferSize" # <i>
#Option "EnableDepthMoves" # [<bool>]
#Option "EnablePageFlip" # [<bool>]
#Option "NoBackBuffer" # [<bool>]
#Option "PanelOff" # [<bool>]
#Option "DDCMode" # [<bool>]
#Option "MonitorLayout" # [<str>]
#Option "IgnoreEDID" # [<bool>]
#Option "UseFBDev" # [<bool>]
#Option "VideoKey" # <i>
#Option "MergedFB" # [<bool>]
#Option "CRT2HSync" # [<str>]
#Option "CRT2VRefresh" # [<str>]
#Option "CRT2Position" # [<str>]
#Option "MetaModes" # [<str>]
#Option "MergedDPI" # [<str>]
#Option "NoMergedXinerama" # [<bool>]
#Option "MergedXineramaCRT2IsScreen0" # [<bool>]
#Option "DisplayPriority" # [<str>]
#Option "PanelSize" # [<str>]
#Option "ForceMinDotClock" # <freq>
#Option "RenderAccel" # [<bool>]
#Option "SubPixelOrder" # [<str>]
#Option "ShowCache" # [<bool>]
#Option "DynamicClocks" # [<bool>]
Identifier "Card0"
Driver "ati"
VendorName "ATI Technologies Inc"
BoardName "Radeon RV100 QY [Radeon 7000/VE]"
BusID "PCI:0:10:0"
EndSection

Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 16
Subsection "Display"
Depth 16
Modes "1600x1200"
EndSubsection
EndSection


The effect of this is to make XORG ignore that hardware and just work with the newer card (in this case the ATI Radeon). I dont have a clue why because Im not that technical!!!

Really this is a bug (or perhaps two because 815 intel chipset should work and puppy should support computers with two cards in). I wonder if the xorg wizard could be set to only use the card with the 0 value, and not create entries for the card and monitor 1's. That way it would automatically pick up a new video card that was added. Personally I think that xvesa should be used by default to cut the number of steps windows refugees have to take to defect, but this still causes problems with the common 815's and 845's. I suppose an ideal would be to have a menu of cards if (and only if) several were detected like the ALSA sound wizard (should!). Of course the absolute best thing would be for a choice to multiple monitors to be set up automatically, but I think this is the one area Ive found so far that Linux lags behind Windows in!!!

_________________
Puppy Linux's Mission

Sorry, my server is down atm!
Back to top
View user's profile Send private message Visit poster's website MSN Messenger 
Display posts from previous:   Sort by:   
Page 1 of 1 [1 Post]  
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » House Training » HOWTO ( Solutions )
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0506s ][ Queries: 12 (0.0121s) ][ GZIP on ]