Next Up Previous Contents Index

B.2 Metro X Configuration File

Metro X Configuration File

B.2.1 Warning

Warning The primary configuration file for the X server is Xconfig. If inappropriate changes are made to this file, the proper functioning of Metro-X will be impaired! Do not edit the Xconfig file unless absolutely necessary.

B.2.2 Xconfig

Xconfig Metro-X looks for the Xconfig file in the following locations and in the following order:
$HOME/Xconfig
$HOME/.Xconfig
/etc/X11/Xconfig (on Linux only)
/usr/lib/X11/Metro/Xconfig

Most options are set with the configuration utility (ConfigX, section 5.3.3). Additional options can be added using an editor, and ConfigX will preserve these.

B.2.3 Keywords

Keywords Descriptions of the Xconfig keywords are listed below. They are alphabetized here for your convenience and any order dependencies are noted within the individual entries.

B.2.3.1 Options Set In Configuration Utility

Options Set In Configuration Utility The following list of Xconfig keywords are options controlled via the Metro-X Configuration Utility. Any changes to these options should be made through the utility to avoid accidental damage to the function of Metro-X.

BitsPerPixel <number> Some X drivers support packed 24 bits per pixel memory organization. This means that each pixel takes up three bytes of video memory. In this case, configX inserts the line: BitsPerPixel 24

Buttons <number> This specifies the number of buttons on the mouse. This entry must immediately follow the Mouse entry in the Xconfig file.

Card <string> This designates the model of the graphics card in use. This is only used by configX.

Chipset <string> This displays the chipset used by the server. Normally configX inserts the correct chipset into the Xconfig file.

Clocks <number> [<number>...] This contains a list of numbers specifying the frequencies associated with the clock generator on the card. The numbers are specified in MHz.

Depth <number> This references the color depth of the screen, which controls how many colors can be displayed. Different cards and drivers support different depth values: 4, 8, 16, 24, or 32. Depth 4 supports 16 colors and depth 32 supports 16 million colors.

Dimensions <width> <height > This keyword represents the dimensions of the screen in millimeters, which is passed to X clients upon request.

DPMSoffDelay <number> This controls the number of seconds after the last user input before the screen enters DPMS off mode. Off mode provides maximum power reduction. To activate this mode, the X server disables both the horizontal and vertical sync signals to the monitor.

DPMSstandbyDelay<number> This controls the number of seconds after the last user input before the screen enters DPMS standby mode. Standby mode provides minimal power reduction. To activate this mode, the X server disables the horizontal sync signal to the monitor.

DPMSsuspendDelay<number> This controls the number of seconds after the last user input before the screen enters DPMS suspend mode. Suspend mode provides significant power reduction. To activate this mode, the X server disables the vertical sync signal to the monitor.

Driver<string> This references the name of the driver, which usually corresponds to the name of the X server. For example:

Driver 8514
initiates the section for defining the 8514 driver.

Emulate3Buttons This entry is used when a two-button mouse is emulating a three-button mouse. This entry must immediately follow the Mouse entry in the Xconfig file.

FontPath <string> FontPath is followed by a comma-delimited string of font directories. A font directory is any directory which contains fonts and a fonts.dir file.

HotKeyExit This allows you to shut down the X server with the key sequence [Ctrl]- [Alt]-[Backspace]. If this keyword is not present, [Ctrl]- [Alt]-[Backspace] does nothing special.

KbdDesc <string> The quoted string must match one of the entries in the KeyboardInfo file.

KbdDescFile <string> The string describes the keyboard.

LogFile <filename> Errors from the X server are logged here.

Modes The entries following the Modes give display mode timing information. If more than one mode is specified, the server can switch between modes. See Modes ( section B.2.4 for more details.

Monitor ``<string>'' The quoted string must match one of the entries in the MonitorInfo file. Mouse<type> [device] This describes the type of mouse in use. Type is a keyword that is OS dependant; the device parameter is usually required and is a file in the /dev directory.

MouseDesc ``<string>'' The quoted string must match one of the entries in the MouseInfo file.

ScreenLayout <screen> <left_neighbor> <right_neighbor> <top_neighbor> <bottom_neighbor> <left_edge> <right_edge> <top_edge> <bottom_edge> This defines how the mouse cursor behaves when it gets to the edge of the screen. There is one ScreenLayout entry for each configured screen. The *_neighbor fields tell which screen to move the mouse to. A value of -1 indicates that the mouse should stop at that edge. The *_edge fields tell at which edge of the corresponding *_neighbor screen the mouse will appear. Screens are numbered from 0 to 4. Edges are numbered as follows:

EDGES NUMBER
ENTER_LEFT 1
ENTER_RIGHT 2
ENTER_UP 3
ENTER_DOWN 4

Figure 56:ScreenLayout Edge Numbering

NOTE: Any changes made to this entry will be lost if configX is run.

ScreenLayoutIndex <number> This tells which of the predefined screen layouts was chosen in configX.

Virtual<width> <height> This designates the virtual width and height of the screen. The virtual width and height may be larger than the physical width and height if hardware panning is used.

Weight<string> This designates the RGB color specification, which is dependent on the depth value. When the depth value is 16, the options are:

R5:G5:B5 (default) or
R5:G6:B5
When the depth value is 32, the options are:
R8:G8:B8 (default) or
B8:G8:R8
When the depth value is 4 or 8, the weight value is ignored. XscreenSaverDelay This controls the number of seconds (with no input) before the screen is blanked.

B.2.3.2 Options Not Set in Configuration Utility

Options Not Set in Configuration Utility The following keywords control options not set through the configuration utility, and require manual editing of the Xconfig file.

BackBuffer This entry tells the X server to allocate off-screen memory for a BackBuffer.

CursorAdjustX

CursorAdjustY If the hardware cursor does not position correctly over the X Window screen, CursorAdjustX and CursorAdjustY allow you to specify a delta (number of pixels) to adjust the cursor left or right.

CursorScreenOne In a multiple screen configuration, this setting constrains the cursor to screen 0.

NoBackingStore This turns off backing store. Backing store is a server feature that allows programs to create complex drawings and have the server automatically handle exposure requests, thus preventing lengthy re-draw cycles. Backing store uses system memory to hold the window contents and can actually slow down the system if there is limited memory.

NoCursorWrap In a multiple screen configuration, this setting prevents the cursor from wrapping from screen 1 to screen 0.

NoFontCache This turns off font caching.

NoKeyboard This setting disallows keyboard input.

NoLEDs No LED processing is done by the server.

NoPixmapCache This turns off pixmap and stipple caching.

NotPrimaryMonitor No console processing is done for Virtual Terminal Support. This is normally used when X is run on a graphics card that is not driving the console.

Option <string> This specifies a special option passed to the server. It might specify the card model or a specific feature not typically used. Normally configX inserts the correct options in the Xconfig file.

Option HardwarePex Add this line to the Xconfig file to use the Hardware Z Buffer on the Matrox MGA Impression Plus graphics card. This file entry must immediately follow the Driver MGA entry.

Option NoHardwareCursor Add this line to disable hardware cursor support. This file entry must immediately follow the Driver entry.

RemapCursorPad This configuration causes the X server to send back different keycodes for the keypad arrow keys and cursorpad arrow keys. This is a minor violation of the X protocol, but it allows clients to differentiate between these keys.

SnfFormat <number> <number> <number> <number> Metro-X X11.5 can read X11.4 SNF (Server Natural Format) fonts. Since there is no standard for SNF fonts, the following four numbers can be adjusted to read most SNF fonts. The four number parameters represent the following values, normally built into the server at compile time:

BITMAP_BIT_ORDER
IMAGE_BYTE_ORDER
GLYPHPADBYTES
BITMAP_SCANLINE_UNIT
For example, to read SCO SNF fonts, add this line to the Xconfig file:
SnfFormat 1 0 1 1
Or, to read SNF fonts compatible with X11 R4 from Interactive Systems Corporation, add this line to the Xconfig file:
SnfFormat 1 1 4 4

Terminate Terminate causes the server to exit when the last client disconnects. Normally xinit kills the X server when the last client disconnects, before the server can reset.

Trace <number> This prints additional debugging information.

VideoRam <number> This specifies the amount of video memory on the graphics card, specified in terms of 1024-byte units (with one megabyte equal to a value of 1024). The X server usually detects how much memory is on the card.

VisualClass <number> This uses the default VisualClass from /usr/include/X11/X.h, and is based on the following table:

VISUAL CLASS NUMBER
StaticGray 0
GrayScale 1
StaticColor 2
PseudoColor 3
TrueColor 4
DirectColor 5

Figure 57:Visual Classes

On monochrome monitors the line

VisualClass 1
should be added to the Xconfig file.

B.2.4 Modes

Modes The last section of the Xconfig file is the Mode database (Modes). It contains the VESA timing specifications for various resolutions. The default values work for most graphics cards, but they can be tweaked to center the image and adjust its size on the monitor. Most of the Metro-X servers use this database to configure the card for graphics mode. The numbers indicate which clock to use from the DisplayConfig file's CLOCKS line, and also show the horizontal and vertical timing values. More specifically, an example of the numbers are:
``1024x768''  65  1024  1092  1220  1344  768  786  791  810

The following table shows the definition of each Modes number from the prior example.

VALUE Meaning
"1024X768" Screen Resolution in Pixels
65 Pixel Clock (MHz)
1024 Pixels Displayed (H)
1092 Sync Start (H)
1220 Sync End (H)
1344 Total (H)
768 Pixels Displayed (V)
786 Sync Start (V)
791 Sync End (V)
810 Total (V)

Figure 58:Modes Definitions

These numbers represent the ranges the electron beam traverses per one vertical refresh of the screen. They determine where the image is positioned on the screen, and what the refresh rate is.

B.2.4.1 Adjusting the Image Position

Adjusting the Image Position You can edit the Modes numbers if the screen image does not properly center or fill the monitor screen. Be sure to center the image before stretching or shrinking it. Any adjustments you make will go into effect after restarting the X server. Centering the Image: The Pixels Displayed numbers must match the desired physical screen resolution. The Sync Start and Sync End numbers must be increased or decreased (to move left or right; up or down) at the same time and by the same amount, and stay within the range of the Displayed and Total values. Stretching or Shrinking the Image: The Pixels Displayed numbers must match the desired physical screen resolution. The Total value is increased or decreased to stretch or shrink the image. In addition, to hold the center position, the Sync Start and Sync End numbers must be increased or decreased equally, based on one-half of the difference in the changed Total value. For instance, if you added 10 to the Horizontal Total value, you would also add 5 to the Horizontal Sync Start value and 5 to the Horizontal Sync End value.

B.2.4.2 Extensions

Extensions Extensions are configured in the /usr/lib/X11/Metro/Extensions file. Most extensions are dynamically loaded; that is, if they are needed they are loaded automatically without any additional manual configuration. An extension that is ``ON'' is loaded at server startup and never unloaded. An extension that is ``DYN'' is dynamically loaded on request by an X client XQueryExtension call. These extensions display with XListExtensions or xdpyinfo. An extension that is ``OFF'' can not be used, nor is it displayed with XListExtensions or xdpyinfo.

B.2.4.3 Special Notes

Special Notes


Next Up Previous Contents Index