XFree86(1) XFree86(1) 1mNAME0m XFree86 - X11R6 X server 1mSYNOPSIS0m 1mXFree86 22m[1m:4m22mdisplay24m] [4moption24m 4m...24m] 1mDESCRIPTION0m 1mXFree86 22mis a full featured X server that was originally designed for UNIX and UNIX-like operating systems running on Intel x86 hardware. It now runs on a wider range of hardware and OS platforms. This work was originally derived from 4mX38624m 4m1.224m by Thomas Roell which was contributed to X11R5 by Snitily Graphics Consulting Service. The 1mXFree86 22mserver architecture was redesigned for the 4.0 release, and it includes among many other things a loadable module system derived from code donated by Metro Link, Inc. The current XFree86 release is com- patible with X11R6.6. 1mPLATFORMS0m 1mXFree86 22moperates under a wide range of operating systems and hardware platforms. The Intel x86 (IA32) architecture is the most widely sup- ported hardware platform. Other hardware platforms include Compaq Alpha, Intel IA64, SPARC and PowerPC. The most widely supported oper- ating systems are the free/OpenSource UNIX-like systems such as Linux, FreeBSD, NetBSD and OpenBSD. Commercial UNIX operating systems such as Solaris (x86) and UnixWare are also supported. Other supported operat- ing systems include LynxOS, and GNU Hurd. Darwin and Mac OS X are sup- ported with the XDarwin(1) X server. Win32/Cygwin is supported with the XWin X server. 1mNETWORK CONNECTIONS0m 1mXFree86 22msupports connections made using the following reliable byte- streams: 4mLocal0m On most platforms, the "Local" connection type is a UNIX-domain socket. On some System V platforms, the "local" connection types also include STREAMS pipes, named pipes, and some other mechanisms. 4mTCPIP0m 1mXFree86 22mlistens on port 6000+4mn24m, where 4mn24m is the display number. This connection type can be disabled with the 1m-nolisten 22moption (see the Xserver(1) man page for details). 1mENVIRONMENT VARIABLES0m For operating systems that support local connections other than Unix Domain sockets (SVR3 and SVR4), there is a compiled-in list specifying the order in which local connections should be attempted. This list can be overridden by the 4mXLOCAL24m environment variable described below. If the display name indicates a best-choice connection should be made (e.g. 1m:0.022m), each connection mechanism is tried until a connection succeeds or no more mechanisms are available. Note: for these OSs, the Unix Domain socket connection is treated differently from the other local connection types. To use it the connection must be made to 1munix:0.022m. The 4mXLOCAL24m environment variable should contain a list of one more more of the following: NAMED PTS SCO ISC which represent SVR4 Named Streams pipe, Old-style USL Streams pipe, SCO XSight Streams pipe, and ISC Streams pipe, respectively. You can select a single mechanism (e.g. 4mXLOCAL=NAMED24m), or an ordered list (e.g. 4mXLOCAL="NAMED:PTS:SCO"24m). his variable overrides the compiled-in defaults. For SVR4 it is recommended that 4mNAMED24m be the first prefer- ence connection. The default setting is 4mPTS:NAMED:ISC:SCO24m. To globally override the compiled-in defaults, you should define (and export if using 1msh 22mor 1mksh22m) 4mXLOCAL24m globally. If you use startx(1) or xinit(1), the definition should be at the top of your 4m.xinitrc24m file. If you use xdm(1), the definitions should be early on in the 4m/usr/X11R6/lib/X11/xdm/Xsession24m script. 1mOPTIONS0m 1mXFree86 22msupports several mechanisms for supplying/obtaining configura- tion and run-time parameters: command line options, environment vari- ables, the XF86Config(5) configuration file, auto-detection, and fall- back defaults. When the same information is supplied in more than one way, the highest precedence mechanism is used. The list of mechanisms is ordered from highest precedence to lowest. Note that not all param- eters can be supplied via all methods. The available command line options and environment variables (and some defaults) are described here and in the Xserver(1) manual page. Most configuration file param- eters, with their defaults, are described in the XF86Config(5) manual page. Driver and module specific configuration parameters are described in the relevant driver or module manual page. Starting with version 4.4, 1mXFree86 22mhas support for generating a usable configuration at run-time when no XF86Config(5) configuration file is provided. The initial version of this automatic configuration support is targeted at the most popular hardware and software platforms sup- ported by XFree86. Some details about how this works can be found in the 1mCONFIGURATION 22msection below and in the getconfig(1) manual page. In addition to the normal server options described in the Xserver(1) manual page, 1mXFree86 22maccepts the following command line switches: 1mvt4m22mXX24m 4mXX24m specifies the Virtual Terminal device number which 1mXFree860m will use. Without this option, 1mXFree86 22mwill pick the first available Virtual Terminal that it can locate. This option applies only to platforms such as Linux, BSD, SVR3 and SVR4, that have virtual terminal support. 1m-allowMouseOpenFail0m Allow the server to start up even if the mouse device can't be opened or initialised. This is equivalent to the 1mAllow-0m 1mMouseOpenFail 22mXF86Config(5) file option. 1m-allowNonLocalModInDev0m Allow changes to keyboard and mouse settings from non-local clients. By default, connections from non-local clients are not allowed to do this. This is equivalent to the 1mAllowNonLo-0m 1mcalModInDev 22mXF86Config(5) file option. 1m-allowNonLocalXvidtune0m Make the VidMode extension available to remote clients. This allows the xvidtune client to connect from another host. This is equivalent to the 1mAllowNonLocalXvidtune 22mXF86Config(5) file option. By default non-local connections are not allowed. 1m-appendauto0m Append the automatic XFree86 server configuration data to an existing configuration file. By default this is only done when an existing configuration file does not contain any 1mServerLay-0m 1mout 22msections or any 1mScreen 22msections. This can be useful for providing configuration details for things not currently han- dled by the automatic configuration mechanism, such as input devices, font paths, etc. 1m-autoconfig0m Use automatic XFree86 server configuration, even if a configu- ration file is available. By default automatic configuration is only used when a configuration file cannot be found. 1m-bgamma 4m22mvalue0m Set the blue gamma correction. 4mvalue24m must be between 0.1 and 10. The default is 1.0. Not all drivers support this. See also the 1m-gamma22m, 1m-rgamma22m, and 1m-ggamma 22moptions. 1m-bpp 4m22mn24m No longer supported. Use 1m-depth 22mto set the color depth, and use 1m-fbbpp 22mif you really need to force a non-default frame- buffer (hardware) pixel format. 1m-configure0m When this option is specified, the 1mXFree86 22mserver loads all video driver modules, probes for available hardware, and writes out an initial XF86Config(5) file based on what was detected. This option currently has some problems on some platforms, but in most cases it is a good way to bootstrap the configuration process. This option is only available when the server is run as root (i.e, with real-uid 0). 1m-crt /dev/tty4m22mXX0m SCO only. This is the same as the 1mvt 22moption, and is provided for compatibility with the native SCO X server. 1m-depth 4m22mn0m Sets the default color depth. Legal values are 1, 4, 8, 15, 16, and 24. Not all drivers support all values. 1m-disableModInDev0m Disable dynamic modification of input device settings. This is equivalent to the 1mDisableModInDev 22mXF86Config(5) file option. 1m-disableVidMode0m Disable the the parts of the VidMode extension (used by the xvidtune client) that can be used to change the video modes. This is equivalent to the 1mDisableVidModeExtension 22mXF86Config(5) file option. 1m-fbbpp 4m22mn0m Sets the number of framebuffer bits per pixel. You should only set this if you're sure it's necessary; normally the server can deduce the correct value from 1m-depth 22mabove. Useful if you want to run a depth 24 configuration with a 24 bpp framebuffer rather than the (possibly default) 32 bpp framebuffer (or vice versa). Legal values are 1, 8, 16, 24, 32. Not all drivers support all values. 1m-flipPixels0m Swap the default values for the black and white pixels. 1m-gamma 4m22mvalue0m Set the gamma correction. 4mvalue24m must be between 0.1 and 10. The default is 1.0. This value is applied equally to the R, G and B values. Those values can be set independently with the 1m-rgamma22m, 1m-bgamma22m, and 1m-ggamma 22moptions. Not all drivers support this. 1m-ggamma 4m22mvalue0m Set the green gamma correction. 4mvalue24m must be between 0.1 and 10. The default is 1.0. Not all drivers support this. See also the 1m-gamma22m, 1m-rgamma22m, and 1m-bgamma 22moptions. 1m-ignoreABI0m The 1mXFree86 22mserver checks the ABI revision levels of each mod- ule that it loads. It will normally refuse to load modules with ABI revisions that are newer than the server's. This is because such modules might use interfaces that the server does not have. When this option is specified, mismatches like this are downgraded from fatal errors to warnings. This option should be used with care. 1m-keeptty0m Prevent the server from detaching its initial controlling ter- minal. This option is only useful when debugging the server. Not all platforms support (or can use) this option. 1m-keyboard 4m22mkeyboard-name0m Use the XF86Config(5) file 1mInputDevice 22msection called 4mkeyboard-0m 4mname24m as the core keyboard. This option is ignored when the 1mServerLayout 22msection specifies a core keyboard. In the absence of both a ServerLayout section and this option, the first rele- vant 1mInputDevice 22msection is used for the core keyboard. 1m-layout 4m22mlayout-name0m Use the XF86Config(5) file 1mServerLayout 22msection called 4mlayout-0m 4mname24m. By default the first 1mServerLayout 22msection is used. 1m-logfile 4m22mfilename0m Use the file called 4mfilename24m as the 1mXFree86 22mserver log file. The default log file is 1m/var/log/XFree86.4m22mn24m1m.log 22mon most plat- forms, where 4mn24m is the display number of the 1mXFree86 22mserver. The default may be in a different directory on some platforms. This option is only available when the server is run as root (i.e, with real-uid 0). 1m-logverbose 22m[4mn24m] Sets the verbosity level for information printed to the 1mXFree860m server log file. If the 4mn24m value isn't supplied, each occur- rence of this option increments the log file verbosity level. When the 4mn24m value is supplied, the log file verbosity level is set to that value. The default log file verbosity level is 3. 1m-modulepath 4m22msearchpath0m Set the module search path to 4msearchpath24m. 4msearchpath24m is a comma separated list of directories to search for 1mXFree860m server modules. This option is only available when the server is run as root (i.e, with real-uid 0). 1m-noappendauto0m Disable appending the automatic XFree86 server configuration to a partial static configuration. 1m-nosilk 22mDisable Silken Mouse support. 1m-pixmap240m Set the internal pixmap format for depth 24 pixmaps to 24 bits per pixel. The default is usually 32 bits per pixel. There is normally little reason to use this option. Some client appli- cations don't like this pixmap format, even though it is a per- fectly legal format. This is equivalent to the 1mPixmap 22mXF86Con- fig(5) file option. 1m-pixmap320m Set the internal pixmap format for depth 24 pixmaps to 32 bits per pixel. This is usually the default. This is equivalent to the 1mPixmap 22mXF86Config(5) file option. 1m-pointer 4m22mpointer-name0m Use the XF86Config(5) file 1mInputDevice 22msection called 4mpointer-0m 4mname24m as the core pointer. This option is ignored when the 1mServerLayout 22msection specifies a core pointer. In the absence of both a ServerLayout section and this option, the first rele- vant 1mInputDevice 22msection is used for the core pointer. 1m-probeonly0m Causes the server to exit after the device probing stage. The XF86Config(5) file is still used when this option is given, so information that can be auto-detected should be commented out. 1m-quiet 22mSuppress most informational messages at startup. The verbosity level is set to zero. 1m-rgamma 4m22mvalue0m Set the red gamma correction. 4mvalue24m must be between 0.1 and 10. The default is 1.0. Not all drivers support this. See also the 1m-gamma22m, 1m-bgamma22m, and 1m-ggamma 22moptions. 1m-scanpci0m When this option is specified, the 1mXFree86 22mserver scans the PCI bus, and prints out some information about each device that was detected. See also scanpci(1) and pcitweak(1). 1m-screen 4m22mscreen-name0m Use the XF86Config(5) file 1mScreen 22msection called 4mscreen-name24m. By default the screens referenced by the default 1mServerLayout0m section are used, or the first 1mScreen 22msection when there are no 1mServerLayout 22msections. 1m-showconfig0m This is the same as the 1m-version 22moption, and is included for compatibility reasons. It may be removed in a future release, so the 1m-version 22moption should be used instead. 1m-weight 4m22mnnn0m Set RGB weighting at 16 bpp. The default is 565. This applies only to those drivers which support 16 bpp. 1m-verbose 22m[4mn24m] Sets the verbosity level for information printed on stderr. If the 4mn24m value isn't supplied, each occurrence of this option increments the verbosity level. When the 4mn24m value is supplied, the verbosity level is set to that value. The default ver- bosity level is 0. 1m-version0m Print out the server version, patchlevel, release date, the operating system/platform it was built on, and whether it includes module loader support. 1m-xf86config 4m22mfile0m Read the server configuration from 4mfile24m. This option will work for any file when the server is run as root (i.e, with real-uid 0), or for files relative to a directory in the config search path for all other users. 1mKEYBOARD0m The 1mXFree86 22mserver is normally configured to recognize various special combinations of key presses that instruct the server to perform some action, rather than just sending the key press event to a client appli- cation. The default XKEYBOARD keymap defines the key combinations listed below. The server also has these key combinations builtin to its event handler for cases where the XKEYBOARD extension is not being used. When using the XKEYBOARD extension, which key combinations per- form which actions is completely configurable. For more information about when the builtin event handler is used to recognize the special key combinations, see the documentation on the 1mHandleSpecialKeys 22moption in the XF86Config(5) man page. The special combinations of key presses recognized directly by 1mXFree860m are: 1mCtrl+Alt+Backspace0m Immediately kills the server -- no questions asked. This can be disabled with the 1mDontZap 22mXF86Config(5) file option. 1mCtrl+Alt+Keypad-Plus0m Change video mode to next one specified in the configuration file. This can be disabled with the 1mDontZoom 22mXF86Config(5) file option. 1mCtrl+Alt+Keypad-Minus0m Change video mode to previous one specified in the configura- tion file. This can be disabled with the 1mDontZoom 22mXF86Con- fig(5) file option. 1mCtrl+Alt+Keypad-Multiply0m Not treated specially by default. If the 1mAllowClosedownGrabs0m XF86Config(5) file option is specified, this key sequence kills clients with an active keyboard or mouse grab as well as killing any application that may have locked the server, nor- mally using the XGrabServer(3) Xlib function. 1mCtrl+Alt+Keypad-Divide0m Not treated specially by default. If the 1mAllowDeactivateGrabs0m XF86Config(5) file option is specified, this key sequence deac- tivates any active keyboard and mouse grabs. 1mCtrl+Alt+F1...F120m For BSD and Linux systems with virtual terminal support, these keystroke combinations are used to switch to virtual terminals 1 through 12, respectively. This can be disabled with the 1mDontVTSwitch 22mXF86Config(5) file option. 1mCONFIGURATION0m 1mXFree86 22mtypically uses a configuration file called 1mXF86Config 22mfor its initial setup. Refer to the XF86Config(5) manual page for information about the format of this file. Starting with version 4.4, 1mXFree86 22mhas a mechanism for automatically generating a built-in configuration at run-time when no 1mXF86Config 22mfile is present. The current version of this automatic configuration mecha- nism works in three ways. The first is via enhancements that have made many components of the 1mXF86Config 22mfile optional. This means that information that can be probed or reasonably deduced doesn't need to be specified explicitly, greatly reducing the amount of built-in configuration information that needs to be generated at run-time. The second is to use an external utility called getconfig(1), when available, to use meta-configuration information to generate a suitable configuration for the primary video device. The meta-configuration information can be updated to allow an existing installation to get the best out of new hardware or to work around bugs that are found post- release. The third is to have "safe" fallbacks for most configuration informa- tion. This maximises the likelihood that the 1mXFree86 22mserver will start up in some usable configuration even when information about the spe- cific hardware is not available. The automatic configuration support for XFree86 is work in progress. It is currently aimed at the most popular hardware and software plat- forms supported by XFree86. Enhancements are planned for future releases. 1mFILES0m The 1mXFree86 22mserver config file can be found in a range of locations. These are documented fully in the XF86Config(5) manual page. The most commonly used locations are shown here. 1m/etc/X11/XF86Config 22mServer configuration file. 1m/etc/X11/XF86Config-4 22mServer configuration file. 1m/etc/XF86Config 22mServer configuration file. 1m/usr/X11R6/etc/XF86Config 22mServer configuration file. 1m/usr/X11R6/lib/X11/XF86Config 22mServer configuration file. 1m/var/log/XFree86.4m22mn24m1m.log 22mServer log file for display 4mn24m. 1m/usr/X11R6/bin/* 22mClient binaries. 1m/usr/X11R6/include/* 22mHeader files. 1m/usr/X11R6/lib/* 22mLibraries. 1m/usr/X11R6/lib/X11/fonts/* 22mFonts. 1m/usr/X11R6/lib/X11/rgb.txt 22mColor names to RGB mapping. 1m/usr/X11R6/lib/X11/XErrorDB 22mClient error message database. 1m/usr/X11R6/lib/X11/app-defaults/*0m Client resource specifications. 1m/usr/X11R6/man/man?/* 22mManual pages. 1m/etc/X4m22mn24m1m.hosts 22mInitial access control list for display 4mn24m. 1mSEE ALSO0m X(7), Xserver(1), xdm(1), xinit(1), XF86Config(5), xf86config(1), xf86cfg(1), xvidtune(1), apm(4), ati(4), chips(4), cirrus(4), cyrix(4), fbdev(4), glide(4), glint(4), i128(4), i740(4), i810(4), imstt(4), mga(4), neomagic(4), nsc(4), nv(4), r128(4), rendition(4), s3virge(4), siliconmotion(4), sis(4), sunbw2(4), suncg14(4), suncg3(4), suncg6(4), sunffb(4), sunleo(4), suntcx(4), tdfx(4), tga(4), trident(4), tseng(4), v4l(4), vesa(4), vga(4), vmware(4), README 4m24m, RELNOTES 4m24m, README.mouse 4m24m, README.DRI 4m24m, Install 4m24m. 1mAUTHORS0m XFree86 has many contributors world wide. The names of most of them can be found in the documentation, CHANGELOG files in the source tree, and in the actual source code. The names of the contributors to the current release can be found in the release notes 4m24m. XFree86 was originally based on 4mX38624m 4m1.224m by Thomas Roell, which was contributed to the then X Consortium's X11R5 distribution by SGCS. The project that became XFree86 was originally founded in 1992 by David Dawes, Glenn Lai, Jim Tsillas and David Wexelblat. XFree86 was later integrated in the then X Consortium's X11R6 release by a group of dedicated XFree86 developers, including the following: Stuart Anderson, Doug Anson, Gertjan Akkerman, Mike Bernson, Robin Cutshaw, David Dawes, Marc Evans, Pascal Haible, Matthieu Herrb, Dirk Hohndel, David Holland, Alan Hourihane, Jeffrey Hsu, Glenn Lai, Ted Lemon, Rich Murphey, Hans Nasten, Mark Snitily, Randy Ter- bush, Jon Tombs, Kees Verstoep, Paul Vixie, Mark Weaver, David Wex- elblat, Philip Wheatley, Thomas Wolfram, Orest Zborowski. Contributors to XFree86 4.4.0 include: Roi a Torkilsheyggi, Dave Airlie, Andrew Aitchison, Marco Antonio Alvarez, Alexandr Andreev, Jack Angel, Eric Anholt, Ani, Juuso Ĺberg, Sergey Babkin, Alexey Baj, Bang Jun-Young, Uberto Barbini, Kyle Bateman, Matthew W. S. Bell, Vano Beridze, Hiroyuki Bessho, Andrew Bevitt, Christian Biere, Martin Birgmeier, Jakub Bogusz, Le Hong Boi, Paul Bolle, Charl Botha, Stanislav Brabec, Eric Branlund, Rob Braun, Peter Breitenlohner, Michael Breuer, Kevin Brosius, Frederick Bruckman, Oswald Buddenhagen, Nilgün Belma Bugüner, Julian Cable, Yukun Chen, Ping Cheng, Juliusz Chroboczek, Fred Clift, Alan Coopersmith, Martin Costabel, Alan Cox, Michel Dänzer, David Dawes, Leif Delgass, Richard Dengler, John Dennis, Thomas Dickey, Randy Dunlap, Chris Edgington, Paul Eggert, Paul Elliott, Emmanuel, Visanu Euarchukiati, Mike Fabian, Rik Faith, Brian Feld- man, Wu Jian Feng, Kevin P. Fleming, Jose Fonseca, Hugues Fournier, Miguel Freitas, Quentin Garnier, Břrre Gaup, Michael Geddes, Frank Giessler, Hansruedi Glauser, Wolfram Gloger, Alexander Gottwald, Guido Guenther, Ralf Habacker, Bruno Haible, Lindsay Haigh, John Harper, James Harris, Mike A. Harris, Bryan W. Headley, John Heasley, Thomas Hellström, Matthieu Herrb, Jonathan Hough, Alan Hourihane, Joel Ray Holveck, Harold L Hunt II, Ricardo Y. Igarashi, Mutsumi ISHIKAWA , Tsuyoshi ITO, Kean Johnston, Nicolas JOLY, Phil Jones, Roman Kagan, Theppitak Karoonboonyanan, Etsushi Kato, Koike Kazuhiko, Aidan Kehoe, Juergen Keil, Andreas Kies, Thomas Klausner, Mario Klebsch, Egmont Koblinger, Vlatko Kosturjak, Kusanagi Kouichi, Mel Kravitz, Peter Kunzmann, Nick Kurshev, Mashrab Kuva- tov, Marc La France, Radics Laszlo, Zarick Lau, Nolan Leake, Michel Lespinasse, Noah Levitt, Dave Love, H.J. Lu, Lubos Lunak, Sven Luther, Torrey T. Lyons, Calum Mackay, Paul Mackerras, Roland Mainz, Kevin Martin, Michal Maruska, Kensuke Matsuzaki, maxim, Stephen McCamant, Ferris McCormick, Luke Mewburn, Nicholas Miell, Robert Millan, Hisashi MIYASHITA, Gregory Mokhin, Patrik Mont- gomery, Joe Moss, Josselin Mouette, Frank Murphy, Reiko Nakajima, Paul Nasrat, Dan Nelson, Bastien Nocera, Alexandre Oliva, Hideki ONO, Peter Osterlund, Sergey V. Oudaltsov, Séamus Ó Ciardhuáin, Bob Paauwe, Paul Pacheco, Tom Pala, Ivan Pascal, T. M. Pederson, Earle F. Philhower III, Nils Philippsen, Manfred Pohler, Alexander Pohoyda, Alain Poirier, Arnaud Quette, Jim Radford, Dale Rahn, Lucas Correia Villa Real, René Rebe, Tyler Retzlaff, Sebastian Rit- tau, Tim Roberts, Alastair M. Robinson, Branden Robinson, Daniel Rock, Ian Romanick, Bernhard Rosenkraenzer, Mĺns Rullgĺrd, Andriy Rysin, Supphachoke Santiwichaya, Pablo Saratxaga, Matthias Scheler, Jens Schweikhardt, Danilo Segan, Shantonu Sen, Stas Sergeev, Jung- shik Shin, Nikola Smolenski, Andreas Stenglein, Paul Stewart, Alexander Stohr, Alan Strohm, Will Styles, James Su, Mike Sulivan, Ville Syrjala, Slava Sysoltsev, Akira TAGOH, Toshimitsu Tanaka, Akira Taniguchi, Owen Taylor, Neil Terry, Jonathan Thambidurai, John Tillman, Adam Tlalka, Linus Torvalds, Christian Tosta, Warren Turkal, Stephen J. Turnbull, Ted Unangst, Mike Urban, Simon Vallet, Thuraiappah Vaseeharan, Luc Verhaegen, Yann Vernier, Michail Vidi- assov, Sebastiano Vigna, Mark Vojkovich, Stephane Voltz, Boris Weissman, Keith Whitwell, Thomas Winischhofer, Eric Wittry, Kim Woelders, Roy Wood, Jason L. Wright, Joerg Wunsch, Chisato Yamauchi, Hui Yu. Contributors to XFree86 4.5.0 include: Szilveszter Adam, Tim Adye, Taneem Ahmed, Andrew Aitchison, Raoul Arranz, Zaeem Arshad, Dwayne Bailey, Ilyas Bakirov, Denis Barbier, Kyle Bateman, J. Scott Berg, Thomas Biege, Dmitry Bolkhovityanov, H Merijn Brand, Peter Breitenlohner, Benjamin Burke, Dale L Busacker, busmanus, Julian Cable, Mike Castle, David M. Clay, Philip Clayton, Alan Coopersmith, Ricardo Cruz, Michel Dänzer, J. D. Darling, David Dawes, Michael Dawes, Rafael Ávila de Espíndola, Rick De Laet, Josip Deanovic, Angelus Dei, Laurent Deniel, Thomas Dickey, Stefan Dirsch, Charles Dobson, DRI Project, Emmanuel Dreyfus, Boris Dusek, Georgina O. Economou, Egbert Eich, Bernd Ernesti, Chris Evans, Rik Faith, Adrian Fiechter, Matthew Fischer, FreeType Team, Terry R. Frienrichsen, Christopher Fynn, Hubert Gburzynski, Nicolas George, Frank Giessler, Fred Gleason, Dmitry Golubev, Alexander Gottwald, Herbert Graeber, Miroslav Halas, John Harper, Harshula, John Heasley, Matthieu Herrb, David Holl, Alex Holland, Peng Hongbo, Alan Hourihane, Harold L Hunt II, Alan Iwi, Timur Jamakeev, Paul Jarc, Kean Johnston, Nicolas Joly, Mark Kandianis, Kaleb Keithley, Chamath Keppitiyagama, Jung-uk Kim, Satoshi Kimura, Michael Knud- sen, Vlatko Kosturjak, Alexei Kosut, Anton Kovalenko, Joachim Kue- bart, Marc La France, David Laight, Zarick Lau, Pierre Lalet, Michael Lampe, Lanka Linux User Group, Nolan Leake, Werner Lemberg, Dejan Lesjak, Noah Levitt, Greg Lewis, Bernhard R Link, Jonas Lund, S. Lussos, Torrey T. Lyons, Roland Mainz, N Marci, Kevin Martin, Stephen McCamant, Mesa Developers, Luke Mewburn, Petr Mladek, Bram Moolenaar, Steve Murphy, Ishikawa MUTSUMI, Radu Octavian, Lee Olsen, Greg Parker, Ivan Pascal, Alexander E. Patrakov, Mike Pechkin, Soós Péter, Zvezdan Petkovic, Alexander Pohoyda, Xie Qian, Bill Randle, Adam J. Richter, Tim Roberts, Bernhard Rosenkraenzer, Andreas Rüden, Steve Rumble, Oleg Safiullin, Ty Sarna, Leo Sav- ernik, Barry Scott, Shantonu Sen, Yu Shao, Andreas Schwab, Matthias Scheler, Dan Shearer, Michael Shell, Paul Shupak, Alexander Stohr, Marius Strobl, Mikko Markus Torni, Jess Thrysoee, Izumi Tsutsui, Tungsten Graphics, Ryan Underwood, Tristan Van Berkom, Michael van Elst, Phillip Vandry, Roman Vasylyev, Luc Verhaegen, Rodion Vshevtsov, Mark Vojkovich, Edi Werner, Keith Whitwell, Scot Wilcoxon, Dave Williss, Thomas Winischhofer, Kuang-che Wu, X-Oz Technologies, Chisato Yamauchi, Michael Yaroslavtsev, David Yerger, Su Yong, Hui Yu, Sagi Zeevi, Christian Zietz. Contributors to XFree86 4.6.0 include: ASPEED Technologies, Andrew Aitchison, James Ascroft-Leigh, Étienne Bersac, Peter Breitenlohner, Terry Chang, Y. C. Chen, Jeff Chua, James Cloos, Alan Coopersmith, Miguel González Cuadrado, David Dawes, Thomas Dickey, Stefan Dirsch, Bernd Ernesti, Jordan Frank, Will L G, Frank Giessler, Thorsten Glaser, Damian Janusz Gruszka, Lukas Hejtmanek, Evil Mr Henry, Jens Herden, Alan Hourihane, Nico- las Joly, Bang Jun-Young, Alexander Kabaev, Satoshi Kimura, Milos Komarcevic, Marc La France, Dejan Lesjak, Khong Jye Liew, Jong Lin, Michael Lorenz, Michael Macallan, Michal Maruska, Luke Mewburn, Timothy Musson, Newsh, Takaaki Nomura, Ivan Pascal, Bob Peterson, Pierre, Aaron Plattner, Alexander Pohoyda, Jeremy C. Reed, Conrad Schuler, Bruno Schwander, Olaf Seibert, Aaron Solochek, Helmar Spangenberg, Ken Stailey, Tobias Stoeckmann, Tungsten Graphics, James Richard Tyrer, Staffan Ulfberg, Denis Vlasenko, Mark Vojkovich, Tom Williams, Dave Williss, X-Oz Technologies, XGI, Christos Zoulas. XFree86 source is available from the FTP server 4m24m, and from the XFree86 CVS server 4m24m. Documentation and other information can be found from the XFree86 web site 4m24m. 1mLEGAL0m 1mXFree86 22mis copyright software, provided under licenses that permit mod- ification and redistribution in source and binary form without fee. Portions of 1mXFree86 22mare copyright by The XFree86 Project, Inc. and numerous authors and contributors from around the world. Licensing information can be found at 4m24m. Refer to the source code for specific copyright notices. 1mXFree86(R) 22mis a registered trademark of The XFree86 Project, Inc. XF86Config(5) XF86Config(5) 1mNAME0m XF86Config - Configuration File for XFree86 1mINTRODUCTION0m 1mXFree86 22msupports several mechanisms for supplying/obtaining configura- tion and run-time parameters: command line options, environment vari- ables, the XF86Config configuration file, auto-detection, and fallback defaults. When the same information is supplied in more than one way, the highest precedence mechanism is used. The list of mechanisms is ordered from highest precedence to lowest. Note that not all parame- ters can be supplied via all methods. The available command line options and environment variables (and some defaults) are described in the Xserver(1) and XFree86(1) manual pages. Most configuration file parameters, with their defaults, are described below. Driver and mod- ule specific configuration parameters are described in the relevant driver or module manual page. Starting with version 4.4, 1mXFree86 22mhas support for generating a usable configuration at run-time when no 1mXF86Config 22mfile is provided. The initial version of this automatic configuration support is targeted at the most popular hardware and software platforms supported by XFree86. Some details about how this works can be found in the XFree86(1) and getconfig(1) manual pages. Starting with version 4.5, it is possible for this automatically gener- ated configuration to supplement a partial static configuration. The partial static configuration can be used to provide non-default config- uration details for things that are not currently handled by the auto- matic configuration mechanism. 1mDESCRIPTION0m 1mXFree86 22muses a configuration file called 1mXF86Config 22mfor its initial setup. This configuration file is searched for in the following places when the server is started as a normal user: 4m/etc/X11/24m 4m/usr/X11R6/etc/X11/24m 4m/etc/X11/24m1m$XF86CONFIG0m 4m/usr/X11R6/etc/X11/24m1m$XF86CONFIG0m 4m/etc/X11/XF86Config-40m 4m/etc/X11/XF86Config0m 4m/etc/XF86Config0m 4m/usr/X11R6/etc/X11/XF86Config.24m 4m/usr/X11R6/etc/X11/XF86Config-40m 4m/usr/X11R6/etc/X11/XF86Config0m 4m/usr/X11R6/lib/X11/XF86Config.24m 4m/usr/X11R6/lib/X11/XF86Config-40m 4m/usr/X11R6/lib/X11/XF86Config0m where 4m24m is a relative path (with no ".." components) specified with the 1m-xf86config 22mcommand line option, 1m$XF86CONFIG 22mis the relative path (with no ".." components) specified by that environment variable, and 4m24m is the machine's hostname as reported by gethostname(3). When the XFree86 server is started by the "root" user, the config file search locations are as follows: 4m/etc/X11/24m 4m/usr/X11R6/etc/X11/24m 1m$XF86CONFIG0m 4m/etc/X11/24m1m$XF86CONFIG0m 4m/usr/X11R6/etc/X11/24m1m$XF86CONFIG0m 1m$HOME4m22m/XF86Config0m 4m/etc/X11/XF86Config-40m 4m/etc/X11/XF86Config0m 4m/etc/XF86Config0m 4m/usr/X11R6/etc/X11/XF86Config.24m 4m/usr/X11R6/etc/X11/XF86Config-40m 4m/usr/X11R6/etc/X11/XF86Config0m 4m/usr/X11R6/lib/X11/XF86Config.24m 4m/usr/X11R6/lib/X11/XF86Config-40m 4m/usr/X11R6/lib/X11/XF86Config0m where 4m24m is the path specified with the 1m-xf86config 22mcommand line option (which may be absolute or relative), 1m$XF86CONFIG 22mis the path specified by that environment variable (absolute or relative), 1m$HOME 22mis the path specified by that environment variable (usually the home directory), and 4m24m is the machine's hostname as reported by gethostname(3). The 1mXF86Config 22mfile is composed of a number of sections which may be present in any order. Each section has the form: 1mSection "4m22mSectionName24m1m"0m 4mSectionEntry0m ... 1mEndSection0m The section names are: 1mFiles 22mFile pathnames 1mServerFlags 22mServer flags 1mModule 22mDynamic module loading 1mInputDevice 22mInput device description 1mDevice 22mGraphics device description 1mVideoAdaptor 22mXv video adaptor description 1mMonitor 22mMonitor description 1mModes 22mVideo modes descriptions 1mScreen 22mScreen configuration 1mServerLayout 22mOverall layout 1mDRI 22mDRI-specific configuration 1mVendor 22mVendor-specific configuration The following obsolete section names are still recognised for compati- bility purposes. In new config files, the 1mInputDevice 22msection should be used instead. 1mKeyboard 22mKeyboard configuration 1mPointer 22mPointer/mouse configuration The old 1mXInput 22msection is no longer recognised. The 1mServerLayout 22msections are at the highest level. They bind together the input and output devices that will be used in a session. The input devices are described in the 1mInputDevice 22msections. Output devices usu- ally consist of multiple independent components (e.g., and graphics board and a monitor). These multiple components are bound together in the 1mScreen 22msections, and it is these that are referenced by the 1mServer-0m 1mLayout 22msection. Each 1mScreen 22msection binds together a graphics board and a monitor. The graphics boards are described in the 1mDevice 22msec- tions, and the monitors are described in the 1mMonitor 22msections. Config file keywords are case-insensitive, and "_" characters are ignored. Most strings (including 1mOption 22mnames) are also case-insensi- tive, and insensitive to white space and "_" characters. Each config file entry usually takes up a single line in the file. They consist of a keyword, which is possibly followed by one or more arguments, with the number and types of the arguments depending on the keyword. The argument types are: 1mInteger 22man integer number in decimal, hex or octal 1mReal 22ma floating point number 1mString 22ma string enclosed in double quote marks (") Note: hex integer values must be prefixed with "0x", and octal values with "0". A special keyword called 1mOption 22mmay be used to provide free-form data to various components of the server. The 1mOption 22mkeyword takes either one or two string arguments. The first is the option name, and the optional second argument is the option value. Some commonly used option value types include: 1mInteger 22man integer number in decimal, hex or octal 1mReal 22ma floating point number 1mString 22ma sequence of characters 1mBoolean 22ma boolean value (see below) 1mFrequency 22ma frequency value (see below) Note that 4mall24m 1mOption 22mvalues, not just strings, must be enclosed in quotes. Boolean options may optionally have a value specified. When no value is specified, the option's value is 1mTRUE22m. The following boolean option values are recognised as 1mTRUE22m: 1m122m, 1mon22m, 1mtrue22m, 1myes0m and the following boolean option values are recognised as 1mFALSE22m: 1m022m, 1moff22m, 1mfalse22m, 1mno0m If an option name is prefixed with "1mNo22m", then the option value is negated. Example: the following option entries are equivalent: 1mOption "Accel" "Off"0m 1mOption "NoAccel"0m 1mOption "NoAccel" "On"0m 1mOption "Accel" "false"0m 1mOption "Accel" "no"0m Frequency option values consist of a real number that is optionally followed by one of the following frequency units: 1mHz22m, 1mk22m, 1mkHz22m, 1mM22m, 1mMHz0m When the unit name is omitted, the correct units will be determined from the value and the expectations of the appropriate range of the value. It is recommended that the units always be specified when using frequency option values to avoid any errors in determining the value. 1mFILES SECTION0m The config file may have multiple 1mFiles 22msections. These are used to specify some path names required by the server. Earlier 1mFiles 22msections have priority over later sections. This means that a path name speci- fied in a 1mFiles 22msection cannot be overridden by a later 1mFiles 22msection (this behaviour may change in the future). Some of these paths can also be set from the command line (see Xserver(1) and XFree86(1)). The command line settings override the values specified in the config file. The 1mFiles 22msection is optional, as are all of the entries that may appear in it. The entries that can appear in this section are: 1mIdentifier "4m22mname24m1m"0m specifies an optional identifying name for the 1mFiles 22msection. 1mFontPath "4m22mpath24m1m"0m sets the search path for fonts. This path is a comma separated list of font path elements which the XFree86 server searches for font databases. Multiple 1mFontPath 22mentries may be specified, and they will be concatenated to build up the fontpath used by the server. Font path elements may be either absolute directory paths, or a font server identifier. Font server identifiers have the form: 4m24m/4m24m:4m0m where 4m24m is the transport type to use to connect to the font server (e.g., 1munix 22mfor UNIX-domain sockets or 1mtcp 22mfor a TCP/IP connection), 4m24m is the hostname of the machine running the font server, and 4m24m is the port number that the font server is listening on (usually 7100). When this entry is not specified in the config file, the server falls back to the compiled-in default font path, which contains the following font path elements: 4m/usr/X11R6/lib/X11/fonts/misc/0m 4m/usr/X11R6/lib/X11/fonts/Speedo/0m 4m/usr/X11R6/lib/X11/fonts/Type1/0m 4m/usr/X11R6/lib/X11/fonts/CID/0m 4m/usr/X11R6/lib/X11/fonts/75dpi/0m 4m/usr/X11R6/lib/X11/fonts/100dpi/0m The recommended font path contains the following font path ele- ments: 4m/usr/X11R6/lib/X11/fonts/local/0m 4m/usr/X11R6/lib/X11/fonts/misc/0m 4m/usr/X11R6/lib/X11/fonts/75dpi/:unscaled0m 4m/usr/X11R6/lib/X11/fonts/100dpi/:unscaled0m 4m/usr/X11R6/lib/X11/fonts/Type1/0m 4m/usr/X11R6/lib/X11/fonts/CID/0m 4m/usr/X11R6/lib/X11/fonts/Speedo/0m 4m/usr/X11R6/lib/X11/fonts/75dpi/0m 4m/usr/X11R6/lib/X11/fonts/100dpi/0m Font path elements that are found to be invalid are removed from the font path when the server starts up. 1mRGBPath "4m22mpath24m1m"0m sets the path name for the RGB color database. When this entry is not specified in the config file, the server falls back to the compiled-in default RGB path, which is: 4m/usr/X11R6/lib/X11/rgb0m Note that an implicit 4m.txt24m is added to this path if the server was com- piled to use text rather than binary format RGB color databases. 1mModulePath "4m22mpath24m1m"0m sets the search path for loadable XFree86 server modules. This path is a comma separated list of directories which the XFree86 server searches for loadable modules loading in the order speci- fied. Multiple 1mModulePath 22mentries may be specified, and they will be concatenated to build the module search path used by the server. 1mOptions0m Option flags may be specified in 1mFiles 22msections. 1mSERVERFLAGS SECTION0m The config file may have multiple 1mServerFlags 22msections. These are used to specify some global XFree86 server options. Earlier 1mServerFlags0m sections have priority over later sections. This means that an option specified in a 1mServerFlags 22msection cannot be overridden by a later 1mServerFlags 22msection. Except for the 1mIdentifier 22mentry, all of the entries in this section are 1mOptions22m, although for compatibility pur- poses some of the old style entries are still recognised. Those old style entries are not documented here, and using them is discouraged. The 1mServerFlags 22msection is optional, as are the entries that may be specified in it. 1mOptions 22mspecified in this section (with the exception of the 1m"Default-0m 1mServerLayout" Option22m) may be overridden by 1mOptions 22mspecified in the active 1mServerLayout 22msection. Options with command line equivalents are overridden when their command line equivalent is used. Entries recog- nised by this section are: 1mIdentifier "4m22mname24m1m"0m specifies an optional identifying name for the 1mServerFlags 22msec- tion. 1mOption "DefaultServerLayout" "4m22mlayout-id24m1m"0m This specifies the default 1mServerLayout 22msection to use in the absence of the 1m-layout 22mcommand line option. 1mOption "NoTrapSignals" "4m22mboolean24m1m"0m This prevents the XFree86 server from trapping a range of unex- pected fatal signals and exiting cleanly. Instead, the XFree86 server will die and drop core where the fault occurred. The default behaviour is for the XFree86 server to exit cleanly, but still drop a core file. In general you never want to use this option unless you are debugging an XFree86 server problem and know how to deal with the consequences. 1mOption "DontVTSwitch" "4m22mboolean24m1m"0m This disallows the use of the 1mCtrl+Alt+F4m22mn24m sequence (where F4mn0m refers to one of the numbered function keys). That sequence is normally used to switch to another "virtual terminal" on operat- ing systems that have this feature. When this option is enabled, that key sequence has no special meaning and is passed to clients. Default: off. 1mOption "DontZap" "4m22mboolean24m1m"0m This disallows the use of the 1mCtrl+Alt+Backspace 22msequence. That sequence is normally used to terminate the XFree86 server. When this option is enabled, that key sequence has no special meaning and is passed to clients. Default: off. 1mOption "DontZoom" "4m22mboolean24m1m"0m This disallows the use of the 1mCtrl+Alt+Keypad-Plus 22mand 1mCtrl+Alt+Keypad-Minus 22msequences. These sequences allows you to switch between video modes. When this option is enabled, those key sequences have no special meaning and are passed to clients. Default: off. 1mOption "DisableVidModeExtension" "4m22mboolean24m1m"0m This disables the parts of the VidMode extension used by the xvidtune client that can be used to change the video modes. Default: the VidMode extension is enabled. 1mOption "AllowNonLocalXvidtune" "4m22mboolean24m1m"0m This allows the xvidtune client (and other clients that use the VidMode extension) to connect from another host. Default: off. 1mOption "DisableModInDev" "4m22mboolean24m1m"0m This disables the parts of the XFree86-Misc extension that can be used to modify the input device settings dynamically. Default: that functionality is enabled. 1mOption "AllowNonLocalModInDev" "4m22mboolean24m1m"0m This allows a client to connect from another host and change keyboard and mouse settings in the running server. Default: off. 1mOption "AllowMouseOpenFail" "4m22mboolean24m1m"0m This allows the server to start up even if the mouse device can't be opened/initialised. Default: false. 1mOption "VTInit" "4m22mcommand24m1m"0m Runs 4mcommand24m after the VT used by the server has been opened. The command string is passed to "/bin/sh -c", and is run with the real user's id with stdin and stdout set to the VT. The purpose of this option is to allow system dependent VT initiali- sation commands to be run. This option should rarely be needed. Default: not set. 1mOption "VTSysReq" "4m22mboolean24m1m"0m enables the SYSV-style VT switch sequence for non-SYSV systems which support VT switching. This sequence is 1mAlt-SysRq 22mfollowed by a function key (1mFn22m). This prevents the XFree86 server trap- ping the keys used for the default VT switch sequence, which means that clients can access them. Default: off. 1mOption "XkbDisable" "4m22mboolean24m1m"0m disable/enable the XKEYBOARD extension. The -kb command line option overrides this config file option. Default: XKB is enabled. 1mOption "BlankTime" "4m22mtime24m1m"0m sets the inactivity timeout for the blanking phase of the screensaver. 4mtime24m is in minutes. This is equivalent to the XFree86 server's `-s' flag, and the value can be changed at run- time with xset(1). Default: 10 minutes. 1mOption "StandbyTime" "4m22mtime24m1m"0m sets the inactivity timeout for the "standby" phase of DPMS mode. 4mtime24m is in minutes, and the value can be changed at run- time with xset(1). Default: 20 minutes. This is only suitable for VESA DPMS compatible monitors, and may not be supported by all video drivers. It is only enabled for screens that have the 1m"DPMS" 22moption set (see the MONITOR section below). 1mOption "SuspendTime" "4m22mtime24m1m"0m sets the inactivity timeout for the "suspend" phase of DPMS mode. 4mtime24m is in minutes, and the value can be changed at run- time with xset(1). Default: 30 minutes. This is only suitable for VESA DPMS compatible monitors, and may not be supported by all video drivers. It is only enabled for screens that have the 1m"DPMS" 22moption set (see the MONITOR section below). 1mOption "OffTime" "4m22mtime24m1m"0m sets the inactivity timeout for the "off" phase of DPMS mode. 4mtime24m is in minutes, and the value can be changed at run-time with xset(1). Default: 40 minutes. This is only suitable for VESA DPMS compatible monitors, and may not be supported by all video drivers. It is only enabled for screens that have the 1m"DPMS" 22moption set (see the MONITOR section below). 1mOption "Pixmap" "4m22mbpp24m1m"0m This sets the pixmap format to use for depth 24. Allowed values for 4mbpp24m are 24 and 32. Default: 32 unless driver constraints don't allow this (which is rare). Note: some clients don't behave well when this value is set to 24. 1mOption "PC98" "4m22mboolean24m1m"0m Specify that the machine is a Japanese PC-98 machine. This should not be enabled for anything other than the Japanese-spe- cific PC-98 architecture. Default: auto-detected. 1mOption "Log" "4m22mlogflag24m1m"0m This option enables special handling for log files that may be useful when debugging certain types of problems. The values for 4mlogflag24m are 1mFlush 22mand 1mSync22m. 1mFlush 22mcauses the log file buffer to be flushed after each write. 1mSync 22mcauses the log file buffer to be flushed and the file data to be written to the disk after each write. The default is for neither of these flags to be enabled. Enabling these flags during normal operation may degrade performance and/or lengthen startup time. 1mOption "NoPM" "4m22mboolean24m1m"0m Disables something to do with power management events. Default: PM enabled on platforms that support it. 1mOption "Xinerama" "4m22mboolean24m1m"0m enable or disable XINERAMA extension. Default is disabled. 1mOption "AllowDeactivateGrabs" "4m22mboolean24m1m"0m This option enables the use of the 1mCtrl+Alt+Keypad-Divide 22mkey sequence to deactivate any active keyboard and mouse grabs. Default: off. 1mOption "AllowClosedownGrabs" "4m22mboolean24m1m"0m This option enables the use of the 1mCtrl+Alt+Keypad-Multiply 22mkey sequence to kill clients with an active keyboard or mouse grab as well as killing any application that may have locked the server, normally using the XGrabServer(3) Xlib function. Default: off. Note that the options 1mAllowDeactivateGrabs 22mand 1mAllowClosedown-0m 1mGrabs 22mwill allow users to remove the grab used by screen saver/locker programs. An API was written to such cases. If you enable this option, make sure your screen saver/locker is updated. 1mOption "HandleSpecialKeys" "4m22mwhen24m1m"0m This option controls when the server uses the builtin handler to process special key combinations (such as 1mCtrl+Alt+Backspace22m). Normally the XKEYBOARD extension keymaps will provide mappings for each of the special key combinations, so the builtin handler is not needed unless the XKEYBOARD extension is disabled. The value of 4mwhen24m can be 1mAlways22m, 1mNever22m, or 1mWhenNeeded22m. Default: Use the builtin handler only if needed. The server will scan the keymap for a mapping to the 1mTerminate 22maction and, if found, use XKEYBOARD for processing actions, otherwise the builtin handler will be used. 1mMODULE SECTION0m The config file may have multiple 1mModule 22msection. They are used to specify additional XFree86 server modules to be loaded. This section is ignored when the XFree86 server is built in static form. The types of modules normally loaded in this section are XFree86 server extension modules, and font rasteriser modules. Most other module types are loaded automatically when they are needed via other mechanisms. The 1mModule 22msection is optional, as are all of the entries that may be spec- ified in it. 1mIdentifier "4m22mname24m1m"0m specifies an optional identifying name for the 1mModule 22msection. 1mOptions0m Option flags may be specified in 1mModule 22msections. Entries that identify which modules to pre-load may be in two forms. The first and most commonly used form is an entry that uses the 1mLoad0m keyword, as described here: 1mLoad "4m22mmodulename24m1m"0m This instructs the server to load the module called 4mmodulename24m. The module name given should be the module's standard name, not the module file name. The standard name is case-sensitive, and does not include the "lib" prefix, or the ".a", ".o", or ".so" suffixes. Example: the Type 1 font rasteriser can be loaded with the fol- lowing entry: 1mLoad "type1"0m The second form of entry is a 1mSubSection, 22mwith the subsection name being the module name, and the contents of the 1mSubSection 22mbeing 1mOptions0m that are passed to the module when it is loaded. Example: the extmod module (which contains a miscellaneous group of server extensions) can be loaded, with the XFree86-DGA extension dis- abled by using the following entry: 1mSubSection "extmod"0m 1mOption "omit XFree86-DGA"0m 1mEndSubSection0m Modules are searched for in each directory specified in the 1mModulePath0m search path, and in the drivers, input, extensions, fonts, and internal subdirectories of each of those directories. In addition to this, operating system specific subdirectories of all the above are searched first if they exist. To see what font and extension modules are available, check the con- tents of the following directories: /usr/X11R6/lib/modules/fonts /usr/X11R6/lib/modules/extensions The "bitmap" font modules is loaded automatically. It is recommended that at very least the "extmod" extension module be loaded. If it isn't some commonly used server extensions (like the SHAPE extension) will not be available. 1mINPUTDEVICE SECTION0m The config file may have multiple 1mInputDevice 22msections. There will normally be at least two: one for the core (primary) keyboard, and one of the core pointer. If either of these two is missing, a default con- figuration for the missing ones will be used. Currently the default configuration may not work as expected on all platforms. 1mInputDevice 22msections have the following format: 1mSection "InputDevice"0m 1mIdentifier "4m22mname24m1m"0m 1mDriver "4m22minputdriver24m1m"0m 4moptions0m 4m...0m 1mEndSection0m The 1mIdentifier 22mand 1mDriver 22mentries are required in all 1mInputDevice 22msec- tions. All other entries are optional. The 1mIdentifier 22mentry specifies the unique name for this input device. The 1mDriver 22mentry specifies the name of the driver to use for this input device. When using the loadable server, the input driver module "4minputdriver24m" will be loaded for each active 1mInputDevice 22msection. An 1mInputDevice 22msection is considered active if it is referenced by an active 1mServerLayout 22msection, if it is referenced by the 1m-keyboard 22mor 1m-pointer 22mcommand line options, or if it is selected implicitly as the core pointer or keyboard device in the absence of such explicit refer- ences. The most commonly used input drivers are "keyboard" and "mouse". In the absence of an explicitly specified core input device, the first 1mInputDevice 22mmarked as 1mCorePointer 22m(or 1mCoreKeyboard22m) is used. If there is no match there, the first 1mInputDevice 22mthat uses the "mouse" (or "keyboard" or "kbd") driver is used. The final fallback is to use built-in default configurations. 1mInputDevice 22msections recognise some driver-independent 1mOptions22m, which are described here. See the individual input driver manual pages for a description of the device-specific options. 1mOption "CorePointer"0m When this is set, the input device is installed as the core (primary) pointer device. There must be exactly one core pointer. If this option is not set here, or in the 1mServerLayout0m section, or from the 1m-pointer 22mcommand line option, then the first input device that is capable of being used as a core pointer will be selected as the core pointer. This option is implicitly set when the obsolete 1mPointer 22msection is used. 1mOption "CoreKeyboard"0m When this is set, the input device is to be installed as the core (primary) keyboard device. There must be exactly one core keyboard. If this option is not set here, in the 1mServerLayout0m section, or from the 1m-keyboard 22mcommand line option, then the first input device that is capable of being used as a core key- board will be selected as the core keyboard. This option is implicitly set when the obsolete 1mKeyboard 22msection is used. 1mOption "AlwaysCore" "4m22mboolean24m1m"0m 1mOption "SendCoreEvents" "4m22mboolean24m1m"0m Both of these options are equivalent, and when enabled cause the input device to always report core events. This can be used, for example, to allow an additional pointer device to generate core pointer events (like moving the cursor, etc). 1mOption "HistorySize" "4m22mnumber24m1m"0m Sets the motion history size. Default: 0. 1mOption "SendDragEvents" "4m22mboolean24m1m"0m ??? 1mDEVICE SECTION0m The config file may have multiple 1mDevice 22msections. There must be at least one, for the video card being used. 1mDevice 22msections have the following format: 1mSection "Device"0m 1mIdentifier "4m22mname24m1m"0m 1mDriver "4m22mdriver24m1m"0m 4mentries0m 4m...0m 1mEndSection0m The 1mIdentifier 22mand 1mDriver 22mentries are required in all 1mDevice 22msections. All other entries are optional. The 1mIdentifier 22mentry specifies the unique name for this graphics device. The 1mDriver 22mentry specifies the name of the driver to use for this graphics device. When using the loadable server, the driver mod- ule "4mdriver24m" will be loaded for each active 1mDevice 22msection. A 1mDevice0m section is considered active if it is referenced by an active 1mScreen0m section. 1mDevice 22msections recognise some driver-independent entries and 1mOptions22m, which are described here. Not all drivers make use of these driver- independent entries, and many of those that do don't require them to be specified because the information is auto-detected. See the individual graphics driver manual pages for further information about this, and for a description of the device-specific options. Note that most of the 1mOptions 22mlisted here (but not the other entries) may be specified in the 1mScreen 22msection instead of here in the 1mDevice 22msection. 1mBusID "4m22mbus-id24m1m"0m This specifies the bus location of the graphics card. For PCI/AGP cards, the 4mbus-id24m string has the form 1mPCI:4m22mbus24m1m:4m22mdevice24m1m:4m22mfunction24m (e.g., "PCI:1:0:0" might be appropriate for an AGP card). This field is usually optional in single-head configurations when using the primary graphics card. In multi- head configurations, or when using a secondary graphics card in a single-head configuration, this entry is mandatory. Its main purpose is to make an unambiguous connection between the device section and the hardware it is representing. This information can usually be found by running the XFree86 server with the 1m-scanpci 22mcommand line option. 1mScreen 4m22mnumber0m This option is mandatory for cards where a single PCI entity can drive more than one display (i.e., multiple CRTCs sharing a sin- gle graphics accelerator and video memory). One 1mDevice 22msection is required for each head, and this parameter determines which head each of the 1mDevice 22msections applies to. The legal values of 4mnumber24m range from 0 to one less than the total number of heads per entity. Most drivers require that the primary screen (0) be present. 1mChipset "4m22mchipset24m1m"0m This usually optional entry specifies the chipset used on the graphics board. In most cases this entry is not required because the drivers will probe the hardware to determine the chipset type. Don't specify it unless the driver-specific docu- mentation recommends that you do. 1mRamdac "4m22mramdac-type24m1m"0m This optional entry specifies the type of RAMDAC used on the graphics board. This is only used by a few of the drivers, and in most cases it is not required because the drivers will probe the hardware to determine the RAMDAC type where possible. Don't specify it unless the driver-specific documentation recommends that you do. 1mDacSpeed 4m22mspeed0m 1mDacSpeed 4m22mspeed-824m 4mspeed-1624m 4mspeed-2424m 4mspeed-320m This optional entry specifies the RAMDAC speed rating (which is usually printed on the RAMDAC chip). The speed is in MHz. When one value is given, it applies to all framebuffer pixel sizes. When multiple values are give, they apply to the framebuffer pixel sizes 8, 16, 24 and 32 respectively. This is not used by many drivers, and only needs to be specified when the speed rat- ing of the RAMDAC is different from the defaults built in to driver, or when the driver can't auto-detect the correct defaults. Don't specify it unless the driver-specific documen- tation recommends that you do. 1mClocks 4m22mclock24m 4m...0m specifies the pixel that are on your graphics board. The clocks are in MHz, and may be specified as a floating point number. The value is stored internally to the nearest kHz. The ordering of the clocks is important. It must match the order in which they are selected on the graphics board. Multiple 1mClocks 22mlines may be specified, and each is concatenated to form the list. Most drivers do not use this entry, and it is only required for some older boards with non-programmable clocks. Don't specify this entry unless the driver-specific documentation explicitly recommends that you do. 1mClockChip "4m22mclockchip-type24m1m"0m This optional entry is used to specify the clock chip type on graphics boards which have a programmable clock generator. Only a few XFree86 drivers support programmable clock chips. For details, see the appropriate driver manual page. 1mVideoRam 4m22mmem0m This optional entry specifies the amount of video ram that is installed on the graphics board. This is measured in kBytes. In most cases this is not required because the XFree86 server probes the graphics board to determine this quantity. The driver-specific documentation should indicate when it might be needed. 1mBiosBase 4m22mbaseaddress0m This optional entry specifies the base address of the video BIOS for the VGA board. This address is normally auto-detected, and should only be specified if the driver-specific documentation recommends it. 1mMemBase 4m22mbaseaddress0m This optional entry specifies the memory base address of a graphics board's linear frame buffer. This entry is not used by many drivers, and it should only be specified if the driver-spe- cific documentation recommends it. 1mIOBase 4m22mbaseaddress0m This optional entry specifies the IO base address. This entry is not used by many drivers, and it should only be specified if the driver-specific documentation recommends it. 1mChipID 4m22mid0m This optional entry specifies a numerical ID representing the chip type. For PCI cards, it is usually the device ID. This can be used to override the auto-detection, but that should only be done when the driver-specific documentation recommends it. 1mChipRev 4m22mrev0m This optional entry specifies the chip revision number. This can be used to override the auto-detection, but that should only be done when the driver-specific documentation recommends it. 1mTextClockFreq 4m22mfreq0m This optional entry specifies the pixel clock frequency that is used for the regular text mode. The frequency is specified in MHz. This is rarely used. 1mIRQ 4m22minterrupt-number0m This optional entry allows an interrupt number to be specified. 1mOptions0m Option flags may be specified in the 1mDevice 22msections. These include driver-specific options and driver-independent options. The former are described in the driver-specific documentation. Some of the latter are described below in the section about the 1mScreen 22msection, and they may also be included here. 1mVIDEOADAPTOR SECTION0m The config file may have multiple 1mVideoAdaptor 22msections, which may be referenced from 1mScreen 22msections. 1mVideoAdaptor 22msections have the following format: 1mSection "VideoAdaptor"0m 1mIdentifier "4m22mname24m1m"0m 4mentries0m 4m...0m 1mSubSection "Port"0m 4mentries0m 4m...0m 1mEndSubSection0m 4m...0m 1mEndSection0m The only mandatory entry in a 1mVideoAdaptor 22msection is the 1mIdentifier22m. Other entries include: 1mVendorName "4m22mvendor24m1m"0m This optional entry specifies the video adaptor's manufacturer. 1mBoardName "4m22mmodel24m1m"0m This optional entry specifies the video adaptor's model name. 1mOptions0m may be specified in the 1mVideoAdaptor 22msection. The 1mPort SubSections 22mprovide information about video adaptor ports. Each of these may contain an 1mIdentifier 22mentry and 1mOptions22m. 1mMONITOR SECTION0m The config file may have multiple 1mMonitor 22msections. There should nor- mally be at least one, for the monitor being used, but a default con- figuration will be created when one isn't specified. 1mMonitor 22msections have the following format: 1mSection "Monitor"0m 1mIdentifier "4m22mname24m1m"0m 4mentries0m 4m...0m 1mEndSection0m The only mandatory entry in a 1mMonitor 22msection is the 1mIdentifier 22mentry. The 1mIdentifier 22mentry specifies the unique name for this monitor. The 1mMonitor 22msection provides information about the specifications of the monitor, monitor-specific 1mOptions22m, and information about the video modes to use with the monitor. Specifying video modes is optional because the server now has a built-in list of VESA standard modes. When modes are specified explicitly in the 1mMonitor 22msection (with the 1mModes22m, 1mModeLine22m, or 1mUseModes 22mkeywords), built-in modes with the same names are not included. Built-in modes with different names are, how- ever, still implicitly included. The entries that may be used in 1mMonitor 22msections are described below. 1mVendorName "4m22mvendor24m1m"0m This optional entry specifies the monitor's manufacturer. 1mModelName "4m22mmodel24m1m"0m This optional entry specifies the monitor's model. 1mHorizSync 4m22mhorizsync-range0m gives the range(s) of horizontal sync frequencies supported by the monitor. 4mhorizsync-range24m may be a comma separated list of either discrete values or ranges of values. A range of values is two values separated by a dash. By default the values are in units of kHz. They may be specified in MHz or Hz if 1mMHz 22mor 1mHz0m is added to the end of the line. The data given here is used by the XFree86 server to determine if video modes are within the specifications of the monitor. This information should be available in the monitor's handbook. If this entry is omitted, a default range of 28-33kHz is used. 1mVertRefresh 4m22mvertrefresh-range0m gives the range(s) of vertical refresh frequencies supported by the monitor. 4mvertrefresh-range24m may be a comma separated list of either discrete values or ranges of values. A range of values is two values separated by a dash. By default the values are in units of Hz. They may be specified in MHz or kHz if 1mMHz 22mor 1mkHz0m is added to the end of the line. The data given here is used by the XFree86 server to determine if video modes are within the specifications of the monitor. This information should be available in the monitor's handbook. If this entry is omitted, a default range of 43-72Hz is used. 1mDisplaySize 4m22mwidth24m 4mheight0m This optional entry gives the width and height, in millimetres, of the picture area of the monitor. If given this is used to calculate the horizontal and vertical pitch (DPI) of the screen. 1mGamma 4m22mgamma-value0m 1mGamma 4m22mred-gamma24m 4mgreen-gamma24m 4mblue-gamma0m This is an optional entry that can be used to specify the gamma correction for the monitor. It may be specified as either a single value or as three separate RGB values. The values should be in the range 0.1 to 10.0, and the default is 1.0. Not all drivers are capable of using this information. 1mUseModes "4m22mmodesection-id24m1m"0m Include the set of modes listed in the 1mModes 22msection called 4mmod-0m 4mesection-id.24m This make all of the modes defined in that section available for use by this monitor. 1mMode "4m22mname24m1m"0m This is an optional multi-line entry that can be used to provide definitions for video modes for the monitor. In most cases this isn't necessary because the built-in set of VESA standard modes will be sufficient. The 1mMode 22mkeyword indicates the start of a multi-line video mode description. The mode description is ter- minated with the 1mEndMode 22mkeyword. The mode description consists of the following entries: 1mDotClock 4m22mclock0m is the dot (pixel) clock rate to be used for the mode. 1mHTimings 4m22mhdisp24m 4mhsyncstart24m 4mhsyncend24m 4mhtotal0m specifies the horizontal timings for the mode. 1mVTimings 4m22mvdisp24m 4mvsyncstart24m 4mvsyncend24m 4mvtotal0m specifies the vertical timings for the mode. 1mFlags "4m22mflag24m1m" 4m22m...0m specifies an optional set of mode flags, each of which is a separate string in double quotes. 1m"Interlace" 22mindicates that the mode is interlaced. 1m"DoubleScan" 22mindicates a mode where each scanline is doubled. 1m"+HSync" 22mand 1m"-HSync" 22mcan be used to select the polarity of the HSync signal. 1m"+VSync" 22mand 1m"-VSync" 22mcan be used to select the polarity of the VSync signal. 1m"Composite" 22mcan be used to specify com- posite sync on hardware where this is supported. Addition- ally, on some hardware, 1m"+CSync" 22mand 1m"-CSync" 22mmay be used to select the composite sync polarity. 1mHSkew 4m22mhskew0m specifies the number of pixels (towards the right edge of the screen) by which the display enable signal is to be skewed. Not all drivers use this information. This option might become necessary to override the default value sup- plied by the server (if any). "Roving" horizontal lines indicate this value needs to be increased. If the last few pixels on a scan line appear on the left of the screen, this value should be decreased. 1mVScan 4m22mvscan0m specifies the number of times each scanline is painted on the screen. Not all drivers use this information. Values less than 1 are treated as 1, which is the default. Gener- ally, the 1m"DoubleScan" Flag 22mmentioned above doubles this value. 1mModeLine "4m22mname24m1m" 4m22mmode-description0m This entry is a more compact version of the 1mMode 22mentry, and it also can be used to specify video modes for the monitor. is a single line format for specifying video modes. In most cases this isn't necessary because the built-in set of VESA standard modes will be sufficient. The 4mmode-description24m is in four sections, the first three of which are mandatory. The first is the dot (pixel) clock. This is a single number specifying the pixel clock rate for the mode in MHz. The second section is a list of four numbers specifying the horizontal timings. These numbers are the 4mhdisp24m, 4mhsync-0m 4mstart24m, 4mhsyncend24m, and 4mhtotal24m values. The third section is a list of four numbers specifying the vertical timings. These numbers are the 4mvdisp24m, 4mvsyncstart24m, 4mvsyncend24m, and 4mvtotal24m values. The final section is a list of flags specifying other characteris- tics of the mode. 1mInterlace 22mindicates that the mode is inter- laced. 1mDoubleScan 22mindicates a mode where each scanline is dou- bled. 1m+HSync 22mand 1m-HSync 22mcan be used to select the polarity of the HSync signal. 1m+VSync 22mand 1m-VSync 22mcan be used to select the polarity of the VSync signal. 1mComposite 22mcan be used to specify composite sync on hardware where this is supported. Addition- ally, on some hardware, 1m+CSync 22mand 1m-CSync 22mmay be used to select the composite sync polarity. The 1mHSkew 22mand 1mVScan 22moptions men- tioned above in the 1mModes 22mentry description can also be used here. 1mOption "DPMS" "4m22mboolean24m1m"0m Set whether DPMS is enabled for the monitor. The default is taken from the monitor's DDC/EDID information if available, or false if not. 1mOption "TargetRefresh" "4m22mrefresh24m1m"0m Sets a target refresh rate to use for the monitor. If the moni- tor has valid modes with a refresh rate greater or equal to this value, those with a lower refresh rate will not be considered when determining the default resolution to use. This is improves the default resolution selection when none is specified explicitly. Default: 1mTargetRefresh 22mnot used. 1mOption "SyncOnGreen" "4m22mboolean24m1m"0m Set whether sync-on-green should be enabled. The availability of this option is driver-specific. Default: false. 1mOption "PreferredMode" "4m22mXres24m1mx4m22mYres24m1m"0m Sets a preferred resolution to use for the default mode. By default the preferred mode resolution is taken from the DDC/EDID data if it is available and if it is provides a default mode preference. This is typically true for flat panel displays, which have a native/preferred resolution. This option is not used if the 1mUsePreferredMode 22moption is false. 1mOption "UsePreferredMode" "4m22mboolean24m1m"0m Controls whether or not a preferred mode, either detected from the monitor's DDC/EDID data or provided explicitly with the 1mPre-0m 1mferredMode 22moption, is used. Default: true. 1mOptions0m Additional 1mOption 22mflags, including driver-specific options, may be included in 1mMonitor 22msections. 1mMODES SECTION0m The config file may have multiple 1mModes 22msections, or none. These sec- tions provide a way of defining sets of video modes independently of the 1mMonitor 22msections. 1mMonitor 22msections may include the definitions provided in these sections by using the 1mUseModes 22mkeyword. In most cases the 1mModes 22msections are not necessary because the built-in set of VESA standard modes will be sufficient. 1mModes 22msections have the following format: 1mSection "Modes"0m 1mIdentifier "4m22mname24m1m"0m 4mentries0m 4m...0m 1mEndSection0m The 1mIdentifier 22mentry specifies the unique name for this set of mode descriptions. The other entries permitted in 1mModes 22msections are the 1mMode 22mand 1mModeLine 22mentries that are described above in the 1mMonitor 22msec- tion, as well as 1mOptions22m. 1mSCREEN SECTION0m The config file may have multiple 1mScreen 22msections. There must be at least one, for the "screen" being used. A "screen" represents the binding of a graphics device (1mDevice 22msection) and one or more monitors (1mMonitor 22msections). A 1mScreen 22msection is considered "active" if it is referenced by an active 1mServerLayout 22msection or by the 1m-screen 22mcommand line option. If neither of those is present, the first 1mScreen 22msection found in the config file is considered the active one. 1mScreen 22msections have the following format: 1mSection "Screen"0m 1mIdentifier "4m22mname24m1m"0m 1mDevice "4m22mdevid24m1m"0m 1mMonitor "4m22mmonid24m1m"0m 4mentries0m 4m...0m 1mSubSection "Display"0m 4mentries0m 4m...0m 1mEndSubSection0m 4m...0m 1mEndSection0m The 1mIdentifier 22mand 1mDevice 22mentries are mandatory. All others are optional. The 1mIdentifier 22mentry specifies the unique name for this screen. The 1mScreen 22msection provides information specific to the whole screen, including screen-specific 1mOptions22m. In multi-head configurations, there will be multiple active 1mScreen 22msections, one for each head. The entries available for this section are: 1mDevice "4m22mdevice-id24m1m"0m This mandatory entry specifies the 1mDevice 22msection to be used for this screen. This is what ties a specific graphics card to a screen. The 4mdevice-id24m must match the 1mIdentifier 22mof a 1mDevice0m section in the config file. 1mMonitor 4m22mmonitor-num24m 1m"4m22mmonitor-id24m1m"0m One of these entries may be given for each monitor associated with this screen. In the absence of these entries, at least one default monitor will be created for the screen. The 4mmonitor-id0m field is mandatory, and specifies the 1mMonitor 22msection being ref- erenced. The 4mmonitor-num24m field is required when more than one monitor is being associated with the screen. Each referenced monitor should be given a unique monitor number. This monitor number may be given special significance by the driver, and it is also used to identify which 1mDisplay 22msubsection(s) are associ- ated with the screen/monitor. If this field is omitted in a multiple-monitor configuration, default values will be assigned. This is not recommended, and this behaviour may change in future revisions. If a 1mMonitor 22mname is not specified, a default configuration is used. Currently the default configuration may not function as expected on all platforms. 1mVideoAdaptor "4m22mxv-id24m1m"0m specifies an optional Xv video adaptor description to be used with this screen. 1mDefaultDepth 4m22mdepth0m specifies which color depth the server should use by default. The 1m-depth 22mcommand line option can be used to override this. If neither is specified, the default depth is driver-specific, but in most cases is 8. 1mDefaultFbBpp 4m22mbpp0m specifies which framebuffer layout to use by default. The 1m-fbbpp 22mcommand line option can be used to override this. In most cases the driver will chose the best default value for this. The only case where there is even a choice in this value is for depth 24, where some hardware supports both a packed 24 bit framebuffer layout and a sparse 32 bit framebuffer layout. 1mOptions0m Various 1mOption 22mflags may be specified in the 1mScreen 22msection. Some are driver-specific and are described in the driver docu- mentation. Others are driver-independent, and will eventually be described here. 1mOption "Accel"0m Enables XAA (X Acceleration Architecture), a mechanism that makes video cards' 2D hardware acceleration available to the XFree86 server. This option is on by default, but it may be necessary to turn it off if there are bugs in the driver. There are many options to disable specific accelerated operations, listed below. Note that disabling an operation will have no effect if the operation is not accelerated (whether due to lack of support in the hardware or in the driver). 1mOption "BiosLocation" "4m22maddress24m1m"0m Set the location of the BIOS for the Int10 module. One may select a BIOS of another card for posting or the legacy V_BIOS range located at 0xc0000 or an alternative address (BUS_ISA). This is only useful under very special circumstances and should be used with extreme care. 1mOption "InitPrimary" "4m22mboolean24m1m"0m Use the Int10 module to initialize the primary graphics card. Normally, only secondary cards are soft-booted using the Int10 module, as the primary card has already been initialized by the BIOS at boot time. Default: false. 1mOption "NoInt10" "4m22mboolean24m1m"0m Disables the Int10 module, a module that uses the int10 call to the BIOS of the graphics card to initialize it. Default: false. 1mOption "NoMTRR"0m Disables MTRR (Memory Type Range Register) support, a feature of modern processors which can improve video performance by a fac- tor of up to 2.5. Some hardware has buggy MTRR support, and some video drivers have been known to exhibit problems when MTRR's are used. 1mOption "XaaNoCPUToScreenColorExpandFill"0m Disables accelerated rectangular expansion blits from source patterns stored in system memory (using a memory-mapped aper- ture). 1mOption "XaaNoColor8x8PatternFillRect"0m Disables accelerated fills of a rectangular region with a full- color pattern. 1mOption "XaaNoColor8x8PatternFillTrap"0m Disables accelerated fills of a trapezoidal region with a full- color pattern. 1mOption "XaaNoDashedBresenhamLine"0m Disables accelerated dashed Bresenham line draws. 1mOption "XaaNoDashedTwoPointLine"0m Disables accelerated dashed line draws between two arbitrary points. 1mOption "XaaNoImageWriteRect"0m Disables accelerated transfers of full-color rectangular pat- terns from system memory to video memory (using a memory-mapped aperture). 1mOption "XaaNoMono8x8PatternFillRect"0m Disables accelerated fills of a rectangular region with a mono- chrome pattern. 1mOption "XaaNoMono8x8PatternFillTrap"0m Disables accelerated fills of a trapezoidal region with a mono- chrome pattern. 1mOption "XaaNoOffscreenPixmaps"0m Disables accelerated draws into pixmaps stored in offscreen video memory. 1mOption "XaaNoPixmapCache"0m Disables caching of patterns in offscreen video memory. 1mOption "XaaNoScanlineCPUToScreenColorExpandFill"0m Disables accelerated rectangular expansion blits from source patterns stored in system memory (one scan line at a time). 1mOption "XaaNoScanlineImageWriteRect"0m Disables accelerated transfers of full-color rectangular pat- terns from system memory to video memory (one scan line at a time). 1mOption "XaaNoScreenToScreenColorExpandFill"0m Disables accelerated rectangular expansion blits from source patterns stored in offscreen video memory. 1mOption "XaaNoScreenToScreenCopy"0m Disables accelerated copies of rectangular regions from one part of video memory to another part of video memory. 1mOption "XaaNoSolidBresenhamLine"0m Disables accelerated solid Bresenham line draws. 1mOption "XaaNoSolidFillRect"0m Disables accelerated solid-color fills of rectangles. 1mOption "XaaNoSolidFillTrap"0m Disables accelerated solid-color fills of Bresenham trapezoids. 1mOption "XaaNoSolidHorVertLine"0m Disables accelerated solid horizontal and vertical line draws. 1mOption "XaaNoSolidTwoPointLine"0m Disables accelerated solid line draws between two arbitrary points. Each 1mScreen 22msection may optionally contain one or more 1mDisplay 22msubsec- tions. Those subsections provide depth, fbbpp and monitor specific configuration information, and the ones chosen depend on the depth and/or fbbpp that is being used for the screen, as well as the monitor number(s) in multi-monitor configurations. The 1mDisplay 22msubsection for- mat is described in the section below. 1mDISPLAY SUBSECTION0m Each 1mScreen 22msection may have multiple 1mDisplay 22msubsections. The "active" 1mDisplay 22msubsections are the first for each monitor number that match the depth and/or fbbpp values being used, or failing that, the first for each monitor number that has neither a depth or fbbpp value specified. Display subsections with no monitor number specified are used for single monitor per screen configurations. The 1mDisplay 22msubsec- tions are optional. When there isn't one that matches the monitor num- ber and/or depth and/or fbbpp values being used, all the parameters that can be specified here fall back to their defaults. 1mDisplay 22msubsections have the following format: 1mSubSection "Display"0m 1mMonitor 4m22mmonitor-num0m 1mDepth 4m22mdepth0m 4mentries0m 4m...0m 1mEndSubSection0m None of the entries in a 1mDisplay 22msubsection are mandatory. 1mMonitor 4m22mmonitor-num0m This entry specifies which 1mMonitor 22mentry of the 1mScreen 22msection that this 1mDisplay 22msubsection applies to. This number should match the monitor number of one of the 1mMonitor 22mreferences in the 1mScreen 22mscreen. If it doesn't match, then this 1mDisplay 22msubsec- tion will be ignored. If this entry is omitted, it is applied to single-monitor configurations. For multi-monitor configura- tions, the driver may also use information in this subsection for screen-wide parameters. Not all of the parameters in this subsection make sense on a per-monitor basis. Which get used and how they get used is currently up to the driver. Entries that are relevant to multi-monitor configurations include 1mModes22m, 1mVirtual22m, 1mViewPort22m, and 1mOptions22m. 1mDepth 4m22mdepth0m This entry specifies what colour depth the 1mDisplay 22msubsection is to be used for. This entry is usually specified, but it may be omitted to create a match-all 1mDisplay 22msubsection or when wishing to match only against the 1mFbBpp 22mparameter. The range of 4mdepth0m values that are allowed depends on the driver. Most driver sup- port 8, 15, 16 and 24. Some also support 1 and/or 4, and some may support other values (like 30). Note: 4mdepth24m means the num- ber of bits in a pixel that are actually used to determine the pixel colour. 32 is not a valid 4mdepth24m value. Most hardware that uses 32 bits per pixel only uses 24 of them to hold the colour information, which means that the colour depth is 24, not 32. 1mFbBpp 4m22mbpp0m This entry specifies the framebuffer format this 1mDisplay 22msubsec- tion is to be used for. This entry is only needed when provid- ing depth 24 configurations that allow a choice between a 24 bpp packed framebuffer format and a 32bpp sparse framebuffer format. In most cases this entry should not be used. 1mWeight 4m22mred-weight24m 4mgreen-weight24m 4mblue-weight0m This optional entry specifies the relative RGB weighting to be used for a screen is being used at depth 16 for drivers that allow multiple formats. This may also be specified from the command line with the 1m-weight 22moption (see XFree86(1)). 1mVirtual 4m22mxdim24m 4mydim0m This optional entry specifies the virtual screen resolution to be used. 4mxdim24m must be a multiple of either 8 or 16 for most drivers, and a multiple of 32 when running in monochrome mode. The given value will be rounded down if this is not the case. Video modes which are too large for the specified virtual size will be rejected. If this entry is not present, the virtual screen resolution will be set to accommodate all the valid video modes given in the 1mModes 22mentry. Some drivers/hardware combina- tions do not support virtual screens. Refer to the appropriate driver-specific documentation for details. 1mViewPort 4m22mx024m 4my00m This optional entry sets the upper left corner of the initial display. This is only relevant when the virtual screen resolu- tion is different from the resolution of the initial video mode. If this entry is not given, then the initial display will be centered in the virtual display area. 1mModes "4m22mmode-name24m1m" 4m22m...0m This optional entry specifies the list of video modes to use. Each 4mmode-name24m specified must be in double quotes. They must correspond to those specified or referenced in the appropriate 1mMonitor 22msection (including implicitly referenced built-in VESA standard modes). The server will delete modes from this list which don't satisfy various requirements. The first valid mode in this list will be the default display mode for startup. The list of valid modes is converted internally into a circular list. It is possible to switch to the next mode with 1mCtrl+Alt+Keypad-Plus 22mand to the previous mode with 1mCtrl+Alt+Key-0m 1mpad-Minus22m. When this entry is omitted, the valid modes refer- enced by the appropriate 1mMonitor 22msection will be used. If the 1mMonitor 22msection contains no modes, then the selection will be taken from the built-in VESA standard modes. 1mVisual "4m22mvisual-name24m1m"0m This optional entry sets the default root visual type. This may also be specified from the command line (see the Xserver(1) man page). The visual types available for depth 8 are (default is 1mPseudoColor22m): 1mStaticGray0m 1mGrayScale0m 1mStaticColor0m 1mPseudoColor0m 1mTrueColor0m 1mDirectColor0m The visual type available for the depths 15, 16 and 24 are (default is 1mTrueColor22m): 1mTrueColor0m 1mDirectColor0m Not all drivers support 1mDirectColor 22mat these depths. The visual types available for the depth 4 are (default is 1mStat-0m 1micColor22m): 1mStaticGray0m 1mGrayScale0m 1mStaticColor0m 1mPseudoColor0m The visual type available for the depth 1 (monochrome) is 1mStat-0m 1micGray22m. 1mBlack 4m22mred24m 4mgreen24m 4mblue0m This optional entry allows the "black" colour to be specified. This is only supported at depth 1. The default is black. 1mWhite 4m22mred24m 4mgreen24m 4mblue0m This optional entry allows the "white" colour to be specified. This is only supported at depth 1. The default is white. 1mOptions0m Option flags may be specified in the 1mDisplay 22msubsections. These may include driver-specific options and driver-independent options. The former are described in the driver-specific docu- mentation. Some of the latter are described above in the sec- tion about the 1mScreen 22msection, and they may also be included here. 1mSERVERLAYOUT SECTION0m The config file may have multiple 1mServerLayout 22msections. A "server layout" represents the binding of one or more screens (1mScreen 22msections) and one or more input devices (1mInputDevice 22msections) to form a complete configuration. In multi-head configurations, it also specifies the relative layout of the heads. A 1mServerLayout 22msection is considered "active" if it is referenced by the 1m-layout 22mcommand line option or by an 1mOption "DefaultServerLayout" 22mentry in the 1mServerFlags 22msection (the former takes precedence over the latter). If those options are not used, the first 1mServerLayout 22msection found in the config file is con- sidered the active one. If no 1mServerLayout 22msections are present, the single active screen and two active (core) input devices are selected as described in the relevant sections above. 1mServerLayout 22msections have the following format: 1mSection "ServerLayout"0m 1mIdentifier "4m22mname24m1m"0m 1mScreen "4m22mscreen-id24m1m"0m 4m...0m 1mInputDevice "4m22midev-id24m1m"0m 4m...0m 4moptions0m 4m...0m 1mEndSection0m Each 1mServerLayout 22msection must have an 1mIdentifier 22mentry and at least one 1mScreen 22mentry. The 1mIdentifier 22mentry specifies the unique name for this server layout. The 1mServerLayout 22msection provides information specific to the whole session, including session-specific 1mOptions22m. The 1mServerFlags 22moptions (described above) may be specified here, and ones given here override those given in the 1mServerFlags 22msection. The entries that may be used in this section are described here. 1mScreen 4m22mscreen-num24m 1m"4m22mscreen-id24m1m" 4m22mposition-information0m One of these entries must be given for each screen being used in a session. The 4mscreen-id24m field is mandatory, and specifies the 1mScreen 22msection being referenced. The 4mscreen-num24m field is optional, and may be used to specify the screen number in multi- head configurations. When this field is omitted, the screens will be numbered in the order that they are listed in. The num- bering starts from 0, and must be consecutive. The optional 4mposition-information24m field describes the way multiple screens are positioned. When this information is not provided, the positioning of the screen defaults to 1mAbsolute 4m22m024m 4m024m. There are a number of different ways that this information can be provided: 4mx24m 4my0m 1mAbsolute 4m22mx24m 4my0m These both specify that the upper left corner's coordinates are (4mx24m,4my24m). The 1mAbsolute 22mkeyword is optional. Some older versions of XFree86 (4.2 and earlier) don't recognise the 1mAbsolute 22mkeyword, so it's safest to just specify the coordi- nates without it. 1mRightOf "4m22mscreen-id24m1m"0m 1mLeftOf "4m22mscreen-id24m1m"0m 1mAbove "4m22mscreen-id24m1m"0m 1mBelow "4m22mscreen-id24m1m"0m 1mRelative "4m22mscreen-id24m1m" 4m22mx24m 4my0m These give the screen's location relative to another screen. The first four position the screen immediately to the right, left, above or below the other screen. When positioning to the right or left, the top edges are aligned. When posi- tioning above or below, the left edges are aligned. The 1mRelative 22mform specifies the offset of the screen's origin (upper left corner) relative to the origin of another screen. 1mInputDevice "4m22midev-id24m1m" "4m22moption24m1m" 4m22m...0m One of these entries should be given for each input device being used in a session. Normally at least two are required, one each for the core pointer and keyboard devices. If either of those is missing, suitable 1mInputDevice 22mentries are searched for using the method described above in the 1mINPUTDEVICE 22msection. The 4midev-id24m field is mandatory, and specifies the name of the 1mInput-0m 1mDevice 22msection being referenced. Multiple 4moption24m fields may be specified, each in double quotes. The options permitted here are any that may also be given in the 1mInputDevice 22msections. Normally only session-specific input device options would be used here. The most commonly used options are: 1m"CorePointer"0m 1m"CoreKeyboard"0m 1m"SendCoreEvents"0m and the first two should normally be used to indicate the core pointer and core keyboard devices respectively. 1mOptions0m Any option permitted in the 1mServerFlags 22msection may also be specified here. When the same option appears in both places, the value given here overrides the one given in the 1mServerFlags0m section. Here is an example of a 1mServerLayout 22msection for a dual headed configu- ration with two mice: 1mSection "ServerLayout"0m 1mIdentifier "Layout 1"0m 1mScreen "MGA 1"0m 1mScreen "MGA 2" RightOf "MGA 1"0m 1mInputDevice "Keyboard 1" "CoreKeyboard"0m 1mInputDevice "Mouse 1" "CorePointer"0m 1mInputDevice "Mouse 2" "SendCoreEvents"0m 1mOption "BlankTime" "5"0m 1mEndSection0m 1mDRI SECTION0m This optional section is used to provide some information for the Direct Rendering Infrastructure. 1mIdentifier "4m22mname24m1m"0m specifies an optional identifying name for the 1mDRI 22msection. 1mGroup "4m22mgroup-name24m1m"0m 1mGroup 4m22mgroup-id0m specifies the group ownership for the DRI device nodes. It may be specified as a group name or as a numerical group ID. 1mMode 4m22mmode0m specifies the numerical permissions for the DRI device nodes. 1mBuffers 4m22mcount24m 4msize0m specifies buffers. 1mOptions0m Option flags may be specified in 1mDRI 22msections. 1mVENDOR SECTION0m The optional 1mVendor 22msection may be used to provide vendor-specific con- figuration information. Multiple 1mVendor 22msections may be present, and they may contain the following entries: 1mIdentifier "4m22mname24m1m"0m specifies an identifying name for the 1mVendor 22msection. 1mVendorName "4m22mvendor-name24m1m"0m specifies the vendor name. 1mOptions0m may be specified in the 1mVendor 22msections. In addition to these entries, there may be named 1mSubSections22m, each of which may contain an 1mIdentifier 22mentry and 1mOption 22mentries. 1mFILES0m For an example of an XF86Config file, see the file installed as /usr/X11R6/lib/X11/XF86Config.eg. 1mSEE ALSO0m X(7), Xserver(1), XFree86(1), apm(4), chips(4), cirrus(4), cyrix(4), fbdev(4), glide(4), glint(4), i128(4), i740(4), i810(4), imstt(4), mga(4), neomagic(4), nv(4), r128(4), rendition(4), savage(4), s3virge(4), siliconmotion(4), sis(4), sunbw2(4), suncg14(4), suncg3(4), suncg6(4), sunffb(4), sunleo(4), suntcx(4), tdfx(4), tga(4), tri- dent(4), tseng(4), v4l(4), vesa(4), vga(4), vmware(4), README 4m24m, RELNOTES 4m24m, README.mouse 4m24m, README.DRI 4m24m, Install 4m24m. 1mAUTHORS0m This manual page was largely rewritten for XFree86 4.0 by David Dawes 4m24m. xf86config(1) xf86config(1) 1mNAME0m xf86config - generate an XF86Config file 1mSYNOPSIS0m 1mxf86config0m 1mDESCRIPTION0m 4mxf86config24m is an interactive program for generating an XF86Config file for use with XFree86 X servers. Note that the default name used by 4mxf86config24m for the XF86Config file is system-dependent. For instance, on some systems, XF86Config-4 is used, and on OS/2, XConfig is used. 1mFILES0m 4m/usr/X11R6/lib/X11/Cards0m Video cards database 1mSEE ALSO0m XFree86(1), XF86Config(5), reconfig(1) 1mAUTHOR0m Harm Hanemaayer. xf86cfg(1) xf86cfg(1) 1mNAME0m xf86cfg - Graphical configuration tool for XFree86 4.0 1mSYNOPSIS0m 1mxf86cfg 22m[-xf86config 4mXF86Config24m] [-modulepath 4mmoduledir24m] [-fontpath 4mfontsdir24m] [-toolkitoption ...] 1mDESCRIPTION0m 4mXf86cfg24m is a tool to configure 4mXFree8624m 4m4.024m, and can be used to either write the initial configuration file or make customizations to the cur- rent configuration. When the 1mDISPLAY 22menvironment variable is not set, xf86cfg will run the command 4mXFree8624m 4m-configure24m to allow the xserver detect the hardware in the computer, and write an initial 4mXF86Config24m file in the user's home directory. Then, it will start XFree86 and allow customizations. If the 1mDISPLAY 22menvironment variable is set, xf86cfg will read the default 4mXF86Config24m, that may not be the same being used by the current server, and allow customizations. To use an alternative location for modules or fonts the respective search paths may be specified. Unless there is an 1mApply 22mbutton in the current xf86cfg dialog, the changes made will take place the next time 4mXFree8624m is started. Xf86cfg allows addition and configuration of new devices, such as video cards, monitors, keyboards and mouses. Screen layout configuration for xinerama or traditional multi-head is also available. Modelines can be configured or optimized. AccessX basic configurations can be made in the xf86cfg's accessx sec- tion. 1mOPTIONS0m 4m-xf86config0m Specifies an alternate XF86Config file for configuration. 4m-modulepath0m Specifies where xf86cfg, and the server it may start, should look for XFree86 modules. 4m-serverpath0m Specifies the complete path, not including the binary name, of the XFree86 binary. 4m-fontpath0m Specifies the path to the fonts that should be used by the server started by xf86cfg. 4m-rgbpath0m Specifies the path to the rgb.txt file that should be used by the server started by xf86cfg, if any. 4m-textmode0m If xf86cfg was compiled with support to ncurses, this option makes xf86cfg enters a text mode interface. 4m-nomodules0m When built with support for loading modules, this options changes xf86cfg behaviour, so that it will not load any mod- ules, and thus start quicker. 1mENVIRONMENT0m 4mDISPLAY24m Default host and display number 4mXWINHOME0m Directory where XFree86 was installed, defaults to /usr/X11R6. 4mXENVIRONMENT0m Name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property 1mFILES0m 4m/etc/XF86Config0m Server configuration file 4m/etc/X11/XF86Config0m Server configuration file 4m/usr/X11R6/etc/XF86Config0m Server configuration file 4m/usr/X11R6/lib/X11/XF86Config.24mhostname Server configuration file 4m/usr/X11R6/lib/X11/XF86Config0m Server configuration file 4m/usr/X11R6/lib/X11/app-default/XF86Cfg0m Specifies xf86cfg resources 4m/usr/X11R6/lib/X11/xkb/X0-config.keyboard0m Keyboard specific configuration 1mSEE ALSO0m 4mXFree8624m(1) 4mXF86Config24m(5) 1mCOPYRIGHT0m Copyright 2000, Conectiva Linux S.A. 4mhttp://www.conectiva.com0m Copyright 2000, The XFree86 Project 4mhttp://www.XFree86.org0m 1mAUTHORS0m Paulo César Pereira de Andrade 4m0m The XFree86 Project 1mBUGS0m Probably. getconfig(1) getconfig(1) 1mNAME0m getconfig - get configuration information for the XFree86 server 1mSYNOPSIS0m 1mgetconfig 22m[4moption24m 4m...24m] 1mDESCRIPTION0m 1mgetconfig 22mis a programmatic interface that is used by the 1mXFree860m server to get configuration information about video hardware when oper- ating without an 1mXF86Config 22mfile. This implementation of 1mgetconfig 22mis written in perl. It processes a prioritized and ordered list of rules supplied internally and from meta-configuration files. The rules are in the form of perl expres- sions. 1mgetconfig 22mwrites to standard output the XF86Config-style con- figuration data specified by the last highest priority rule that evalu- ates to true. Information about the format of the meta-configuration files can be found in the getconfig(5) manual page. 1mOPTIONS0m 1m-I 4m22msearch-path0m Specify the search path to use for meta-config files. 4msearch-0m 4mpath24m is a comma-separated list of directories to search. Each directory in the search path is searched for files with a 4m.cfg0m suffix. Each such file is opened and checked for a valid sig- nature string. Rules are read from files with a valid signa- ture string and appended to the list of rules to evaluate. If no search path is specified, only the internally supplied con- figuration rules will be used. 1m-D 22mEnable debugging output. 1m-V 22mPrint out the version information and exit. 1m-X 4m22mXFree86-version0m Specify the XFree86 version in numeric (integer) form. 1m-b 4m22msubsys-id0m Specify the PCI subsystem ID of the video device. 1m-c 4m22mclass0m Specify the PCI class of the video device. 1m-d 4m22mdevice-id0m Specify the PCI device ID of the video device. 1m-r 4m22mrevision0m Specify the PCI revision of the video device. 1m-s 4m22msubsysvendor-id0m Specify the PCI subsystem vendor ID of the video device. 1m-v 4m22mvendor-id0m Specify the PCI vendor ID of the video device. 1m-S 4m22msbus-path0m Specify the SBUS path of the video device. 1mFILES0m 4m.cfg24m files located in the search path. The search path typically spec- ified by the 1mXFree86 22mserver is: 4m/etc/X110m 4m/usr/X11R6/etc/X110m 4m0m 4m/usr/X11R6/lib/X11/getconfig0m where 4m24m is the 1mXFree86 22mserver's module search path. 1mSEE ALSO0m getconfig(5), XFree86(1), XF86Config(5). 1mAUTHORS0m The XFree86 automatic configuration support and the 1mgetconfig 22minterface was written by David H. Dawes, with the support of X-Oz Technologies. getconfig(5) getconfig(5) 1mNAME0m getconfig - meta configuration files for getconfig(1) 1mSYNOPSIS0m 1m*.cfg0m 1mDESCRIPTION0m 1mgetconfig 22mis a programmatic interface that is used by the 1mXFree860m server to get configuration information about video hardware when oper- ating without an 1mXF86Config 22mfile. This implementation of 1mgetconfig 22mis written in perl. It processes rules from meta-configuration files. All meta-configuration files have a 4m.cfg24m suffix. Lines starting with a pound-sign (#) are comments, and are ignored. Blank lines that consist only of white space are also treated as com- ments and ignored. The first non-comment line must be a signature string followed by the file format version number. The signature string is "XFree86 Project getconfig rules file. Version: " The currently defined version is "1.0". Files that do not have the correct signature string are ignored. The remaining non-comment lines define rules. The start of a new rule is indicated by a line with no leading white space. Subsequent lines making up a rule must be indented with white space. Logical lines within a rule may be split over multiple physical lines by using the usual continuation convention ('\' at the end of the line). The first logical line of each rule is a perl expression. It may be any valid perl expression whose evaluated (with 'eval') result may be used as the argument to a perl 'if' statement. The second logical line should be the name of the XFree86 video driver to use when the rule is true, and subsequent logical lines of each rule, if present, are additional con- figuration output for the video device's 1mXF86Config Device 22msection. The driver name and additional lines of configuration information are written to standard output when the rule is chosen as the successful rule. Pseudo rules consisting of perl expressions may be present in the file for the purpose of defining custom perl variables or setting the weight to use for the following rules. Pseudo rules are rules that consist of a single logical line only, and they are never candidates themselves for the successful rule. Several perl variables are pre-defined, and may be used within rules. They include: 1m$vendor 22mPCI vendor ID 1m$device 22mPCI device ID 1m$revision 22mPCI revision ID 1m$subsys 22mPCI subsystem ID 1m$subsysVendor 22mPCI subsystem vendor ID 1m$class 22mPCI class 1m$sbuspath 22mSBUS path 1m$XFree86Version 22mXFree86 version, as a 'v' string 1m$XFree86VersionNumeric 22mXFree86 numeric version 1m$XFree86VersionMajor 22mXFree86 major version 1m$XFree86VersionMinor 22mXFree86 minor version 1m$XFree86VersionPatch 22mXFree86 patch version 1m$XFree86VersionSnap 22mXFree86 snap version 1m$weight 22mcurrent rule weight The 1m$weight 22mvariable determines the weight of the rules as they are processed. The weight for subsequent rules may be set with a pseudo rule that sets or changes the value of 1m$weight22m. The default weight, and the weight used for built-in rules is 500. The meta-configuration files are processed in an unpredictable order. The weighting of the rules is used to determine their relative priority After processing all of the rules, both built-in and those read from the meta-configuration files, the 1mgetconfig 22mprogram chooses as the suc- cessful rule the last and highest weighted rule that evaluates to true. 1mFILES0m 4m.cfg24m files located in the search path. The search path typically spec- ified by the 1mXFree86 22mserver is: 4m/etc/X110m 4m/usr/X11R6/etc/X110m 4m0m 4m/usr/X11R6/lib/X11/getconfig0m where 4m24m is the 1mXFree86 22mserver's module search path. 4m/usr/X11R6/lib/X11/getconfig/xfree86.cfg0m Default rules file that gets installed. This file doesn't contain any rules by default. 4m/usr/X11R6/lib/X11/getconfig/cfg.sample0m A sample rules file that gives some exam- ples of what types of rules can appear in rules files. 1mSEE ALSO0m getconfig(1), XFree86(1), XF86Config(5). 1mAUTHORS0m The XFree86 automatic configuration support and the 1mgetconfig 22minterface was written by David H. Dawes, with the support of X-Oz Technologies. APM(4) APM(4) 1mNAME0m apm - Alliance ProMotion video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "apm"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mapm 22mis an XFree86 driver for Alliance ProMotion video cards. The driver is accelerated for supported hardware/depth combination. It supports framebuffer depths of 8, 15, 16, 24 and 32 bits. For 6420, 6422, AT24, AT3D and AT25, all depths are fully accelerated except 24 bpp for which only screen to screen copy and rectangle filling is accelerated. 1mSUPPORTED HARDWARE0m The 1mapm 22mdriver supports PCI and ISA video cards on the following Alliance ProMotion chipsets 1mProMotion 64200m 1mProMotion 64220m 1mAT240m 1mAT3D0m 1mAT250m 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects the chipset type, but the following 1mChipSet0m names may optionally be specified in the config file 1m"Device" 22msection, and will override the auto-detection: "6422", "at24", "at3d". The AT25 is Chipset "at3d" and the 6420 is 6422. The driver will auto-detect the amount of video memory present for all chips. The actual amount of video memory can also be specified with a 1mVideoRam 22mentry in the config file 1m"Device" 22msection. The following driver 1mOptions 22mare supported: 1mOption "HWCursor" "4m22mboolean24m1m"0m Enable or disable the hardware cursor. Default: on. 1mOption "SWCursor" "4m22mboolean24m1m"0m Force the software cursor. Default: off. 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "NoLinear" "4m22mboolean24m1m"0m Disable or enable use of linear frame buffer. Default: on. Note: it may or may not work. Tell me if you need it. 1mOption "PciRetry" "4m22mboolean24m1m"0m Enable or disable PCI retries. Default: off. 1mOption "Remap_DPMS_On" "4m22mstring24m1m"0m 1mOption "Remap_DPMS_Standby" "4m22mstring24m1m"0m 1mOption "Remap_DPMS_Suspend" "4m22mstring24m1m"0m 1mOption "Remap_DPMS_Off" "4m22mstring24m1m"0m Remaps the corresponding DPMS events. I've found that my Her- cules 128/3D swaps Off and Suspend events. You can correct that with 1mOption "Remap_DPMS_Suspend" "Off"0m 1mOption "Remap_DPMS_Off" "Suspend"0m in the 1mDevice 22msection of the config file. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. Default: off. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Kent Hamilton, Henrik Harmsen and Loic Grenie. ATI(4) ATI(4) 1mNAME0m ati - ATI video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "ati"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mati 22mis an XFree86 driver for ATI video cards. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m The 1mati 22mdriver supports... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: ... R128(4) R128(4) 1mNAME0m r128 - ATI Rage 128 video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "r128"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mr128 22mis an XFree86 driver for ATI Rage 128 based video cards. It con- tains full support for 8, 15, 16 and 24 bit pixel depths, hardware acceleration of drawing primitives, hardware cursor, video modes up to 1800x1440 @ 70Hz, doublescan modes (e.g., 320x200 and 320x240), gamma correction at all pixel depths, a fully programming dot clock and robust text mode restoration for VT switching. Dualhead is supported on M3/M4 mobile chips. 1mSUPPORTED HARDWARE0m The 1mr128 22mdriver supports all ATI Rage 128 based video cards including the Rage Fury AGP 32MB, the XPERT 128 AGP 16MB and the XPERT 99 AGP 8MB. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects all device information necessary to initialize the card. However, if you have problems with auto-detection, you can specify: VideoRam - in kilobytes MemBase - physical address of the linear framebuffer IOBase - physical address of the MMIO registers ChipID - PCI DEVICE ID In addition, the following driver 1mOptions 22mare supported: 1mOption "SWcursor" "4m22mboolean24m1m"0m Selects software cursor. The default is 1moff.0m 1mOption "NoAccel" "4m22mboolean24m1m"0m Enables or disables all hardware acceleration. The default is to 1menable 22mhardware acceleration. 1mOption "Dac6Bit" "4m22mboolean24m1m"0m Enables or disables the use of 6 bits per color component when in 8 bpp mode (emulates VGA mode). By default, all 8 bits per color component are used. The default is 1moff.0m 1mOption "VideoKey" "4m22minteger24m1m"0m This overrides the default pixel value for the YUV video overlay key. The default value is 1mundefined.0m 1mOption "Display" "4m22mstring24m1m"0m Select display mode for devices which support flat panels. Sup- ported modes are: 1m"FP" 22m- use flat panel; 1m"CRT" 22m- use cathode ray tube; 1m"Mirror" 22m- use both FP and CRT; 1m"BIOS" 22m- use mode as configured in the BIOS. The default is 1mFP.0m The following 1mOptions 22mare mostly important for non-x86 architectures: 1mOption "ProgramFPRegs" "4m22mboolean24m1m"0m Enable or disable programming of the flat panel registers. Beware that this may damage your panel, so use this 1mat your own0m 1mrisk. 22mThe default depends on the device. 1mOption "PanelWidth" "4m22minteger24m1m"0m 1mOption "PanelHeight" "4m22minteger24m1m"0m Override the flat panel dimensions in pixels. They are used to program the flat panel registers and normally determined using the video card BIOS. If the wrong dimensions are used, the sys- tem may hang. 1mOption "UseFBDev" "4m22mboolean24m1m"0m Enable or disable use of an OS-specific framebuffer device interface (which is not supported on all OSs). See fbdevhw(4) for further information. Default: off. 1mOption "DMAForXv" "4m22mboolean24m1m"0m Try or don't try to use DMA for Xv image transfers. This will reduce CPU usage when playing big videos like DVDs, but may cause instabilities. Default: off. The following additional 1mOptions 22mare supported: 1mOption "ShowCache" "4m22mboolean24m1m"0m Enable or disable viewing offscreen cache memory. A development debug option. Default: off. 1mDualhead Note: 22mThe video BIOS on some laptops interacts strangely with dualhead. This can result in flickering and problems changing modes on crtc2. If you experience these problems, try toggling your laptop's video output switch (e.g. fn-f7, etc.) prior to starting X or switch to another VT and back. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Rickard E. (Rik) Faith 4mfaith@precisioninsight.com0m Kevin E. Martin 4mkevin@precisioninsight.com0m RADEON(4) RADEON(4) 1mNAME0m radeon - ATI RADEON video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "radeon"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mradeon 22mis an XFree86 driver for ATI RADEON based video cards. It con- tains full support for 8, 15, 16 and 24 bit pixel depths, dual-head setup, flat panel, hardware 2D acceleration, hardware 3D acceleration (experimental on R300 and R400 series cards), hardware cursor, XV extension, and the Xinerama extension. 1mSUPPORTED HARDWARE0m The 1mradeon 22mdriver supports PCI and AGP video cards based on the follow- ing ATI chips 1mR100 22mRadeon 7200 1mRV100 22mRadeon 7000(VE), M6 1mRS100 22mRadeon IGP320(M) 1mRV200 22mRadeon 7500, M7, FireGL 7800 1mRS200 22mRadeon IGP330(M)/IGP340(M) 1mRS250 22mRadeon Mobility 7000 IGP 1mR200 22mRadeon 8500, 9100, FireGL 8800/8700 1mRV250 22mRadeon 9000PRO/9000, M9 1mRS300 22mRadeon 9100 IGP 1mRS350 22mRadeon 9200 IGP 1mRS400 22mRadeon XPRESS 200/200M IGP 1mRV280 22mRadeon 9200PRO/9200/9200SE, M9+ 1mR300 22mRadeon 9700PRO/9700/9500PRO/9500/9600TX, FireGL X1/Z1 (2D only) 1mR350 22mRadeon 9800PRO/9800SE/9800, FireGL X2 (2D only) 1mR360 22mRadeon 9800XT (2d only) 1mRV350 22mRadeon 9600PRO/9600SE/9600, M10/M11, FireGL T2 (2D only) 1mRV360 22mRadeon 9600XT (2d only) 1mRV370 22mRadeon X300, M22 (2d only) 1mRV380 22mRadeon X600, M24 (2d only) 1mRV410 22mRadeon X700, M26 PCIE (2d only) 1mR420 22mRadeon X800 AGP (2d only) 1mR423/R430 22mRadeon X800, M28 PCIE (2d only) 1mR480/R481 22mRadeon X850 PCIE/AGP (2d only) 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects all device information necessary to initialize the card. However, if you have problems with auto-detection, you can specify: VideoRam - in kilobytes MemBase - physical address of the linear framebuffer IOBase - physical address of the MMIO registers ChipID - PCI DEVICE ID In addition, the following driver 1mOptions 22mare supported: 1mOption "SWcursor" "4m22mboolean24m1m"0m Selects software cursor. The default is 1moff.0m 1mOption "NoAccel" "4m22mboolean24m1m"0m Enables or disables all hardware acceleration. The default is to 1menable 22mhardware acceleration. 1mOption "Dac6Bit" "4m22mboolean24m1m"0m Enables or disables the use of 6 bits per color component when in 8 bpp mode (emulates VGA mode). By default, all 8 bits per color component are used. The default is 1moff.0m 1mOption "VideoKey" "4m22minteger24m1m"0m This overrides the default pixel value for the YUV video overlay key. The default value is 1m0x1E.0m 1mOption "UseFBDev" "4m22mboolean24m1m"0m Enable or disable use of an OS-specific framebuffer device interface (which is not supported on all OSs). MergedFB does not work when this option is in use. See fbdevhw(4) for further information. The default is 1moff.0m 1mOption "AGPMode" "4m22minteger24m1m"0m Set AGP data transfer rate. (used only when DRI is enabled) 1 -- x1 (default) 2 -- x2 4 -- x4 8 -- x8 others -- invalid 1mOption "AGPFastWrite" "4m22mboolean24m1m"0m Enable AGP fast write. Enabling this option is frequently the cause of instability. Used only when the DRI is enabled. The default is 1moff.0m 1mOption "BusType" "4m22mstring24m1m"0m Used to replace previous ForcePCIMode option. Should only be used when driver's bus detection is incorrect or you want to force a AGP card to PCI mode. Should NEVER force a PCI card to AGP bus. PCI -- PCI bus AGP -- AGP bus PCIE -- PCI Express (falls back to PCI at present) (used only when DRI is enabled) The default is 1mauto detect.0m 1mOption "DDCMode" "4m22mboolean24m1m"0m Force to use the modes queried from the connected monitor. The default is 1moff.0m 1mOption "DisplayPriority" "4m22mstring24m1m"0m Used to prevent flickering or tearing problem caused by display buffer underflow. AUTO -- Driver calculated (default). BIOS -- Remain unchanged from BIOS setting. Use this if the calculation is not correct for your card. HIGH -- Force to the highest priority. Use this if you have problem with above options. This might affect performance slightly. The default value is 1mAUTO.0m 1mOption "MonitorLayout" "4m22mstring24m1m"0m This option is used to overwrite the detected monitor types. This is only required when driver makes a false detection. The possible monitor types are: NONE -- Not connected CRT -- Analog CRT monitor TMDS -- Desktop flat panel LVDS -- Laptop flat panel This option can be used in following format: Option "MonitorLayout" "[type on primary], [type on secondary]" For example, Option "MonitorLayout" "CRT, TMDS" Primary/Secondary head for dual-head cards: (when only one port is used, it will be treated as the primary regardless) 1mPrimary head:0m DVI port on DVI+VGA cards LCD output on laptops Internal TMDS port on DVI+DVI cards 1mSecondary head:0m VGA port on DVI+VGA cards VGA port on laptops External TMDS port on DVI+DVI cards The default value is 1mundefined.0m 1mOption "MergedFB" "4m22mboolean24m1m"0m This enables merged framebuffer mode. In this mode you have a single shared framebuffer with two viewports looking into it. It is similar to Xinerama, but has some advantages. It is faster than Xinerama, the DRI works on both heads, and it sup- ports clone modes. Merged framebuffer mode provides two linked viewports looking into a single large shared framebuffer. The size of the frame- buffer is determined by the 1mVirtual 22mkeyword defined on the 1mScreen 22msection of your XF86Config file. It works just like reg- ular virtual desktop except you have two viewports looking into it instead of one. For example, if you wanted a desktop composed of two 1024x768 viewports looking into a single desktop you would create a vir- tual desktop of 2048x768 (left/right) or 1024x1536 (above/below), e.g., 1mVirtual 2048 768 22mor 1mVirtual 1024 15360m The virtual desktop can be larger than the size of the viewports looking into it. In this case the linked viewports will scroll around in the virtual desktop. Viewports with different sizes are also supported (e.g., one that is 1024x768 and one that is 640x480). In this case the smaller viewport will scroll rela- tive to the larger one such that none of the virtual desktop is inaccessible. If you do not define a virtual desktop the driver will create one based on the orientation of the heads and size of the largest defined mode in the display section that is sup- ported on each head. The relation of the viewports in specified by the 1mCRT2Position0m Option. The options are 1mClone 22m, 1mLeftOf 22m, 1mRightOf 22m, 1mAbove 22m, and 1mBelow. 22mMergedFB is enabled by default if a monitor is detected on each output. If no position is given it defaults to clone mode (the old clone options are now deprecated, also, the option OverlayOnCRTC2 has been replaced by the Xv attribute XV_SWITCHCRT; the overlay can be switched to CRT1 or CRT2 on the fly in clone mode). The maximum framebuffer size that the 2D acceleration engine can handle is 8192x8192. The maximum framebuffer size that the 3D engine can handle is 2048x2048. 1mNote: 22mPage flipping does not work well in certain configurations with MergedFB. If you see rendering errors or other strange behavior, disable page flipping. Also MergedFB is not compatible with the 1mUseFBDev 22moption. The default value is 1mundefined.0m 1mOption "CRT2HSync" "4m22mstring24m1m"0m Set the horizontal sync range for the secondary monitor. It is not required if a DDC-capable monitor is connected. For example, Option "CRT2HSync" "30.0-86.0" The default value is 1mundefined.0m 1mOption "CRT2VRefresh" "4m22mstring24m1m"0m Set the vertical refresh range for the secondary monitor. It is not required if a DDC-capable monitor is connected. For example, Option "CRT2VRefresh" "50.0-120.0" The default value is 1mundefined.0m 1mOption "CRT2Position" "4m22mstring24m1m"0m Set the relationship of CRT2 relative to CRT1. Valid options are: 1mClone 22m, 1mLeftOf 22m, 1mRightOf 22m, 1mAbove 22m, and 1mBelow0m For example, Option "CRT2Position" "RightOf" This option also supports an offset. This is most useful when 1mMergedNonRectangular 22mis enabled. For example if you want CRT2 to be offset 100 pixels down from the start of CRT1, you'd type: Option "CRT2Position" "LeftOf 100" The offset is vertical for LeftOf and RightOf and horizontal for Above and Below. Offsets can be positive or negative. The default value is 1mClone.0m 1mOption "MetaModes" "4m22mstring24m1m"0m MetaModes are mode combinations for CRT1 and CRT2. If you are using merged frame buffer mode and want to change modes (CTRL- ALT-+/-), these define which modes will be switched to on CRT1 and CRT2. The MetaModes are defined as CRT1Mode-CRT2Mode (800x600-1024x768). Modes listed individually (800x600) define clone modes, that way you can mix clone modes with non-clone modes. Also some programs require "standard" modes. If you want to add clone modes of different refreshes or sizes to the mix, they are defined as CRT1Mode+CRT2Mode (800x600+1024x768). Note: Any mode you use in the MetaModes must be defined in the 1mScreen 22msection of your XF86Config file. Modes not defined there will be ignored when the MetaModes are parsed since the driver uses them to make sure the monitors can handle those modes. If you do not define a MetaMode the driver will create one based on the orientation of the heads and size of the largest defined mode in the display section that is supported on each head. 1mModes 1024x768 800x600 640x4800m For example, Option "MetaModes" "1024x768-1024x768 800x600-1024x768 640x480-800x600 800x600" The default value is 1mundefined.0m 1mOption "MergedXinerama" "4m22mboolean24m1m"0m Since merged framebuffer mode does not use Xinerama, apps are not able to intelligently place windows. Merged framebuffer mode provides its own pseudo-Xinerama. This allows Xinerama compliant applications to place windows appropriately. There are some caveats. Since merged framebuffer mode is able to change relative screen sizes and orientations on the fly, as well has having overlapping viewports, pseudo-Xinerama, might not always provide the right hints. Also many Xinerama compli- ant applications only query Xinerama once at startup; if the information changes, they might not be aware of the change. If you are already using Xinerama (e.g., a single head card and a dualhead card providing three heads), pseudo-Xinerama will be disabled. This option allows you turn off the driver provided pseudo-Xin- erama extension. The default value is 1mTRUE.0m 1mOption "MergedXineramaCRT2IsScreen0" "4m22mboolean24m1m"0m By default the pseudo-Xinerama provided by the driver makes the left-most or bottom head Xinerama screen 0. Certain Xinerama- aware applications do special things with screen 0. To change that behavior, use this option. The default value is 1mundefined.0m 1mOption "MergedDPI" "4m22mstring24m1m"0m The driver will attempt to figure out an appropriate DPI based on the DDC information and the orientation of the heads when in merged framebuffer mode. If this value does not suit you, you can manually set the DPI using this option. For example, Option "MergedDPI" "100 100" The default value is 1mundefined.0m 1mOption "MergedNonRectangular" "4m22mboolean24m1m"0m If you are using MergedFB with two modes of different sizes, turn this option on to keep the smaller head from scrolling within the larger virtual desktop and to keep the mouse from moving into that area. Applications that are not Xinerama aware can potentially end up stranded in this area. The default value is 1mFALSE.0m 1mOption "ColorTiling" "4m22mboolean24m1m"0m Frame buffer can be addressed either in linear or tiled mode. Tiled mode can provide significant performance benefits with 3D applications, for 2D it shouldn't matter much. Tiling will be disabled if the virtual x resolution exceeds 2048 (3968 for R300 and above), if option 1mUseFBDev 22mis used, or (if DRI is enabled) the drm module is too old. If this option is enabled, a new dri driver is required for direct rendering too. Color tiling will be automatically disabled in interlaced or doublescan screen modes. The default value is 1mon.0m 1mOption "IgnoreEDID" "4m22mboolean24m1m"0m Do not use EDID data for mode validation, but DDC is still used for monitor detection. This is different from NoDDC option. The default value is 1moff.0m 1mOption "PanelSize" "4m22mstring24m1m"0m Should only be used when driver cannot detect the correct panel size. Apply to both desktop (TMDS) and laptop (LVDS) digital panels. When a valid panel size is specified, the timings col- lected from DDC and BIOS will not be used. If you have a panel with timings different from that of a standard VESA mode, you have to provide this information through the Modeline. For example, Option "PanelSize" "1400x1050" The default value is 1mnone.0m 1mOption "PanelOff" "4m22mboolean24m1m"0m Disable panel output. The default value is 1moff.0m 1mOption "EnablePageFlip" "4m22mboolean24m1m"0m Enable page flipping for 3D acceleration. This will increase performance but not work correctly in some rare cases, hence the default is 1moff.0m 1mOption "ForceMinDotClock" "4m22mfrequency24m1m"0m Override minimum dot clock. Some Radeon BIOSes report a minimum dot clock unsuitable (too high) for use with television sets even when they actually can produce lower dot clocks. If this is the case you can override the value here. 1mNote that using this0m 1moption might damage your hardware. 22mYou have been warned. The 1mfrequency 22mparameter may be specified as a float value with stan- dard suffixes like "k", "kHz", "M", "MHz". 1mOption "DepthBits" "4m22minteger24m1m"0m Precision in bits per pixel of the shared depth buffer used for 3D acceleration. Valid values are 16 and 24. When this is 24, there will also be a hardware accelerated stencil buffer, but the combined depth/stencil buffer will take up twice as much video RAM as when it's 16. Default: 1mThe same as the screen0m 1mdepth.0m 1mOption "DMAForXv" "4m22mboolean24m1m"0m Try or don't try to use DMA for Xv image transfers. This will reduce CPU usage when playing big videos like DVDs, but might cause instabilities. Default: 1mon.0m 1mOption "SubPixelOrder" "4m22mstring24m1m"0m Force subpixel order to specified order. Subpixel order is used for subpixel decimation on flat panels. NONE -- No subpixel (CRT like displays) RGB -- in horizontal RGB order (most flat panels) BGR -- in horizontal BGR order (some flat panels) This option is intended to be used in following cases: 1. The default subpixel order is incorrect for your panel. 2. Enable subpixel decimation on analog panels. 3. Adjust to one display type in dual-head clone mode setup. 4. Get better performance with Render acceleration on digital panels (use NONE setting). The default is 1mNONE 22mfor CRT, 1mRGB 22mfor digital panels 1mOption "DynamicClocks" "4m22mboolean24m1m"0m Enable dynamic clock scaling. The on-chip clocks will scale dynamically based on usage. This can help reduce heat and increase battery life by reducing power usage. Some users report reduced 3D performance with this enabled. The default is 1moff.0m 1mOption "BIOSHotkeys" "4m22mboolean24m1m"0m Enable BIOS hotkey output switching. This allows the BIOS to toggle outputs using hotkeys (e.g., fn-f7, etc.). Since the driver does not support ACPI, there is no way to validate modes on an output switch and the BIOS can potentially change things behind the driver's back. The default is 1moff.0m 1mOption "ReverseDDC" "4m22mboolean24m1m"0m When BIOS connector informations aren't available, use this option to reverse the mapping of the 2 main DDC ports. Use this if the X serve obviously detects the wrong display for each con- nector. This is typically needed on the Radeon 9600 cards bun- dled with Apple G5s. The default is 1moff.0m 1mOption "LVDSProbePLL" "4m22mboolean24m1m"0m When BIOS panel informations aren't available (like on Power- Books), it might still be necessary to use the firmware provided PLL values for the panel or flickering will happen. This option will force probing of the current value programmed in the chip when X is launched in that case. This is only useful for LVDS panels (laptop internal panels). The default is 1mon.0m 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Rickard E. (Rik) Faith 4mfaith@precisioninsight.com0m Kevin E. Martin 4mkem@freedesktop.org0m Alan Hourihane 4malanh@fairlite.demon.co.uk0m Marc Aurele La France 4mtsi@xfree86.org0m Benjamin Herrenschmidt 4mbenh@kernel.crashing.org0m Michel Dänzer 4mmichel@tungstengraphics.com0m Alex Deucher 4malexdeucher@gmail.com0m Bogdan D. 4mbogdand@users.sourceforge.net0m Eric Anholt 4meric@anholt.net0m CHIPS(4) CHIPS(4) 1mNAME0m chips - Chips and Technologies video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "chips"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mchips 22mis an XFree86 driver for Chips and Technologies video processors. The majority of the Chips and Technologies chipsets are supported by this driver. In general the limitation on the capabilities of this driver are determined by the chipset on which it is run. Where possi- ble, this driver provides full acceleration and supports the following depths: 1, 4, 8, 15, 16, 24 and on the latest chipsets an 8+16 overlay mode. All visual types are supported for depth 1, 4 and 8 and both TrueColor and DirectColor visuals are supported where possible. Multi- head configurations are supported on PCI or AGP buses. 1mSUPPORTED HARDWARE0m The 1mchips 22mdriver supports video processors on most of the bus types currently available. The chipsets supported fall into one of three architectural classes. A 1mbasic 22marchitecture, the 1mWinGine 22marchitecture and the newer 1mHiQV 22marchitecture. 1mBasic Architecture0m The supported chipsets are 1mct65520, ct65525, ct65530, ct65535, ct65540,0m 1mct65545, ct65546 22mand 1mct655480m Color depths 1, 4 and 8 are supported on all chipsets, while depths 15, 16 and 24 are supported only on the 1m65540, 65545, 65546 22mand 1m655480m chipsets. The driver is accelerated when used with the 1m65545, 65546 22mor 1m65548 22mchipsets, however the DirectColor visual is not available. 1mWingine Architecture0m The supported chipsets are 1mct64200 22mand 1mct643000m Color depths 1, 4 and 8 are supported on both chipsets, while depths 15, 16 and 24 are supported only on the 1m64300 22mchipsets. The driver is accelerated when used with the 1m64300 22mchipsets, however the DirectColor visual is not available. 1mHiQV Architecture0m The supported chipsets are 1mct65550, ct65554, ct65555, ct68554, ct690000m and 1mct690300m Color depths 1, 4, 8, 15, 16, 24 and 8+16 are supported on all chipsets. The DirectColor visual is supported on all color depths except the 8+16 overlay mode. Full acceleration is supplied for all chipsets. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects the chipset type, but the following 1mChipSet0m names may optionally be specified in the config file 1m"Device" 22msection, and will override the auto-detection: "ct65520", "ct65525", "ct65530", "ct65535", "ct65540", "ct65545", "ct65546", "ct65548", "ct65550", "ct65554", "ct65555", "ct68554", "ct69000", "ct69030", "ct64200", "ct64300". The driver will auto-detect the amount of video memory present for all chipsets. But maybe overridden with the 1mVideoRam 22mentry in the config file 1m"Device" 22msection. The following driver 1mOptions 22mare supported, on one or more of the sup- ported chipsets: 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "NoLinear" "4m22mboolean24m1m"0m Disables linear addressing in cases where it is enabled by default. Default: off. 1mOption "Linear" "4m22mboolean24m1m"0m Enables linear addressing in cases where it is disabled by default. Default: off. 1mOption "HWCursor" "4m22mboolean24m1m"0m Enable or disable the HW cursor. Default: on. 1mOption "SWCursor" "4m22mboolean24m1m"0m Enable or disable the SW cursor. Default: off. 1mOption "STN" "4m22mboolean24m1m"0m Force detection of STN screen type. Default: off. 1mOption "UseModeline" "4m22mboolean24m1m"0m Reprogram flat panel timings with values from the modeline. Default: off. 1mOption "FixPanelSize" "4m22mboolean24m1m"0m Reprogram flat panel size with values from the modeline. Default: off. 1mOption "NoStretch" "4m22mboolean24m1m"0m This option disables the stretching on a mode on a flat panel to fill the screen. Default: off. 1mOption "LcdCenter" "4m22mboolean24m1m"0m Center the mode displayed on the flat panel on the screen. Default: off. 1mOption "HWclocks" "4m22mboolean24m1m"0m Force the use of fixed hardware clocks on chips that support both fixed and programmable clocks. Default: off. 1mOption "UseVclk1" "4m22mboolean24m1m"0m Use the Vclk1 programmable clock on 1mHiQV 22mchipsets instead of Vclk2. Default: off. 1mOption "FPClock8" "4m22mfloat24m1m"0m 1mOption "FPClock16" "4m22mfloat24m1m"0m 1mOption "FPClock24" "4m22mfloat24m1m"0m 1mOption "FPClock32" "4m22mfloat24m1m"0m Force the use of a particular video clock speed for use with the flat panel at a specified depth. 1mOption "MMIO" "4m22mboolean24m1m"0m Force the use of memory mapped IO for acceleration registers. Default: off. 1mOption "FullMMIO" "4m22mboolean24m1m"0m Force the use of memory mapped IO where it can be used. Default: off. 1mOption "SuspendHack" "4m22mboolean24m1m"0m Force driver to leave centering and stretching registers alone. This can fix some laptop suspend/resume problems. Default: off. 1mOption "Overlay"0m Enable 8+24 overlay mode. Only appropriate for depth 24. Default: off. 1mOption "ColorKey" "4m22minteger24m1m"0m Set the colormap index used for the transparency key for the depth 8 plane when operating in 8+16 overlay mode. The value must be in the range 2-255. Default: 255. 1mOption "VideoKey" "4m22minteger24m1m"0m This sets the default pixel value for the YUV video overlay key. Default: undefined. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. Default: off. 1mOption "SyncOnGreen" "4m22mboolean24m1m"0m Enable or disable combining the sync signals with the green sig- nal. Default: off. 1mOption "ShowCache" "4m22mboolean24m1m"0m Enable or disable viewing offscreen memory. Used for debugging only. Default: off. 1mOption "18bitBus" "4m22mboolean24m1m"0m Force the driver to assume that the flat panel has an 18bit data bus. Default: off. 1mOption "Crt2Memory" "4m22minteger24m1m"0m In a dual-head mode (69030 only) this option selects the amount of memory to set aside for the second head. If not specified, half the memory is used. Default: off. 1mOption "DualRefresh" "4m22minteger24m1m"0m The 69030 supports independent refresh rates on its two display channels. This mode of operations uses additional memory band- width and thus limits the maximum colour depth and refresh rate that can be achieved, and so is off by default. Using this option forces the use of an independent refresh rate on the two screens. Default: off. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) You are also recommended to read the README.chips file that comes with all XFree86 distributions, which discusses the 1mchips 22mdriver in more detail. 1mAUTHORS0m Authors include: Jon Block, Mike Hollick, Regis Cridlig, Nozomi Ytow, Egbert Eich, David Bateman and Xavier Ducoin CIRRUS(4) CIRRUS(4) 1mNAME0m cirrus - Cirrus Logic video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "cirrus"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mcirrus 22mis an XFree86 driver for Cirrus Logic video chips. The driver provides support for the following framebuffer depths: 8, 15, 16, 24, 32 bpp. The cirrus_alpine module also supports 1 and 4 bpp. Conver- sion of 32 bpp to 24 bpp is supported and preferred. Interlace is not supported. DGA is supported. RAMDAC speed may be specified. 1mSUPPORTED HARDWARE0m The 1mcirrus 22mdriver supports several chipsets through two automatically loaded modules. 1mCL-GD546x support is in the cirrus_laguna module:0m 1mCL-GD54620m 1mCL-GD54640m 1mCL-GD5464BD0m 1mCL-GD54650m 1mcirrus_alpine module:0m 1mCL-GD54300m 1mCL-GD5434-40m 1mCL-GD5434-80m 1mCL-GD54360m 1mCL-GD54460m 1mCL-GD54800m 1mCL-GD75480m 1mCL-GD75550m 1mCL-GD75560m 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The following driver 1mOptions 22mare supported: 1mcirrus_laguna module:0m 1mChipRev HWcursor NoAccel Rotate ShadowFB0m 1mcirrus_alpine module:0m 1mChipRev HWcursor MemCFG1 MemCFG2 MMIO NoAccel Rotate ShadowFB0m 1mVideoRam0m If VideoRam is specified, that setting is respected and memory is not probed. 1mOption "Clocks"0m 1mClocks 22mline may not be specified for Cirrus chips. 1mOption "HWCursor" "4m22mboolean24m1m"0m Enable or disable the HW cursor. Hardware cursor sizes of 32 and 64 are supported in the "Alpine" module. Hardware cursor size of 64 is supported in the "Laguna" module. Default: on for 7548, 7555/6; otherwise off. 1mOption "MemCFG1" "4m22minteger24m1m"0m 1mOption "MemCFG2" "4m22minteger24m1m"0m May configure memory on non-primary cards. "Alpine" module does not yet know how to configure memory. Use options MemCFG1 and MemCFG2 to set registers SR0F and SR17 before trying to count ram size. The 754x supports MMIO for the BitBlt engine but not for the VGA registers. The 754x may have difficulty with 2 256K X 16 DRAMs (1024) or 4 512K X 8 DRAMs (2048). The 7555/6 assumes 2048. Default: memory automatically detected. 1mOption "MMIO" "4m22mboolean24m1m"0m By default, MMIO is used if we have a separate IOAddress and not in monochrome mode (1 bpp). When MMIO is not used, RAC IO flags RAC_COLORMAP, RAC_CURSOR, RAC_VIEWPORT, and RAC_FB are set. Default: on 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Acceleration can not be used in less than 8 bpp. Default: Acceleration disabled for 5436, 5480, 7548; otherwise enabled. 1mOption "PciRetry" "4m22mboolean24m1m"0m Enable or disable PCI retries. Default: off. 1mOption "Rotate" "CW"0m 1mOption "Rotate" "CCW"0m Rotate the display clockwise or counterclockwise. This mode is unaccelerated. This mode forces use of the shadow framebuffer layer. Screen depth must be less than 8 bpp with "Alpine" mod- ule. HW cursor is disabled with 1mRotate. 22mDefault: no rotation. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. This mode is unaccelerated. Screen depth must be less than 8 bpp with "Alpine" module. Default: off. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors of this document include: Scot Wilcoxon (Scot@Wilcoxon.org), authors of mga(4x). CYRIX(4) CYRIX(4) 1mNAME0m cyrix - Cyrix video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "cyrix"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mcyrix 22mis an XFree86 driver for the Cyrix MediaGX (now Natsemi Geode) series of processors when using the built in video. 1mSUPPORTED HARDWARE0m The 1mcyrix 22mdriver supports the MediaGX, MediaGXi and MediaGXm proces- sors, as well as the Natsemi 'Geode' branded processors. It supports the CS5510, CS5520, CS5530 and CS5530A companion chips. The driver sup- ports 4, 8, 15 and 16 bit deep displays with video compression and acceleration. The MediaGX run length compresses its shared framebuffer, for the best performance on a MediaGX machine pick backgrounds that compress well horizonally. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The following driver 1moptions 22mare supported: 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "SWCursor" "4m22mboolean24m1m"0m Disable or enable software cursor. Default: software cursor is enabled. 1mOption "HWCursor" "4m22mboolean24m1m"0m Disable or enable hardware cursor. Default: hardware cursor is disabled. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Disable or enable shadow frame buffer. The shadow buffer is nor- mally only used when rotating the screen. The default is false. 1mOption "Rotate" "CW"0m 1mOption "Rotate" "CCW"0m Rotate the display clockwise or counterclockwise for use on Cyrix based tablet PC systems. This mode is currently unacceler- ated. Default: no rotation. 1mBUGS0m This driver has not been tested on the original 5510 hardware for some considerable time. 8bit mode does not currently work on the CS5510 with external RAMDAC. The 5530A video overlay facility is not currently supported. XFree86 uses the MediaGX 'SoftVGA' interface. On a small number of boards this is buggy and may result in strange illegal instruction traps. Hardware cursors are not currently supported. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Richard Hecker, Annius Groenink, Dirk Hohndel, The GGI Project, Alan Cox. FBDEV(4) FBDEV(4) 1mNAME0m fbdev - video driver for framebuffer device 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "fbdev"0m 1mBusID "pci:4m22mbus24m1m:4m22mdev24m1m:4m22mfunc24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mfbdev 22mis an XFree86 driver for framebuffer devices. This is a non- accelerated driver, the following framebuffer depths are supported: 8, 15, 16, 24. All visual types are supported for depth 8, and TrueColor visual is supported for the other depths. Multi-head configurations are supported. 1mSUPPORTED HARDWARE0m The 1mfbdev 22mdriver supports all hardware where a framebuffer driver is available. fbdev uses the os-specific submodule fbdevhw(4) to talk to the kernel device driver. Currently a fbdevhw module is available for linux. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. For this driver it is not required to specify modes in the screen sec- tion of the config file. The 1mfbdev 22mdriver can pick up the currently used video mode from the framebuffer driver and will use it if there are no video modes configured. For PCI boards you might have to add a BusID line to the Device sec- tion. See above for a sample line. You can use "XFree86 -scanpci" to figure out the correct values. The following driver 1mOptions 22mare supported: 1mOption "fbdev" "4m22mstring24m1m"0m The framebuffer device to use. Default: /dev/fb0. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. Default: on. 1mOption "Rotate" "4m22mstring24m1m"0m Enable rotation of the display. The supported values are "CW" (clockwise, 90 degrees), "UD" (upside down, 180 degrees) and "CCW" (counter clockwise, 270 degrees). Implies use of the shadow framebuffer layer. Default: off. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7), fbdevhw(4) 1mAUTHORS0m Authors include: Gerd Knorr, Michel Danzer, Geert Uytterhoeven GLIDE(4) GLIDE(4) 1mNAME0m glide - Glide video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "glide"0m ... 1mEndSection0m 1mREAD THIS IF NOTHING ELSE0m This driver has a special requirement that needs to be fulfilled before it will work: You need Glide installed and you need to make a link for the libglide2x.so file. Read the second paragraph in the description below to find out how. 1mDESCRIPTION0m 1mglide 22mis an XFree86 driver for Glide capable video boards (such as 3Dfx Voodoo boards). This driver is mainly for Voodoo 1 and Voodoo 2 boards, later boards from 3Dfx have 2D built-in and you should preferably use a driver separate for those boards or the fbdev(4) driver. This driver is a bit special because Voodoo 1 and 2 boards are very much NOT made for running 2D graphics. Therefore, this driver uses no hardware accel- eration (since there is no acceleration for 2D, only 3D). Instead it is implemented with the help of a "shadow" framebuffer that resides entirely in RAM. Selected portions of this shadow framebuffer are then copied out to the Voodoo board at the right time. Because of this, the speed of the driver is very dependent on the CPU. But since the CPU is nowadays actually rather fast at moving data, we get very good speed anyway, especially since the whole shadow framebuffer is in cached RAM. This driver requires that you have installed Glide. (Which can, at the time of this writing, be found at http://glide.xxedgexx.com/3DfxRPMS.html). Also, you need to tell XFree86 where the libglide2x.so file is placed by making a soft link in the /usr/X11R6/lib/modules directory that points to the libglide2x.so file. For example (if your libglide2x.so file is in /usr/lib): # ln -s /usr/lib/libglide2x.so /usr/X11R6/lib/modules If you have installed /dev/3dfx, the driver will be able to turn on the MTRR registers (through the glide library) if you have a CPU with such registers (see http://glide.xxedgexx.com/MTRR.html). This will speed up copying data to the Voodoo board by as much as 2.7 times and is very noticeable since this driver copies a lot of data... Highly recom- mended. This driver supports 16 and 24 bit color modes. The 24 bit color mode uses a 32 bit framebuffer (it has no support for 24 bit packed-pixel framebuffers). Notice that the Voodoo boards can only display 16 bit color, but the shadow framebuffer can be run in 24 bit color. The point of supporting 24 bit mode is that this enables you to run in a multi- head configuration with Xinerama together with another board that runs in real 24 bit color mode. (All boards must run the same color depth when you use Xinerama). Resolutions supported are: 640x480, 800x600, 960x720, 1024x768, 1280x1024 and 1600x1200. Note that not all modes will work on all Voodoo boards. It seems that Voodoo 2 boards support no higher than 1024x768 and Voodoo 1 boards can go to 800x600. If you see a message like this in the output from the server: (EE) GLIDE(0): grSstWinOpen returned ... Then you are probably trying to use a resolution that is supported by the driver but not supported by the hardware. Refresh rates supported are: 60Hz, 75Hz and 85Hz. The refresh rate used is derived from the normal mode line according to the following table: Mode-line refresh rate Used refresh rate 0-74 Hz 60 Hz 74-84 Hz 75 Hz 84- Hz 85 Hz Thus, if you use a modeline that for example has a 70Hz refresh rate you will only get a 60Hz refresh rate in actuality. Selecting which Voodoo board to use with the driver is done by using an option called "GlideDevice" in the "Device" section. (If you don't have this option present then the first board found will be selected for that Device section). For example: To use the first Voodoo board, use a "Device" section like this, for example: Section "Device" Identifier "Voodoo" Driver "glide" Option "dpms" "on" Option "GlideDevice" "0" EndSection And if you have more than one Voodoo board, add another "Device" sec- tion with a GlideDevice option with value 1, and so on. (You can use more than one Voodoo board, but SLI configured boards will be treated as a single board.) Multihead and Xinerama configurations are supported. Limited support for DPMS screen saving is available. The "standby" and "suspend" modes are just painting the screen black. The "off" mode turns the Voodoo board off and thus works correctly. This driver does not support a virtual screen size different from the display size. 1mSUPPORTED HARDWARE0m The 1mglide 22mdriver supports any board that can be used with Glide (such as 3Dfx Voodoo boards) 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The following driver 1mOptions 22mare supported: 1mOption "OnAtExit" "4m22mboolean24m1m"0m If true, will leave the Voodoo board on when the server exits. Useful in a multihead setup when only the Voodoo board is con- nected to a second monitor and you don't want that monitor to lose signal when you quit the server. Put this option in the Device section. Default: off. 1mOption "GlideDevice" "4m22minteger24m1m"0m Selects which Voodoo board to use. (Or boards, in an SLI config- uration). The value should be 0 for the first board, 1 for the second and so on. If it is not present, the first Voodoo board found will be selected. Put this option in the Device section. 1mEXAMPLE0m Here is an example of a part of an XF86Config file that uses a multi- head configuration with two monitors. The first monitor is driven by the fbdev video driver and the second monitor is driven by the glide driver. Section "Monitor" Identifier "Monitor 1" VendorName "Unknown" ModelName "Unknown" HorizSync 30-70 VertRefresh 50-80 # 1024x768 @ 76 Hz, 62.5 kHz hsync Modeline "1024x768" 85 1024 1032 1152 1360 768 784 787 823 EndSection Section "Monitor" Identifier "Monitor 2" VendorName "Unknown" ModelName "Unknown" HorizSync 30-70 VertRefresh 50-80 # 1024x768 @ 76 Hz, 62.5 kHz hsync Modeline "1024x768" 85 1024 1032 1152 1360 768 784 787 823 EndSection Section "Device" Identifier "fb" Driver "fbdev" Option "shadowfb" Option "dpms" "on" # My video card is on the AGP bus which is usually # located as PCI bus 1, device 0, function 0. BusID "PCI:1:0:0" EndSection Section "Device" # I have a Voodoo 2 board Identifier "Voodoo" Driver "glide" Option "dpms" "on" # The next line says I want to use the first board. Option "GlideDevice" "0" EndSection Section "Screen" Identifier "Screen 1" Device "fb" Monitor "Monitor 1" DefaultDepth 16 Subsection "Display" Depth 16 Modes "1024x768" EndSubSection EndSection Section "Screen" Identifier "Screen 2" Device "Voodoo" Monitor "Monitor 2" DefaultDepth 16 Subsection "Display" Depth 16 Modes "1024x768" EndSubSection EndSection Section "ServerLayout" Identifier "Main Layout" # Screen 1 is to the right and screen 2 is to the left Screen "Screen 2" Screen "Screen 1" "" "" "Screen 2" "" EndSection If you use this configuration file and start the server with the +xin- erama command line option, the two monitors will be showing a single large area where windows can be moved between monitors and overlap from one monitor to the other. Starting the X server with the Xinerama extension can be done for example like this: $ xinit -- +xinerama 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Author: Henrik Harmsen. GLINT(4) GLINT(4) 1mNAME0m glint - GLINT/Permedia video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "glint"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mglint 22mis an XFree86 driver for 3Dlabs & Texas Instruments GLINT/Perme- dia based video cards. The driver is rather fully accelerated, and pro- vides support for the following framebuffer depths: 8, 15 (may give bad results with FBDev support), 16, 24 (32 bpp recommended, 24 bpp has problems), 30, and an 8+24 overlay mode. 1mSUPPORTED HARDWARE0m The 1mglint 22mdriver supports 3Dlabs (GLINT MX, GLINT 500TX, GLINT 300SX, GLINT GAMMA, GLINT DELTA, GLINT GAMMA2, Permedia, Permedia 2, Permedia 2v, Permedia 3, R3, R4) and Texas Instruments (Permedia, Permedia 2) chips. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects the chipset type, but the following 1mChipSet0m names may optionally be specified in the config file 1m"Device" 22msection, and will override the auto-detection: "ti_pm2", "ti_pm", "r4", "pm3", "pm2v", "pm2", "pm", "300sx", "500tx", "mx", "gamma", "gamma2", "delta" The driver will try to auto-detect the amount of video memory present for all chips. If it's not detected correctly, the actual amount of video memory should be specified with a 1mVideoRam 22mentry in the config file 1m"Device" 22msection. Additionally, you may need to specify the bus ID of your card with a 1mBusID 22mentry in the config file 1m"Device" 22msection, especially with FBDev support. The following driver 1mOptions 22mare supported: 1mOption "UseFlatPanel" "4m22mboolean24m1m"0m Enable the FlatPanel feature on the Permedia3. Default: off. 1mOption "SWCursor" "4m22mboolean24m1m"0m Enable or disable the SW cursor. Default: off. This option disables the 1mHWCursor 22moption and vice versa. 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "Overlay"0m Enable 8+24 overlay mode. Only appropriate for depth 24, 32 bpp. (1mNote: 22mThis hasn't been tested with FBDev support and probably won't work.) Recognized values are: "8,24", "24,8". Default: off. 1mOption "PciRetry" "4m22mboolean24m1m"0m Enable or disable PCI retries. (1mNote: 22mThis doesn't work with Permedia2 based cards for Amigas.) Default: off. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. (1mNote:0m This disables hardware acceleration.) Default: off. 1mOption "UseFBDev" "4m22mboolean24m1m"0m Enable or disable use of an OS-specific fb interface (which is not supported on all OSs). See fbdevhw(4) for further informa- tion. Default: off. 1mOption "BlockWrite" "4m22mboolean24m1m"0m Enable or disable block writes for the various Permedia 2 chips. This improves acceleration in general, but disables it for some special cases. Default: off. 1mOption "FireGL3000" "4m22mboolean24m1m"0m If you have a card of the same name, turn this on. Default: off. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Alan Hourihane, Dirk Hohndel, Stefan Dirsch, Michel Danzer, Sven Luther I128(4) I128(4) 1mNAME0m i128 - Number 9 I128 video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "i128"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mi128 22mis an XFree86 driver for Number 9 I128 video cards. The driver is accelerated and provides support for all versions of the I128 chip fam- ily, including the SGI flatpanel configuration. Multi-head configura- tions are supported. 1mSUPPORTED HARDWARE0m The 1mi128 22mdriver supports PCI and AGP video cards based on the following I128 chips: 1mI128 rev 1 22m(original) 1mI128-II0m 1mI128-T2R 22mTicket 2 Ride 1mI128-T2R4 22mTicket 2 Ride IV 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects the chipset type and may not be overridden. The driver auto-detects the amount of video memory present for all chips and may not be overridden. The following driver 1mOptions 22mare supported: 1mOption "HWCursor" "4m22mboolean24m1m"0m Enable or disable the HW cursor. Default: on. 1mOption "SWCursor" "4m22mboolean24m1m"0m Enable or disable the SW cursor. Default: off. 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "SyncOnGreen" "4m22mboolean24m1m"0m Enable or disable combining the sync signals with the green sig- nal. Default: off. 1mOption "Dac6Bit" "4m22mboolean24m1m"0m Reduce DAC operations to 6 bits. Default: false. 1mOption "Debug" "4m22mboolean24m1m"0m This turns on verbose debug information from the driver. Default: off. The following additional 1mOptions 22mare supported: 1mOption "ShowCache" "4m22mboolean24m1m"0m Enable or disable viewing offscreen cache memory. A development debug option. Default: off. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Robin Cutshaw (driver), Galen Brooks (flatpanel sup- port). I740(4) I740(4) 1mNAME0m i740 - Intel i740 video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "i740"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mi740 22mis an XFree86 driver for Intel i740 video cards. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m The 1mi740 22mdriver supports... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: ... I810(4) I810(4) 1mNAME0m i810 - Intel 8xx integrated graphics chipsets 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "i810"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mi810 22mis an XFree86 driver for Intel integrated graphics chipsets. The driver supports depths 8, 15, 16 and 24. All visual types are sup- ported in depth 8. For the i810/i815 other depths support the True- Color and DirectColor visuals. For the 830M and later, only the True- Color visual is supported for depths greater than 8. The driver sup- ports hardware accelerated 3D via the Direct Rendering Infrastructure (DRI), but only in depth 16 for the i810/i815 and depths 16 and 24 for the 830M and later. 1mSUPPORTED HARDWARE0m 1mi810 22msupports the i810, i810-DC100, i810e, i815, 830M, 845G, 852GM, 855GM, 865G, 915G and 915GM chipsets. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The Intel 8xx family of integrated graphics chipsets has a unified mem- ory architecture and uses system memory for video ram. For the i810 and i815 familiy of chipset, operating system support for allocating system memory for video use is required in order to use this driver. For the 830M and later, this is required in order for the driver to use more video ram than has been pre-allocated at boot time by the BIOS. This is usually achieved with an "agpgart" or "agp" kernel driver. Linux, and recent versions of FreeBSD, OpenBSD and NetBSD have such kernel drivers available. By default 8 Megabytes of system memory are used for graphics. For the 830M and later, the default is 8 Megabytes when DRI is not enabled and 32 Megabytes with DRI is enabled. This amount may be changed with the 1mVideoRam 22mentry in the config file 1mDevice 22msection. It may be set to any reasonable value up to 64MB for older chipsets or 128MB for newer chipets. It is advisable to check the XFree86 log file to check if any features have been disabled because of insufficient video memory. In particular, DRI support or tiling mode may be disabled with insuffi- cient video memory. Either of these being disabled will reduce perfor- mance for 3D applications. Note however, that increasing this value too much will reduce the amount of system memory available for other applications. The driver makes use of the video BIOS to program video modes for the 830M and later. This limits the video modes that can be used to those provided by the video BIOS, and to those that will fit into the amount of video memory that the video BIOS is aware of. The following driver 1mOptions 22mare supported: 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "SWCursor" "4m22mboolean24m1m"0m Disable or enable software cursor. Default: software cursor is disable and a hardware cursor is used for configurations where the hardware cursor is available. 1mOption "ColorKey" "4m22minteger24m1m"0m This sets the default pixel value for the YUV video overlay key. Default: undefined. 1mOption "CacheLines" "4m22minteger24m1m"0m This allows the user to change the amount of graphics memory used for 2D acceleration and video. Decreasing this amount leaves more for 3D textures. Increasing it can improve 2D per- formance at the expense of 3D performance. Default: depends on the resolution, depth, and available video memory. The driver attempts to allocate at least enough to hold two DVD-sized YUV buffers by default. The default used for a specific configura- tion can be found by examining the XFree86 log file. 1mOption "DRI" "4m22mboolean24m1m"0m Disable or enable DRI support. Default: DRI is enabled for con- figurations where it is supported. The following driver 1mOptions 22mare supported for the i810 and i815 chipsets: 1mOption "DDC" "4m22mboolean24m1m"0m Disable or enable DDC support. Default: enabled. 1mOption "Dac6Bit" "4m22mboolean24m1m"0m Enable or disable 6-bits per RGB for 8-bit modes. Default: 8-bits per RGB for 8-bit modes. 1mOption "XvMCSurfaces" "4m22minteger24m1m"0m This option enables XvMC. The integer parameter specifies the number of surfaces to use. Valid values are 6 and 7. Default: XvMC is disabled. The following driver 1mOptions 22mare supported for the 830M and later chipsets: 1mOption "VBERestore" "4m22mboolean24m1m"0m Enable or disable the use of VBE save/restore for saving and restoring the initial text mode. This is disabled by default because it causes lockups on some platforms. However, there are some cases where it must enabled for the correct restoration of the initial video mode. If you are having a problem with that, try enabling this option. Default: Disabled. 1mOption "VideoKey" "4m22minteger24m1m"0m This is the same as the 1m"ColorKey" 22moption described above. It is provided for compatibility with most other drivers. 1mOption "XVideo" "4m22mboolean24m1m"0m Disable or enable XVideo support. Default: XVideo is enabled for configurations where it is supported. 1mOption "MonitorLayout" "4m22manystr24m1m"0m Allow different monitor configurations. e.g. "CRT,LFP" will con- figure a CRT on Pipe A and an LFP on Pipe B. Regardless of the primary heads' pipe it is always configured as ",". Additionally you can add different configu- rations such as "CRT+DFP,LFP" which would put a digital flat panel and a CRT on pipe A, and a local flat panel on pipe B. For single pipe configurations you can just specify the monitors types on Pipe A, such as "CRT+DFP" which will enable the CRT and DFP on Pipe A. Valid monitors are CRT, LFP, DFP, TV, CRT2, LFP2, DFP2, TV2 and NONE. NOTE: Some configurations of monitor types may fail, this depends on the Video BIOS and system con- figuration. Default: Not configured, and will use the current head's pipe and monitor. 1mOption "Clone" "4m22mboolean24m1m"0m Enable Clone mode on pipe B. This will setup the second head as a complete mirror of the monitor attached to pipe A. NOTE: Video overlay functions will not work on the second head in this mode. If you require this, then use the MonitorLayout above and do (as an example) "CRT+DFP,NONE" to configure both a CRT and DFP on Pipe A to achieve local mirroring and disable the use of this option. Default: Clone mode on pipe B is disabled. 1mOption "CloneRefresh" "4m22minteger24m1m"0m When the Clone option is specified we can drive the second moni- tor at a different refresh rate than the primary. Default: 60Hz. 1mOption "CheckDevices" "4m22mboolean24m1m"0m On mobile platforms it's desirable to monitor the device status and switch the outputs accordingly. For example, when the lid is opened or closed, or when using hotkeys without ACPI support. By default this option is on for mobile platforms and is not avail- able on desktop systems. Default: enabled. 1mOption "FixedPipe" "4m22manystr24m1m"0m When using a dual pipe system, it may be preferable to fix the primary pipe such that if you boot up on an external screen you may want the internal flat panel to be the primary. Using this option will allow this. Options are A or B. Default: disabled (uses current pipe as primary). 1mOption "DisplayInfo" "4m22mboolean24m1m"0m It has been found that a certain BIOS call can lockup the Xserver because of a problem in the Video BIOS. The log file will identify if you are suffering from this problem and tell you to turn this option off. Default: enabled 1mOption "DevicePresence" "4m22mboolean24m1m"0m Tell the driver to perform an active detect of the currently connected monitors. This option is useful if the monitor was not connected when the machine has booted, but unfortunately it doesn't always work and is extremely dependent upon the Video BIOS. Default: disabled 1mOption "Rotate" "CW"0m 1mOption "Rotate" "CCW"0m Rotate the desktop 90 degrees clockwise or counterclockwise. This option forces the ShadowFB option on, and disables acceler- ation. Default: no rotation. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. This option disables acceleration. Default: off. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Keith Whitwell, and also Jonathan Bian, Matthew J Sot- tek, Jeff Hartmann, Mark Vojkovich, Alan Hourihane, H. J. Lu. 830M and 845G support reworked for XFree86 4.3 by David Dawes and Keith Whitwell. 852GM, 855GM, and 865G support added by David Dawes and Keith Whitwell. 915G and 915GM support added by Alan Hourihane and Keith Whitwell. Dual Head, Clone and lid status support added by Alan Hourihane. IMSTT(4) IMSTT(4) 1mNAME0m imstt - Integrated Micro Solutions Twin Turbo 128 driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "imstt"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mimstt 22mis an XFree86 driver for Integrated Micro Solutions Twin Turbo 128 video chips. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m The 1mimstt 22mdriver supports... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: ... MGA(4) MGA(4) 1mNAME0m mga - Matrox video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "mga"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mmga 22mis an XFree86 driver for Matrox video cards. The driver is fully accelerated, and provides support for the following framebuffer depths: 8, 15, 16, 24, and an 8+24 overlay mode. All visual types are sup- ported for depth 8, and both TrueColor and DirectColor visuals are sup- ported for the other depths except 8+24 mode which supports Pseudo- Color, GrayScale and TrueColor. Multi-card configurations are sup- ported. XVideo is supported on G200 and newer systems, with either 1mTexturedVideo 22mor video overlay. The second head of dual-head cards is supported for the G450 and G550. Support for the second head on G400 cards requires a binary-only "mga_hal" module that is available from Matrox , and may be on the CD supplied with the card. That module also provides various other enhancements, and may be necessary to use the DVI (digital) output on the G550 (and other cards). 1mSUPPORTED HARDWARE0m The 1mmga 22mdriver supports PCI and AGP video cards based on the following Matrox chips: 1mMGA2064W 22mMillennium (original) 1mMGA1064SG 22mMystique 1mMGA2164W 22mMillennium II 1mG1000m 1mG200 22mMillennium G200 and Mystique G200 1mG4000m 1mG4500m 1mG5500m 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects the chipset type, but the following 1mChipSet0m names may optionally be specified in the config file 1m"Device" 22msection, and will override the auto-detection: "mga2064w", "mga1064sg", "mga2164w", "mga2164w agp", "mgag100", "mgag200", "mgag200 pci", "mgag400", "mgag550". The G450 is Chipset "mgag400" with ChipRev 0x80. The driver will auto-detect the amount of video memory present for all chips except the Millennium II. In the Millennium II case it defaults to 4096 kBytes. When using a Millennium II, the actual amount of video memory should be specified with a 1mVideoRam 22mentry in the config file 1m"Device" 22msection. The following driver 1mOptions 22mare supported: 1mOption "ColorKey" "4m22minteger24m1m"0m Set the colormap index used for the transparency key for the depth 8 plane when operating in 8+24 overlay mode. The value must be in the range 2-255. Default: 255. 1mOption "HWCursor" "4m22mboolean24m1m"0m Enable or disable the HW cursor. Default: on. 1mOption "MGASDRAM" "4m22mboolean24m1m"0m Specify whether G100, G200 or G400 cards have SDRAM. The driver attempts to auto-detect this based on the card's PCI subsystem ID. This option may be used to override that auto-detection. The mga driver is not able to auto-detect the presence of of SDRAM on secondary heads in multihead configurations so this option will often need to be specified in multihead configura- tions. Default: auto-detected. 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "NoHal" "4m22mboolean24m1m"0m Disable or enable loading the "mga_hal" module. Default: the module is loaded when available and when using hardware that it supports. 1mOption "OverclockMem"0m Set clocks to values used by some commercial X-Servers (G100, G200 and G400 only). Default: off. 1mOption "Overlay" "4m22mvalue24m1m"0m Enable 8+24 overlay mode. Only appropriate for depth 24. Rec- ognized values are: "8,24", "24,8". Default: off. (1mNote: 22mthe G100 is unaccelerated in the 8+24 overlay mode due to a missing hardware feature.) 1mOption "PciRetry" "4m22mboolean24m1m"0m Enable or disable PCI retries. Default: off. 1mOption "Rotate" "CW"0m 1mOption "Rotate" "CCW"0m Rotate the display clockwise or counterclockwise. This mode is unaccelerated. Default: no rotation. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. Default: off. 1mOption "SyncOnGreen" "4m22mboolean24m1m"0m Enable or disable combining the sync signals with the green sig- nal. Default: off. 1mOption "UseFBDev" "4m22mboolean24m1m"0m Enable or disable use of on OS-specific fb interface (and is not supported on all OSs). See fbdevhw(4) for further information. Default: off. 1mOption "VideoKey" "4m22minteger24m1m"0m This sets the default pixel value for the YUV video overlay key. Default: undefined. 1mOption "TexturedVideo" "4m22mboolean24m1m"0m This has XvImage support use the texture engine rather than the video overlay. This option is only supported by the G200 and G400, and only in 16 and 32 bits per pixel. Default: off. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Radoslaw Kapitan, Mark Vojkovich, and also David Dawes, Guy Desbief, Dirk Hohndel, Doug Merritt, Andrew E. Mileski, Andrew van der Stock, Leonard N. Zubkoff, Andrew C. Aitchison. NEOMAGIC(4) NEOMAGIC(4) 1mNAME0m neomagic - Neomagic video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "neomagic"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mneomagic 22mis an XFree86 driver for the Neomagic graphics chipsets found in many laptop computers. 1mSUPPORTED HARDWARE0m 1mneomagic 22msupports the following chipsets: MagicGraph 128 (NM2070) MagicGraph 128V (NM2090) MagicGraph 128ZV (NM2093) MagicGraph 128ZV+ (NM2097) MagicGraph 128XD (NM2160) MagicGraph 256AV (NM2200) MagicGraph 256AV+ (NM2230) MagicGraph 256ZX (NM2360) MagicGraph 256XL+ (NM2380) The driver supports depths 8, 15, 16 and 24 for all chipsets except the NM2070 which does not support depth 24. All depths are accelerated except for depth 24 which is only accelerated on NM2200 and newer mod- els. All visuals are supported in depth 8. TrueColor and DirectColor visuals are supported in the other depths. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The following driver 1mOptions 22mare supported: 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "SWCursor" "4m22mboolean24m1m"0m Disable or enable software cursor. Default: software cursor is disable and a hardware cursor is used. 1mOption "PCIBurst" "4m22mboolean24m1m"0m Disable or enable PCI burst modes. Default: enabled. 1mOption "Rotate" "CW"0m 1mOption "Rotate" "CCW"0m Rotate the display clockwise or counterclockwise. This mode is unaccelerated. Default: no rotation. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. Default: off. 1mOption "OverlayMem" "4m22minteger24m1m"0m Reserve the given amount of memory (in bytes) for the XVideo overlay. On boards with limited memory, display of large XVideo buffers might fail due to insufficient available memory. Using this option solves the problem at the expense of reducing the memory available for other operations. For full-resolution DVDs, 829440 bytes (720x576x2) are necessary. 1mNote0m On some laptops using the 2160 chipset (MagicGraph 128XD) the following options are needed to avoid a lock-up of the graphic engine: Option "XaaNoScanlineImageWriteRect" Option "XaaNoScanlineCPUToScreenColorExpandFill" 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Jens Owen, Kevin E. Martin, and also Egbert Eich, Mark Vojkovich, Alan Hourihane. NEWPORT(4) NEWPORT(4) 1mNAME0m newport - Newport video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "newport"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mnewport 22mis an XFree86 driver for the SGI Indy's and Indigo2's newport video cards. 1mSUPPORTED HARDWARE0m The 1mnewport 22mdriver supports the Newport (also called XL) cards found in SGI Indys and Indigo2s. It supports both the 8bit and 24bit versions of the Newport. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The following driver 1mOptions 22mare supported: 1mOption "bitplanes" "4m22minteger24m1m"0m number of bitplanes of the board (8 or 24) Default: auto- detected. 1mOption "HWCursor" "4m22mboolean24m1m"0m Enable or disable the HW cursor. Default: on. 1mOption "BusID" "4m22minteger24m1m"0m Set to 1 for the Indigo2 XL. Default: 0 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors: Guido GÜnther 4magx@sigxcpu.org0m NSC(4) NSC(4) 1mNAME0m nsc - Nsc video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "nsc"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mnsc 22mis an XFree86 driver for National Semiconductors GEODE processor family. It uses the DURANGO kit provided by National Semiconductor. The driver is accelerated, and provides support for the following framebuffer depths: 8, 16 and 24. 1mSUPPORTED HARDWARE0m The 1mnsc 22mdriver supports GXLV (5530 companion chip), SC1200, SC1400 and GX2 (5535 companion chip). 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver will auto-detect the amount of video memory present for all chips. If the amount of memory is detected incorrectly, the actual amount of video memory should be specified with a 1mVideoRam 22mentry in the config file 1m"Device" 22msection. The following driver 1mOptions 22mare supported: 1mOption "SWCursor" "4m22mboolean24m1m"0m Enable or disable the SW cursor. Default: off. 1mOption "HWCursor" "4m22mboolean24m1m"0m Enable or disable the HW cursor. Default: on. 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "NoCompression" "4m22mboolean24m1m"0m Disable or enable compression. Default: compression is enabled. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. Default: off. 1mOption "Rotate" "CW"0m Rotate the display clockwise. This mode is unaccelerated, and uses the Shadow Frame Buffer layer. Default: no rotation. 1mOption "Rotate" "CCW"0m Rotate the display counterclockwise. This mode is unaccelerated, and uses the Shadow Frame Buffer layer. Default: no rotation. 1mOption "FlatPanel" "4m22mboolean24m1m"0m This enables the FlatPanel display unit. The FlatPanel depends on the BIOS to do the Panel h/w initialization. In GX2 based platforms with TFT part Flatpanel is enabled, and on CRT part is disabled. Default: off. 1mOption "OSMImageBuffers" "4m22minteger24m1m"0m This sets the number of scanline buffers to be allocated in off- screen memory for acceleration. This can take any value 0 will disable the allocation. Disabled if cannot allocate requested scanline memory. Default: 20. 1mOption "ColorKey" "4m22minteger24m1m"0m This sets the default pixel value for the YUV video overlay key. Default: 0. The following 1mOptions 22mare supported only on SC1200 based platforms: 1mOption "TV" "PAL-768x576"0m Selects the PAL TV display mode 768x576 and the depth is forced to 16 bpp. Default: no TV. 1mOption "TV" "PAL-720x576"0m Selects the PAL TV display mode 720x576 and the depth is forced to 16 bpp. Default: no TV. 1mOption "TV" "NTSC-720x480"0m Selects the NTSC TV display mode 720x480 and the depth is forced to 16 bpp. Default: no TV. 1mOption "TV" "NTSC-640x480"0m Selects the NTSC TV display mode 640x480 and the depth is forced to 16 bpp. Default: no TV. 1mOption "TV_Output" "COMPOSITE"0m The selected TV mode output is coded for Composite signal. Default: no TV. 1mOption "TV_Output" "SVIDEO"0m The selected TV mode output is coded for SVIDEO signal. Default: no TV. 1mOption "TV_Output" "YUV"0m The selected TV mode output is coded for YUV signal. Default: no TV. 1mOption "TV_Output" "SCART"0m The selected TV mode output is coded for SCART signal. Default: no TV. 1mOption "TVOverscan" x:yy:ww:hh"0m This option will let only the viewable display area smaller to be able to view on TV. The parameters xx: X-offset, yy: Y-off- set, ww: Viewable width, hh: Viewable height. Default: no TV. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHOR0m Author: Sarma V. Kolluru NV(4) NV(4) 1mNAME0m nv - NVIDIA video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "nv"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mnv 22mis an XFree86 driver for NVIDIA video cards. The driver supports 2D acceleration and provides support for the following framebuffer depths: 8, 15, 16 (except Riva128) and 24. All visual types are supported for depth 8, TrueColor and DirectColor visuals are supported for the other depths with the exception of the Riva128 which only supports TrueColor in the higher depths. 1mSUPPORTED HARDWARE0m The 1mnv 22mdriver supports PCI, PCI-Express and AGP video cards based on the following NVIDIA chips: 1mRIVA 128 22mNV3 1mRIVA TNT 22mNV4 1mRIVA TNT2 22mNV5 1mGeForce 256, QUADRO 22mNV10 1mGeForce2, QUADRO2 22mNV11 & NV15 1mGeForce3, QUADRO DCC 22mNV20 1mnForce, nForce2 22mNV1A, NV1F 1mGeForce4, QUADRO4 22mNV17, NV18, NV25, NV28 1mGeForce FX, QUADRO FX 22mNV30, NV31, NV34, NV35, NV36, NV37, NV38 1mGeForce 6XXX 22mNV40, NV41, NV43, NV44, NV45, C51 1mGeForce 7XXX 22mG70, G71, G72, G73 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects the chipset type and the amount of video memory present for all chips. The following driver 1mOptions 22mare supported: 1mOption "HWCursor" "4m22mboolean24m1m"0m Enable or disable the HW cursor. Default: on. 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "UseFBDev" "4m22mboolean24m1m"0m Enable or disable use of an OS-specific fb interface (and is not supported on all OSs). See fbdevhw(4) for further information. Default: off. 1mOption "CrtcNumber" "4m22minteger24m1m"0m Many graphics cards with NVIDIA chips have two video outputs. The driver attempts to autodetect which one the monitor is con- nected to. In the case that autodetection picks the wrong one, this option may be used to force usage of a particular output. The options are "0" or "1". Default: autodetected. 1mOption "FlatPanel" "4m22mboolean24m1m"0m The driver usually can autodetect the presence of a digital flat panel. In the case that this fails, this option can be used to force the driver to treat the attached device as a digital flat panel. With this driver, a digital flat panel will work only if it was POSTed by the BIOS, that is, the computer must have booted to the panel. If you have a dual head card you may also need to set the option CrtcNumber described above. Default: autodetected. 1mOption "FPDither" "4m22mboolean24m1m"0m Many digital flat panels (particularly ones on laptops) have only 6 bits per component color resolution. This option tells the driver to dither from 8 bits per component to 6 before the flat panel truncates it. Default: off. 1mOption "FPScale" "4m22mboolean24m1m"0m Supported only on GeForce4 and newer chips, this option tells to the driver to scale lower resolutions up to the flat panel's native resolution. Default: on. 1mOption "Rotate" "CW"0m 1mOption "Rotate" "CCW"0m Rotate the display clockwise or counterclockwise. This mode is unaccelerated. Default: no rotation. Note: The Resize and Rotate extension will be disabled if the Rotate option is used. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. Default: off. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: David McKay, Jarno Paananen, Chas Inman, Dave Schmenk, Mark Vojkovich RENDITION(4) RENDITION(4) 1mNAME0m rendition - Rendition video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "rendition"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mrendition 22mis an XFree86 driver for Rendition/Micron based video cards. The driver supports following framebuffer depths: 8, 15 (Verite V1000 only), 16 and 24. Acceleration and multi-head configurations are not supported yet, but are work in progress. 1mSUPPORTED HARDWARE0m The 1mrendition 22mdriver supports PCI and AGP video cards based on the fol- lowing Rendition/Micron chips: 1mV1000 22mVerite V1000 based cards. 1mV2100 22mVerite V2100 based cards. Diamond Stealth II S220 is the only known such card. 1mV2200 22mVerite V2200 based cards. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects the chipset type, but the following 1mChipSet0m names may optionally be specified in the config file 1m"Device" 22msection, and will override the auto-detection: "v1000", "v2x00". The driver will auto-detect the amount of video memory present for all chips. If the amount of memory is detected incorrectly, the actual amount of video memory should be specified with a 1mVideoRam 22mentry in the config file 1m"Device" 22msection. The following driver 1mOptions 22mare supported: 1mOption "SWCursor" "4m22mboolean24m1m"0m Disables use of the hardware cursor. Default: use HW-cursor. 1mOption "OverclockMem" "4m22mboolean24m1m"0m Increases the Mem/Sys clock to 125MHz/60MHz from standard 110MHz/50MHz. Default: Not overclocked. 1mOption "DacSpeed" "4m22mMHz24m1m"0m Run the memory at a higher clock. Useful on some cards with dis- play glitches at higher resolutions. But adds the risk to damage the hardware. Use with caution. 1mOption "FramebufferWC" "4m22mboolean24m1m"0m If writecombine is disabled in BIOS, and you add this option in configuration file, then the driver will try to request write- combined access to the framebuffer. This can drastically increase the performance on unaccelerated server. Requires that "MTRR"-support is compiled into the OS-kernel. Default: Dis- abled for V1000, enabled for V2100/V2200. 1mOption "NoDDC" "4m22mboolean24m1m"0m Disable probing of DDC-information from your monitor. This information is not used yet and is only there for informational purposes. This might change before final XFree86 4.0 release. Safe to disable if you experience problems during startup of X- server. Default: Probe DDC. 1mOption "ShadowFB" "4m22mboolean24m1m"0m If this option is enabled, the driver will cause the CPU to do each drawing operation first into a shadow frame buffer in sys- tem virtual memory and then copy the result into video memory. If this option is not active, the CPU will draw directly into video memory. Enabling this option is beneficial for those sys- tems where reading from video memory is, on average, slower than the corresponding read/modify/write operation in system virtual memory. This is normally the case for PCI or AGP adapters, and, so, this option is enabled by default unless acceleration is enabled. Default: Enabled unless acceleration is used. 1mOption "Rotate" "CW"0m 1mOption "Rotate" "CCW"0m Rotate the display clockwise or counterclockwise. This mode is unaccelerated. Default: no rotation. 1mNotes 22mFor the moment the driver defaults to not request write- combine for any chipset as there has been indications of prob- lems with it. Use 1mOption "MTRR" 22mto let the driver request write- combining of memory access on the video board. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Marc Langenbach, Dejan Ilic s3virge(4) s3virge(4) 1mNAME0m s3virge - S3 ViRGE video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "s3virge"0m ... [ 1mOption 22m"optionname" ["optionvalue"]] 1mEndSection0m 1mDESCRIPTION0m 1ms3virge 22mis an XFree86 driver for S3 based video cards. The driver is fully accelerated, and provides support for the following framebuffer depths: 8, 15, 16, and 24. All visual types are supported for depth 8, and TrueColor visuals are supported for the other depths. XVideo hard- ware up scaling is supported in depth 16 and 24 on the DX, GX, GX2, MX, MX+, and Trio3D/2X. Doublescan modes are supported and tested in depth 8 and 16 on DX, but disable XVideo. Doublescan modes on other chipsets are untested. 1mSUPPORTED HARDWARE0m The 1ms3virge 22mdriver supports PCI and AGP video cards based on the fol- lowing S3 chips: 1mViRGE 22m86C325 1mViRGE VX 22m86C988 1mViRGE DX 22m86C375 1mViRGE GX 22m86C385 1mViRGE GX2 22m86C357 1mViRGE MX 22m86C260 1mViRGE MX+ 22m86C280 1mTrio 3D 22m86C365 1mTrio 3D/2X 22m86C362, 86C368 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. All options names are case and white space insensitive when parsed by the server, for example, "virge vx" and "VIRGEvx" are equivalent. The driver auto-detects the chipset type, but the following 1mChipSet0m names may optionally be specified in the config file 1m""Device"" 22msec- tion, and will override the auto-detection: "virge", "86c325", "virge vx", "86c988", "virge dx", "86c375", "virge gx", "86c385", "virge gx2", "86c357", "virge mx", "86c260", "virge mx+", "86c280", "trio 3d", "86c365", "trio 3d/2x", "86c362", "86c368". The following Cursor 1mOptions 22mare supported: 1mOption "HWCursor" ["4m22mboolean24m1m"]0m Enable or disable the HW cursor. Default: on. 1mOption "SWCursor" ["4m22mboolean24m1m"]0m Inverse of "HWCursor". Default: off. The following display 1mOptions 22mare supported: 1mOption "ShadowFB" ["4m22mboolean24m1m"]0m Use shadow framebuffer. Disables HW acceleration. Default: off. 1mOption "Rotate" "22mcw 1m| 22mccw1m"0m Rotate the screen CW - clockwise or CCW - counter clockwise. Disables HW Acceleration and HW Cursor, uses ShadowFB. Default: no rotation. 1mOption "XVideo" ["22mboolean1m"]0m Disable XVideo support by using the off option. This changes FIFO settings which prevent screen noise for high-res modes. Default: on The following video memory 1mOptions 22mare supported: 1mOption "slow_edodram"0m Switch the standard ViRGE to 2-cycle edo mode. Try this if you encounter pixel corruption on the ViRGE. Using this option will cause a large decrease in performance. Default: off. 1mOption "fpm_vram"0m Switch the ViRGE/VX to fast page mode vram mode. Default: off. 1mOption "slow_dram 22m| 1mfast_dram"0m Change Trio 3D and 3D/2X memory options. Default: Use BIOS defaults. 1mOption "early_ras_precharge 22m| 1mlate_ras_precharge"0m adjust memory parameters. One of these will us the same set- tings as your video card defaults, and using neither in the con- fig file does the same. Default: none. 1mOption "set_mclk" "4m22minteger24m1m"0m sets the memory clock, where 4minteger24m is in kHz, and 4minteger24m <= 100000. Default: probe the memory clock value, and use it at server start. 1mOption "set_refclk" "4m22minteger24m1m"0m sets the ref clock for ViRGE MX, where 4minteger24m is in kHz. Default: probe the memory clock value, and use it at server start. The following acceleration and graphics engine 1mOptions 22mare supported: 1mOption "NoAccel"0m Disable acceleration. Very useful for determining if the driver has problems with drawing and acceleration routines. This is the first option to try if your server runs but you see graphic corruption on the screen. Using it decreases performance, as it uses software emulation for drawing operations the video driver can accelerate with hardware. Default: acceleration is enabled. 1mOption "fifo_aggressive 22m| 1mfifo_moderate 22m| 1mfifo_conservative"0m alter the settings for the threshold at which the pixel FIFO takes over the internal memory bus to refill itself. The smaller this threshold, the better the acceleration performance of the card. You may try the fastest setting (1mfifo_aggressive22m) and move down if you encounter pixel corruption. The optimal setting will probably depend on dot-clock and on color depth. Note that specifying any of these options will also alter other memory settings which may increase performance, so trying 1mfifo_conser-0m 1mvative 22mwill in most cases be a slight benefit (this uses the chip defaults). If pixel corruption or transient streaking is observed during drawing operations then removing any fifo options is recommended. Default: none. The following PCI bus 1mOptions 22mare supported: 1mOption "pci_burst" ["4m22mboolean24m1m"]0m will enable PCI burst mode. This should work on all but a few broken PCI chipsets, and will increase performance. Default: off. 1mOption "pci_retry" ["4m22mboolean24m1m"]0m will allow the driver to rely on PCI Retry to program the ViRGE registers. 1mpci_burst 22mmust be enabled for this to work. This will increase performance, especially for small fills/blits, because the driver does not have to poll the ViRGE before send- ing it commands to make sure it is ready. It should work on most recent PCI chipsets. Default: off. The following ViRGE MX LCD 1mOptions 22mare supported: 1mOption "lcd_center"0m 1mOption "set_lcdclk" "4m22minteger24m1m"0m allows setting the clock for a ViRGE MX LCD display. 4minteger24m is in Hz. Default: use probed value. The following additional 1mOptions 22mare supported: 1mOption "ShowCache" ["4m22mboolean24m1m"]0m Enable or disable viewing offscreen cache memory. A development debug option. Default: off. 1mOption "mx_cr3a_fix" ["4m22mboolean24m1m"]0m Enable or disable a cr3a fix added for ViRGE MX. Default: on. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mKNOWN BUGS0m The VideoRam generic driver parameter is presently ignored by the s3virge driver. On PPC this is reported to cause problems for 2M cards, because they may autodetect as 4M. 1mSUPPORT0m For assistance with this driver, or XFree86 in general, check the XFree86 web site at http://www.xfree86.org. A FAQ is available on the web site at http://www.xfree86.org/FAQ/. If you find a problem with XFree86 or have a question not answered in the FAQ please use our bug report form available on the web site or send mail to XFree86@XFree86.org. When reporting problems with the driver send as much detail as possible, including chipset type, a server output log, and operating system specifics. 1mAUTHORS0m Kevin Brosius, Matt Grossman, Harald Koenig, Sebastien Marineau, Mark Vojkovich. SAVAGE(4) SAVAGE(4) 1mNAME0m savage - S3 Savage video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "savage"0m ... 1mEndSection0m 1mDESCRIPTION0m 1msavage 22mis an XFree86 driver for the S3 Savage family video accelerator chips. The 1msavage 22mdriver supports PCI and AGP boards with the follow- ing chips: 1mSavage3D 22m(8a20 and 8a21) 1mSavage4 22m(8a22) 1mSavage2000 22m(9102) 1mSavage/MX 22m(8c10 and 8c11) 1mSavage/IX 22m(8c12 and 8c13) 1mProSavage PM133 22m(8a25) 1mProSavage KM133 22m(8a26) 1mTwister (ProSavage PN133)0m (8d01) 1mTwisterK (ProSavage KN133)0m (8d02) 1mProSavage DDR 22m(8d03) 1mProSavage DDR-K 22m(8d04) 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The following driver 1mOptions 22mare supported: 1mOption "HWCursor" "4m22mboolean24m1m"0m 1mOption "SWCursor" "4m22mboolean24m1m"0m These two options interact to specify hardware or software cur- sor. If the SWCursor option is specified, any HWCursor setting is ignored. Thus, either "HWCursor off" or "SWCursor on" will force the use of the software cursor. On Savage/MX and Sav- age/IX chips which are connected to LCDs, a software cursor will be forced, because the Savage hardware cursor does not correctly track the automatic panel expansion feature. Default: hardware cursor. 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "Rotate" "CW"0m 1mOption "Rotate" "CCW"0m Rotate the desktop 90 degrees clockwise or counterclockwise. This option forces the ShadowFB option on, and disables acceler- ation. Default: no rotation. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. This option disables acceleration. Default: off. 1mOption "LCDClock" "4m22mfrequency24m1m"0m Override the maximum dot clock. Some LCD panels produce incor- rect results if they are driven at too fast of a frequency. If UseBIOS is on, the BIOS will usually restrict the clock to the correct range. If not, it might be necessary to override it here. The 1mfrequency 22mparameter may be specified as an integer in Hz (135750000), or with standard suffixes like "k", "kHz", "M", or "MHz" (as in 135.75MHz). 1mOption "UseBIOS" "4m22mboolean24m1m"0m Enable or disable use of the video BIOS to change modes. Ordi- narily, the 1msavage 22mdriver tries to use the video BIOS to do mode switches. This generally produces the best results with the mobile chips (/MX and /IX), since the BIOS knows how to handle the critical but unusual timing requirements of the various LCD panels supported by the chip. To do this, the driver searches through the BIOS mode list, looking for the mode which most closely matches the XF86Config mode line. Some purists find this scheme objectionable. If you would rather have the 1msavage0m driver use your mode line timing exactly, turn off the UseBios option. Default: on (use the BIOS). 1mOption "ShadowStatus" "4m22mboolean24m1m"0m Enables the use of a shadow status register. There is a chip bug in the Savage graphics engine that can cause a bus lock when reading the engine status register under heavy load, such as when scrolling text or dragging windows. The bug affects about 4% of all Savage users. If your system hangs regularly while scrolling text or dragging windows, try turning this option on. This uses an alternate method of reading the engine status which is slightly more expensive, but avoids the problem. Default: off (use normal status register). 1mFILES0m savage_drv.o 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include Tim Roberts (timr@probo.com) and Ani Joshi (ajoshi@unixbox.com) for the 4.0 version, and Tim Roberts and S. Marineau for the 3.3 driver from which this was derived. siliconmotion(4) siliconmotion(4) 1mNAME0m siliconmotion - Silicon Motion video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "siliconmotion"0m ... [ 1mOption 22m"optionname" ["optionvalue"]] 1mEndSection0m 1mDESCRIPTION0m 1msiliconmotion 22mis an XFree86 driver for Silicon Motion based video cards. The driver is fully accelerated, and provides support for the following framebuffer depths: 8, 16, and 24. All visual types are sup- ported for depth 8, and TrueColor visuals are supported for the other depths. 1mSUPPORTED HARDWARE0m The 1msiliconmotion 22mdriver supports PCI and AGP video cards based on the following Silicon Motion chips: 1mLynx 22mSM910 1mLynxE 22mSM810 1mLynx3D 22mSM820 1mLynxEM 22mSM710 1mLynxEM+ 22mSM712 1mLynx3DM 22mSM720 1mCougar3DR 22mSM730 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. All options names are case and white space insensitive when parsed by the server, for example, "lynxe" and "LynxE" are equivalent. The driver auto-detects the chipset type, but the following 1mChipSet0m names may optionally be specified in the config file 1m"Device" 22msection, and will override the auto-detection: "lynx", "lynxe", "lynx3d", "lynxem", "lynxem+", "lynx3dm", "cougar3dr". The following Cursor 1mOptions 22mare supported: 1mOption "HWCursor" "4m22mboolean24m1m"0m Enable or disable the HW cursor. Default: on. 1mOption "SWCursor" "4m22mboolean24m1m"0m Inverse of "HWCursor". Default: off. The following display 1mOptions 22mare supported: 1mOption "ShadowFB" "4m22mboolean24m1m"0m Use shadow framebuffer. Default: off. 1mOption "Rotate" "CW"0m 1mOption "Rotate" "CCW"0m Rotate the screen CW - clockwise or CCW - counter clockwise. Uses ShadowFB. Default: no rotation. 1mOption "VideoKey" "4m22minteger24m1m"0m Set the video color key. Default: a little off full blue. 1mOption "ByteSwap" "4m22mboolean24m1m"0m Turn on byte swapping for capturing using SMI demo board. Default: off. 1mOption "Interlaced" "4m22mboolean24m1m"0m Turn on interlaced video capturing. Default: off. 1mOption "UseBIOS" "4m22mboolean24m1m"0m Use the BIOS to set the modes. This is used for custom panel timings. Default: on. 1mOption "ZoomOnLCD" "4m22mboolean24m1m"0m Allow changing resolution on LCD (Ctrl-Alt-Plus and Ctrl-Alt- Minus). Default: off. The following video memory 1mOptions 22mare supported: 1mOption "set_mclk" "4m22minteger24m1m"0m sets the memory clock, where 4minteger24m is in kHz, and 4minteger24m <= 100000. Default: probe the memory clock value, and use it at server start. The following acceleration and graphics engine 1mOptions 22mare supported: 1mOption "NoAccel"0m Disable acceleration. Very useful for determining if the driver has problems with drawing and acceleration routines. This is the first option to try if your server runs but you see graphic corruption on the screen. Using it decreases performance, as it uses software emulation for drawing operations the video driver can accelerate with hardware. Default: acceleration is enabled. 1mOption "fifo_aggressive"0m 1mOption "fifo_moderate"0m 1mOption "fifo_conservative"0m alter the settings for the threshold at which the pixel FIFO takes over the internal memory bus to refill itself. The smaller this threshold, the better the acceleration performance of the card. You may try the fastest setting (1mfifo_aggressive22m) and move down if you encounter pixel corruption. The optimal setting will probably depend on dot-clock and on color depth. Note that specifying any of these options will also alter other memory settings which may increase performance, so trying 1mfifo_conser-0m 1mvative 22mwill in most cases be a slight benefit (this uses the chip defaults). If pixel corruption or transient streaking is observed during drawing operations then removing any fifo options is recommended. Default: none. The following PCI bus 1mOptions 22mare supported: 1mOption "pci_burst" "4m22mboolean24m1m"0m will enable PCI burst mode. This should work on all but a few broken PCI chipsets, and will increase performance. Default: off. 1mOption "pci_retry" "4m22mboolean24m1m"0m will allow the driver to rely on PCI Retry to program the ViRGE registers. 1mpci_burst 22mmust be enabled for this to work. This will increase performance, especially for small fills/blits, because the driver does not have to poll the ViRGE before send- ing it commands to make sure it is ready. It should work on most recent PCI chipsets. Default: off. The following additional 1mOptions 22mare supported: 1mOption "ShowCache" "4m22mboolean24m1m"0m Enable or disable viewing offscreen cache memory. A development debug option. Default: off. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mSUPPORT0m For assistance with this driver, or XFree86 in general, check the XFree86 web site at http://www.xfree86.org. A FAQ is available on the web site at http://www.xfree86.org/FAQ/. If you find a problem with XFree86 or have a question not answered in the FAQ please use our bug report form available on the web site or send mail to XFree86@XFree86.org. When reporting problems with the driver send as much detail as possible, including chipset type, a server output log, and operating system specifics. 1mAUTHORS0m Kevin Brosius, Matt Grossman, Harald Koenig, Sebastien Marineau, Mark Vojkovich, Frido Garritsen, Corvin Zahn. SIS(4) SIS(4) 1mNAME0m sis - SiS video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "sis"0m ... 1mEndSection0m 1mDESCRIPTION0m 1msis 22mis an XFree86 driver for SiS (Silicon Integrated Systems) video chips. The driver is accelerated, and provides support for colordepths of 8, 16 and 24 bpp. XVideo, Render and other extensions are supported as well. 1mSUPPORTED HARDWARE0m The 1msis 22mdriver supports PCI and AGP video cards based on the following chipsets: 1mSiS5597/5598 SiS530/620 SiS6326/AGP/DVD SiS300/305 SiS540 SiS630/7300m 1mSiS315/H/PRO SiS550/551/5520m 1mSiS650/651/M650/661FX/M661FX/M661MX/740/741/741GX SiS330 (Xabre) SiS7600m In the following text, the following terms are used: 1mold series 22mfor SiS5597/5598, 530/620 and 6326/AGP/DVD 1m300 series 22mfor SiS300/305, 540 and 630/730 1m315/330 series 22mfor SiS315, 55x and (M)65x/(M)661xX/74x(GX), 330, 760 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. Detailed information on all supported options can be obtained at http://www.winischhofer.net/linuxsisvga.shtml This manpage only covers a subset of the supported options. 4m1.24m 4mFor24m 4mall24m 4msupported24m 4mchipsets0m The following driver 1mOptions 22mare supported on all chipsets: 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable 2D acceleration. Default: acceleration is enabled. 1mOption "HWCursor" "4m22mboolean24m1m"0m Enable or disable the HW cursor. Default: HWCursor is on. 1mOption "SWCursor" "4m22mboolean24m1m"0m The opposite of HWCursor. Default: SWCursor is off. 1mOption "Rotate" "CW"0m Rotate the display clockwise. This mode is unaccelerated, and uses the Shadow Frame Buffer layer. Using this option disables the Resize and Rotate extension (RandR). Default: no rotation. 1mOption "Rotate" "CCW"0m Rotate the display counterclockwise. This mode is unaccelerated, and uses the Shadow Frame Buffer layer. Using this option dis- ables the Resize and Rotate extension (RandR). Default: no rotation. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. Default: Shadow framebuffer is off. 1mOption "CRT1Gamma" "4m22mboolean24m1m"0m Enable or disable gamma correction. Default: Gamma correction is on. 4m2.24m 4mOld24m 4mseries24m 4mspecific24m 4minformation0m The driver will auto-detect the amount of video memory present for all these chips, but in the case of the 6326, it will limit the memory size to 4MB. This is because the 6326's 2D engine can only address 4MB. The remaining memory seems to be intended for 3D texture data, since only the 3D engine can address RAM above 4MB. However, you can override this limitation using the 1m"VideoRAM" 22moption in the Device section if your board has more than 4MB and you need to use it. However, 2D accelera- tion, Xvideo and the HWCursor will be disabled in this case. The driver will also auto-detect the maximum dotclock and DAC speed. If you have problems getting high resolutions because of dot clock lim- itations, try using the 1m"DacSpeed" 22moption, also in the Device section. However, this is not recommended for the 6326. For this chip, the driver has two built-in modes for high resolutions which you should use instead. These are named 1m"SIS1280x1024-75" 22mand 1m"SIS1600x1200-60" 22mand they will be added to the list of default modes. To use these modes, just place them in your Screen section. Example: 1mModes "SIS1600x1200-60" "SIS1280x1024x75" "1024x768" ...0m Of these modes, 1280x1024 is only available at 8, 15 and 16bpp. 1600x1200 is available at 8bpp only. TV support for the 6326 TV output is supported for the 6326. The driver will auto detect a TV connected and in this case add the following modes to the list of default modes: "PAL800x600", "PAL800x600U", "PAL720x540", "PAL640x480", "NTSC640x480", "NTSC640x480U" and "NTSC640x400". Use these modes like the hi-res modes described above. The following driver 1mOptions 22mare supported on the old series: 1mOption "TurboQueue" "4m22mboolean24m1m"0m Enable or disable TurboQueue mode. Default: off for SIS530/620, on for the others 1mOption "FastVram" "4m22mboolean24m1m"0m Enable or disable FastVram mode. Enabling this sets the video RAM timing to one cycle per read operation instead of two cycles. Disabling this will set two cycles for read and write operations. Leaving this option out uses the default, which varies depending on the chipset. 1mOption "NoHostBus" "4m22mboolean24m1m"0m (SiS5597/5598 only). Disable CPU-to-VGA host bus support. This speeds up CPU to video RAM transfers. Default: Host bus is enabled. 1mOption "NoXVideo" "4m22mboolean24m1m"0m Disable XV (XVideo) extension support. Default: XVideo is on. 1mOption "NoYV12" "4m22mboolean24m1m"0m Disable YV12 Xv support. This might me required due to hardware bugs in some chipsets. Disabling YV12 support forces Xv-aware applications to use YUV2 or XShm for video output. Default: YV12 support is on. 1mOption "TVStandard" "4m22mstring24m1m"0m (6326 only) Valid parameters are 1mPAL 22mor 1mNTSC. 22mThe default is set by a jumper on the card. 1mOption "TVXPosOffset" "4m22minteger24m1m"0m (6326 only) This option allows tuning the horizontal position of the image for TV output. The range is from -16 to 16. Default: 0 1mOption "TVYPosOffset" "4m22minteger24m1m"0m (6326 only) This option allows tuning the vertical position of the image for TV output. The range is from -16 to 16. Default: 0 1mOption "SIS6326TVEnableYFilter" "4m22mboolean24m1m"0m (6326 only) This option allows enabling/disabling the Y (chroma) filter for TV output. 1mOption "SIS6326TVAntiFlicker" "4m22mstring24m1m"0m (6326 only) This option allow enabling/disabling the anti flicker facility for TV output. Possible parameters are 1mOFF,0m 1mLOW, MED, HIGH 22mor 1mADAPTIVE. 22mBy experience, 1mADAPTIVE 22myields the best results, hence it is the default. 4m2.24m 4m30024m 4mand24m 4m315/33024m 4mseries24m 4mspecific24m 4minformation0m The 300 and 315/330 series feature two CRT controllers and very often come with a video bridge for controlling LCD and TV output. Here- inafter, the term 1mCRT1 22mrefers to the VGA output of the chip, and 1mCRT20m refers to either LCD, TV or secondary VGA. Due to timing reasons, only one CRT2 output can be active at the same time. But this limitation does not apply to using CRT1 and CRT2 at the same time which makes it possible to run the driver in dual head mode. The driver supports the following video bridges: 1mSiS301 SiS301B(-DH) SiS301C SiS301LV SiS302(E)LV0m Instead of a video bridge, some machines have a 1mLVDS 22mtransmitter to control LCD panels, and a 1mChrontel 7005 22mor 1m7019 22mfor TV output. All these are supported as well. About TV output On the SiS301 and the Chrontel 7005, only resolutions up to 800x600 are supported. On all others, resolutions up to 1024x768 are supported. However, due to a hardware bug, Xvideo might be distorted on SiS video bridges if running NTSC or PAL-M at 1024x768. About XVideo support XVideo is supported on all chipsets of both families. However, there are some differences in hardware features which cause limitations. The 300 series as well as the SiS55x, M650, 651, 661FX, M661FX, and 741 support two video overlays. The SiS315/H/PRO, 650/740 and 330 support only one such overlay. On chips with two overlays, one overlay is used for CRT1, the other for CRT2. On the other chipsets, the option 1m"XvOn-0m 1mCRT2" 22mcan be used to select the desired output channel. About Merged Framebuffer support This mode is strongly recommended over Xinerama. Please see http://www.winischhofer.net/linuxsisvga.shtml for detailed information. About dual-head support Dual head mode has some limitations as regards color depth and resolu- tion. Due to memory bandwidth limits, CRT1 might have a reduced maximum refresh rate if running on higher resolutions than 1280x1024. Colordepth 8 is not supported when running in dual head mode. The following driver 1mOptions 22mare supported on the 300 and 315/330 series: 1mOption "NoXVideo" "4m22mboolean24m1m"0m Disable XV (XVideo) extension support. Default: XVideo is on. 1mOption "XvOnCRT2" "4m22mboolean24m1m"0m On chipsets with only one video overlay, this option can used to bind the overlay to CRT1 ( if a monitor is detected and if this option is either unset or set to 1mfalse 22m) or CRT2 ( if a CRT2 device is detected or forced, and if this option is set to 1mtrue0m ). If either only CRT1 or CRT2 is detected, the driver decides automatically. In Merged Framebuffer mode, this option is ignored. Default: overlay is used on CRT1 1mOption "ForceCRT1" "4m22mboolean24m1m"0m Force CRT1 to be on of off. If a monitor is connected, it will be detected during server start. However, some old monitors are not detected correctly. In such cases, you may set this option to 1mon 22min order to make the driver initialize CRT1 anyway. If this option is set to 1moff 22m, the driver will switch off CRT1. Default: auto-detect 1mOption "ForceCRT2Type" "4m22mstring24m1m"0m Force display type to one of: 1mNONE 22m, 1mTV 22m, 1mSVIDEO 22m, 1mCOMPOSITE 22m, 1mSVIDEO+COMPOSITE 22m, 1mSCART 22m, 1mLCD 22m, 1mVGA 22m; 1mNONE 22mwill disable CRT2. The SVIDEO, COMPOSITE, SVIDEO+COMPOSITE and SCART parameters are for SiS video bridges only and can be used to force the driver to use a specific TV output connector (if present). Default: auto detect. 1mOption "CRT2Gamma" "4m22mboolean24m1m"0m Enable or disable gamma correction for CRT2. Only supported for SiS video bridges. Default: Gamma correction for CRT2 is on. 1mOption "TVStandard" "4m22mstring24m1m"0m Force the TV standard to either 1mPAL 22mor 1mNTSC. 22mOn some machines with 630, 730 and the 315/330 series, 1mPALM 22m, 1mPALN 22mand 1mNTSCJ 22mare supported as well. Default: BIOS setting. 1mOption "TVXPosOffset" "4m22minteger24m1m"0m This option allows tuning the horizontal position of the image for TV output. The range is from -32 to 32. Not supported on the Chrontel 7019. Default: 0 1mOption "TVYPosOffset" "4m22minteger24m1m"0m This option allows tuning the vertical position of the image for TV output. The range is from -32 to 32. Not supported on the Chrontel 7019. Default: 0 1mOption "SISTVXScale" "4m22minteger24m1m"0m This option selects the horizontal zooming level for TV output. The range is from -16 to 16. Only supported on SiS video bridges. Default: 0 1mOption "SISTVYScale" "4m22minteger24m1m"0m This option selects the vertical zooming level for TV output in the following modes: 640x480, 800x600. On the 315/330 series, also 720x480, 720x576 and 768x576. The range is from -4 to 3. Only supported on SiS video bridges. Default: 0 1mOption "CHTVOverscan" "4m22mboolean24m1m"0m On machines with a Chrontel TV encoder, this can be used to force the TV mode to overscan or underscan. 1mon 22mmeans overscan, 1moff 22mmeans underscan. Default: BIOS setting. 1mOption "CHTVSuperOverscan" "4m22mboolean24m1m"0m On machines with a Chrontel 7005 TV encoder, this option enables a super-overscan mode. This is only supported if the TV standard is PAL. Super overscan will produce an image on the TV which is larger than the viewable area. The driver supports many more options. Please see http://www.winis- chhofer.net/linuxsisvga.shtml for more information. 4m3.24m 4m30024m 4mseries24m 4mspecific24m 4minformation0m DRI is supported on the 300 series only. On Linux, DRI requires the kernel's SiS framebuffer driver ( 1msisfb 22m) and some other modules which come with either the kernel or the X server. Sisfb takes care of memory management for texture data. In order to prevent the X Server and sisfb from overwriting each other's data, sisfb reserves an amount of video memory for the X driver. This amount can either be selected using sisfb's mem parameter, or auto-selected depending on the amount of total video RAM available. Sisfb can be used for memory management only, or as a complete frame- buffer driver. If you start sisfb with a valid mode (ie you gain a graphical console), the X driver can communicate with sisfb and doesn't require any manual configuration for finding out about the video memory it is allowed to use. However, if you are running a 2.4 series Linux kernel and use sisfb for video memory management only, ie you started sisfb with mode=none and still have a text mode console, there is no communication between sisfb and the X driver. For this purpose, the 1mOption "MaxXFBMem" "4m22minteger24m1m"0m exists. This option must be set to the same value as given to sisfb through its "mem" parameter, ie the amount of memory to use for X in kilobytes. If you started sisfb without the mem argument, sisfb will reserve 12288KB if more than 16MB of total video RAM is available, 8192KB if between 12 and 16MB of video RAM is available, 4096KB in all other cases. If you intend to use DRI, I recommend setting the total video memory in the BIOS to 64MB in order to at least overcome the lack of memory swap functions. 1mOption "DRI" "4m22mboolean24m1m"0m This option allows enabling or disabling DRI. By default, DRI is on. 1mOption "AGPSize" "4m22minteger24m1m"0m This option allows selecting the amount of AGP memory to be used for DRI. The amount is to be specified in megabyte, the default is 8. 1mKNOWN BUGS0m none. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mhttp://www.winischhofer.net/linuxsisvga.shtml 22mfor more information and updates 1mAUTHORS0m Authors include: Alan Hourihane, Mike Chapman, Juanjo Santamarta, Mitani Hiroshi, David Thomas, Sung-Ching Lin, Ademar Reis, Thomas Winischhofer SUNBW2(4) SUNBW2(4) 1mNAME0m sunbw2 - BW2 video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "sunbw2"0m ... 1mEndSection0m 1mDESCRIPTION0m 1msunbw2 22mis an XFree86 driver for Sun BW2 video cards. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m The 1msunbw2 22mdriver supports... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Jakub Jelinek SUNCG14(4) SUNCG14(4) 1mNAME0m suncg14 - CG14 video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "suncg14"0m ... 1mEndSection0m 1mDESCRIPTION0m 1msuncg14 22mis an XFree86 driver for Sun CG14 video cards. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m The 1msuncg14 22mdriver supports... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Jakub Jelinek SUNCG3(4) SUNCG3(4) 1mNAME0m suncg3 - CG3 video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "suncg3"0m ... 1mEndSection0m 1mDESCRIPTION0m 1msuncg3 22mis an XFree86 driver for Sun CG3 video cards. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m The 1msuncg3 22mdriver supports... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Jakub Jelinek SUNCG6(4) SUNCG6(4) 1mNAME0m suncg6 - GX/Turbo GX video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "suncg6"0m ... 1mEndSection0m 1mDESCRIPTION0m 1msuncg6 22mis an XFree86 driver for Sun GX and Turbo GX (also known as cgsix) video cards. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m The 1msuncg6 22mdriver supports... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Jakub Jelinek FFB(4) FFB(4) 1mNAME0m ffb - SUNFFB video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "sunffb"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mffb 22mis an XFree86 driver for Sun Creator, Creator 3D and Elite 3D video cards. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m The 1mffb 22mdriver supports... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Jakub Jelinek , David S. Miller , Michal Rehacek SUNLEO(4) SUNLEO(4) 1mNAME0m sunleo - Leo video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "sunleo"0m ... 1mEndSection0m 1mSection "Screen"0m ... 1mDevice "4m22mdevname24m1m"0m ... 1mDefaultDepth 320m ... 1mEndSection0m 1mDESCRIPTION0m 1mleo 22mis an XFree86 driver for Sun Leo (ZX) video cards. Also known as the ZX or T(urbo)ZX, Leo is a 24 bit accelerated 3D graphics card. Both cards are double-width, but the TZX also requires extra cooling in the form of an additional double-width fan card, so effectively takes up 4 SBus slots. 1mSUPPORTED HARDWARE0m The 1mleo 22mdriver supports all Sun stations that include a Leo chipset: 1mWorkstations:0m Sun 4/15, 4/30, 4/75 SPARCstation 5, 10, 20 Ultra 1, 1E, 2 1mServers:0m SPARCserver 1000, SPARCcenter 2000 1mCONFIGURATION DETAILS0m You must set "DefaultDepth" to "32" in the Screen Section. Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Driver authors include: Jakub Jelinek Man page: Arnaud Quette SUNTCX(4) SUNTCX(4) 1mNAME0m suntcx - TCX video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "suntcx"0m ... 1mEndSection0m 1mDESCRIPTION0m 1msuntcx 22mis an XFree86 driver for Sun TCX video cards. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m The 1msuntcx 22mdriver supports... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Jakub Jelinek TDFX(4) TDFX(4) 1mNAME0m tdfx - 3Dfx video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "tdfx"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mtdfx 22mis an XFree86 driver for 3Dfx video cards. 1mSUPPORTED HARDWARE0m The 1mtdfx 22mdriver supports Voodoo Banshee, Voodoo3, Voodoo4 and Voodoo5 cards. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The following driver 1mOptions 22mare supported: 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "SWCursor" "4m22mboolean24m1m"0m Disable or enable software cursor. Default: software cursor is disable and a hardware cursor is used for configurations where the hardware cursor is available. 1mOption "DRI" "4m22mboolean24m1m"0m Disable or enable DRI support. By default, DRI is on. 1mOption "TexturedVideo" "4m22mboolean24m1m"0m This has XvImage support use the texture engine rather than the video overlay. 1mOption "VideoKey" "4m22minteger24m1m"0m This sets the default pixel value for the YUV video overlay key. Default: undefined. 1mOption "UsePIO" "4m22mboolean24m1m"0m Force the use of Programmed IO instead of Memory Mapped IO. Default: off. The following additional 1mOptions 22mare supported: 1mOption "ShowCache" "4m22mboolean24m1m"0m Enable or disable viewing offscreen cache memory. A development debug option. Default: off. 1mFILES0m tdfx_drv.o 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: ... TRIDENT(4) TRIDENT(4) 1mNAME0m trident - Trident video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "trident"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mtrident 22mis an XFree86 driver for Trident video cards. The driver is accelerated, and provides support for the following framebuffer depths: 1, 4, 8, 15, 16, and 24. Multi-head configurations are supported. The XvImage extension is supported on TGUI96xx and greater cards. 1mSUPPORTED HARDWARE0m The 1mtrident 22mdriver supports PCI, AGP and ISA video cards based on the following Trident chips: 1mBlade 22mBlade3D, CyberBlade series i1, i7 (DSTN), i1, i1 (DSTN), Ai1, Ai1 (DSTN), CyberBlade/e4, CyberBladeXP, CyberBladeAi1/XP, BladeXP 1mImage 22m3DImage975, 3DImage985, Cyber9520, Cyber9525, Cyber9397, Cyber9397DVD 1mProVidia 22m9682, 9685, Cyber9382, Cyber9385, Cyber9388 1mTGUI 22m9440AGi, 9660, 9680 1mISA/VLBus 22m8900C, 8900D, 9000, 9200CXr, Cyber9320, 9400CXi, 9440AGi These cards have been ported but need further testing and may not work. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The following driver 1mOptions 22mare supported: 1mOption "SWCursor" "4m22mboolean24m1m"0m Enable or disable the SW cursor. Default: off. 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mOption "PciRetry" "4m22mboolean24m1m"0m Enable or disable PCI retries. Default: off. 1mOption "CyberShadow" "4m22mboolean24m1m"0m For Cyber chipsets only, turn off shadow registers. If you only see a partial display - this may be the option for you. Default: on. 1mOption "CyberStretch" "4m22mboolean24m1m"0m For Cyber chipsets only, turn on stretching. When the resolution is lower than the LCD's screen, this option will stretch the graphics mode to fill the entire LCD. Default: off. 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. Default: off. 1mOption "VideoKey" "4m22minteger24m1m"0m This sets the default pixel value for the YUV video overlay key. Default: undefined. 1mOption "TVChipset" "4m22mstring24m1m"0m This sets the TV chipset. Options are CH7005 or VT1621. Default: off. 1mOption "TVSignal" "4m22minteger24m1m"0m This sets the TV signalling. Options are 0 for NTSC or 1 for PAL. Default: undefined. 1mOption "NoPciBurst" "4m22mboolean24m1m"0m Turn off PCI burst mode, PCI Bursting is on by default. Default: off. 1mOption "XvHsync" "4m22minteger24m1m"0m Override the default Horizontal-sync value for the Xv extension. This is used to center the Xv image on the screen. By default the values are assigned based on the video card. Default: 0. 1mOption "XvVsync" "4m22minteger24m1m"0m Override the default Vertical-sync value for the Xv extension. This is used to center the Xv image on the screen. By default the values are assigned based on the video card. Default: 0. 1mOption "XvBskew" "4m22minteger24m1m"0m Override the default Bottom skew value for the Xv extension. This is used to extend the Xv image on the screen at the bottom. By default the values are assigned based on the video card. Default: 0. 1mOption "XvRskew" "4m22minteger24m1m"0m Override the default Right skew value for the Xv extension. This is used to extend the Xv image on the screen at the right. By default the values are assigned based on the video card. Default: 0. 1mOption "Display" "4m22mstring24m1m"0m Override the display. Possible values are "CRT", "LCD" and "Dual". Please note that this option is only experimentally. Default: Use display active when X started. 1mOption "Display1400" "4m22mboolean24m1m"0m Inform driver to expect 1400x1050 display instead of a 1280x1024. Default: off. 1mOption "GammaBrightness" "4m22mstring24m1m"0m Set display gamma value and brightness. "4mstring24m" is "4mgamma24m, 4mbrightness24m", where 4mgamma24m is a floating point value greater than 0 and less or equal to 10. 4mbrightness24m is an integer value greater or equal to 0 and less than 128. Default: gamma and brightness control is turned off. Note: This is not supported on all chipsets. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHOR0m Author: Alan Hourihane TSENG(4) TSENG(4) 1mNAME0m tseng - Tseng Labs video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "tseng"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mtseng 22mis an XFree86 driver for Tseng Labs video cards. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m The 1mtseng 22mdriver supports... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: ... V4L(4) V4L(4) 1mNAME0m v4l - video4linux driver 1mSYNOPSIS0m 1mSection "Module"0m ... 1mLoad "v4l"0m 1mEndSection0m 1mDESCRIPTION0m 1mv4l 22mis an XFree86 driver for video4linux cards. It provides a Xvideo extention port for video overlay. Just add the driver to the module list within the module section of your XF86Config file if you want to use it. There are no config options. Note that the the extmod module is also required for the Xvideo support (and lots of other extentions too). 1mSUPPORTED HARDWARE0m The 1mv4l 22mdriver works with every piece of hardware which is supported by a video4linux (kernel-) device driver and is able to handle video over- lay. bt848/bt878-based TV cards are the most popular hardware these days. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Gerd Knorr VESA(4) VESA(4) 1mNAME0m vesa - Generic VESA video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "vesa"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mvesa 22mis an XFree86 driver for generic VESA video cards. It can drive most VESA-compatible video cards, but only makes use of the basic stan- dard VESA core that is common to these cards. The driver supports depths 8, 15 16 and 24. 1mSUPPORTED HARDWARE0m The 1mvesa 22mdriver supports most VESA-compatible video cards. There are some known exceptions, and those should be listed here. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects the presence of VESA-compatible hardware. The 1mChipSet 22mname may optionally be specified in the config file 1m"Device"0m section, and will override the auto-detection: "vesa" The following driver 1mOptions 22mare supported: 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. Default: on. This option is recommended for performance reasons. 1mOption "VBEBigEndian" "4m22mboolean24m1m"0m This 1mOption 22mis only acted upon on big-endian systems. Normally, the driver will disallow colour depths and framebuffer bpp's that cannot be supported through simple byte-swapping of pixels. This option exists to override this behaviour should the adapter's BIOS be intelligent enough to detect host endianness. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86cfg(1), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Paulo César Pereira de Andrade. VGA(4) VGA(4) 1mNAME0m vga - Generic VGA video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "vga"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mvga 22mis an XFree86 driver for generic VGA video cards. It can drive most VGA-compatible video cards, but only makes use of the basic stan- dard VGA core that is common to these cards. The driver supports depths 1, 4 and 8. All relevant visual types are supported at each depth. Multi-head configurations are supported in combination with some other drivers, but only when the 1mvga 22mdriver is driving the primary head. 1mSUPPORTED HARDWARE0m The 1mvga 22mdriver supports most VGA-compatible video cards. There are some known exceptions, and those should be listed here. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects the presence of VGA-compatible hardware. The 1mChipSet 22mname may optionally be specified in the config file 1m"Device"0m section, and will override the auto-detection: "generic" The driver will only use 64k of video memory for depth 1 and depth 8 operation, and 256k of video memory for depth 4 (this is the standard VGA limit). When operating at depth 8, only a single built-in 320x200 video mode is available. At other depths there is more flexibility regarding mode choice. The following driver 1mOptions 22mare supported: 1mOption "ShadowFB" "4m22mboolean24m1m"0m Enable or disable use of the shadow framebuffer layer. Default: off. This option is recommended for performance reasons when running at depths 1 and 4, especially when using modern PCI-based hard- ware. It is required when using those depths in a multi-head configuration where one or more of the other screens is operat- ing at a different depth. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Authors include: Marc La France, David Dawes, and Dirk Hohndel. VMWARE(4) VMWARE(4) 1mNAME0m vmware - VMware SVGA video driver 1mSYNOPSIS0m 1mSection "Device"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "vmware"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mvmware 22mis an XFree86 driver for VMware virtual video cards. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details. This section only covers configuration details specific to this driver. The driver auto-detects the version of any virtual VMware SVGA adapter. The following driver 1mOptions 22mare supported: 1mOption "HWCursor" "4m22mboolean24m1m"0m Enable or disable the HW cursor. Default: off. 1mOption "NoAccel" "4m22mboolean24m1m"0m Disable or enable acceleration. Default: acceleration is enabled. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7) 1mAUTHORS0m Copyright (c) 1999-2001 VMware, Inc. GTF(1) GTF(1) 1mNAME0m gtf - calculate VESA GTF mode lines 1mSYNOPSIS0m 1mgtf 4m22mh-resolution24m 4mv-resolution24m 4mrefresh24m [1m-v22m|1m--verbose22m] [1m-f22m|1m--fbmode22m] [1m-x22m|1m--xf86mode22m] 1mDESCRIPTION0m 4mGtf24m is a utility for calculating VESA GTF modes. Given the desired horizontal and vertical resolutions and refresh rate (in Hz), the parameters for a matching VESA GTF mode are printed out. Two output formats are supported: mode lines suitable for the XFree86 1mXF86Con-0m 1mfig(5) 22mfile, and mode parameters suitable for the Linux 1mfbset(8) 22mutil- ity. 1mOPTIONS0m 1m-v22m|1m--verbose0m Enable verbose printouts This shows a trace for each step of the computation. 1m-x22m|1m--xf86mode0m Print the mode parameters as XFree86-style mode lines. This is the default format. 1m-f22m|1m--fbset0m Print the mode parameters in a format suitable for 1mfbset(8)22m. 1mSEE ALSO0m XF86Config(5) 1mAUTHOR0m Andy Ritger. This program is based on the Generalized Timing Formula (GTF(TM)) Stan- dard Version: 1.0, Revsion: 1.0. The GTF Excel(TM) spreadsheet, a sam- ple (and the definitive) implementation of the GTF Timing Standard is available at . KBD_MODE(1) KBD_MODE(1) 1mNAME0m kbd_mode - recover the PC console keyboard 1mSYNOPSIS0m 1mkbd_mode 22m[ -a -u ] 1mDESCRIPTION0m 4mKbd_mode24m resets the PC console keyboard to a rational state. 1mOPTIONS0m The following options are supported: 1m-a 22mSet the keyboard so that ASCII characters are read from the console. 1m-u 22mSet the keyboard so that undecoded keyboard values are read from the console. 1mEXAMPLES0m If the server crashes or otherwise fails to put the keyboard back in ascii mode when it exits, it can leave your keyboard dead. If you are able to login remotely, you can reset it typing: kbd_mode -a Conversely, changing the keyboard to ascii mode while the server is running will make the keyboard appear to be dead while the the mouse continues to work. Again, if you are able to login remotely, you can reset it typing: kbd_mode -u PCITWEAK(1) PCITWEAK(1) 1mNAME0m pcitweak - read/write PCI config space 1mSYNOPSIS0m 1mpcitweak -l0m 1mpcitweak -r 4m22mPCI-ID24m [1m-b22m|1m-h22m] 4moffset0m 1mpcitweak -w 4m22mPCI-ID24m [1m-b22m|1m-h22m] 4moffset24m 4mvalue0m 1mDESCRIPTION0m 4mPcitweak24m is a utility that can be used to examine or change registers in the PCI configuration space. On most platforms 4mpcitweak24m can only be run by the root user. 1mOPTIONS0m 1m-l 22mProbe the PCI buses and print a line for each detected device. Each line contains the bus location (bus:device:function), chip vendor/device, card (subsystem) vendor/card, revision, class and header type. All values printed are in hexadecimal. 1m-r 4m22mPCI-ID0m Read the PCI configuration space register at 4moffset24m for the PCI device at bus location 4mPCI-ID24m. 4mPCI-ID24m should be given in the form bus:device:function, with each value in hexadecimal. By default, a 32-bit register is read. 1m-w 4m22mPCI-ID0m Write 4mvalue24m to the PCI configuration space register at 4moffset0m for the PCI device at bus location 4mPCI-ID24m. 4mPCI-ID24m should be given in the form bus:device:function, with each value in hexa- decimal. By default, a 32-bit register is written. 1m-b 22mRead or write an 8-bit value (byte). 1m-h 22mRead or write a 16-bit value (halfword). 1mSEE ALSO0m scanpci(1) 1mAUTHORS0m David Dawes (4mdawes@xfree86.org24m). SCANPCI(1) SCANPCI(1) 1mNAME0m scanpci - scan/probe PCI buses 1mSYNOPSIS0m 1mscanpci 22m[1m-v12OfV22m] 1mDESCRIPTION0m 4mScanpci24m is a utility that can be used to scan PCI buses and report information about the configuration space settings for each PCI device. On most platforms, 4mscanpci24m can only be run by the root user. 1mOPTIONS0m 1m-v 22mPrint the configuration space information for each device in a verbose format. Without this option, only a brief description is printed for each device. 1m-x 22mShow hexadecimal dump of the first 64 bytes of each PCI device's configuration space. For CardBus bridges, the first 128 bytes are dumped instead. This option can be repeated to dump all 256 or 4096 bytes, but doing so might cause 1mscanpci0m (or the system) to crash because some devices cannot tolerate reads of undefined portions of their configuration space. 1m-1 22mUse PCI config type 1. 1m-2 22mUse PCI config type 2. 1m-f 22mUsed in conjunction with the above two options, this forces the specified configuration type to be used for config space access. 1m-O 22mUse the OS's PCI config space access mechanism to access the PCI config space (when available). 1m-V 4m22mn24m Set the verbosity level to 4mn24m for the internal PCI scanner. This is primarily for debugging use. 1mSEE ALSO0m pcitweak(1) 1mAUTHORS0m FBDEVHW(4) FBDEVHW(4) 1mNAME0m fbdevhw - os-specific submodule for framebuffer device access 1mDESCRIPTION0m 1mfbdevhw 22mprovides functions for talking to a framebuffer device. It is os-specific. It is a submodule used by other video drivers. A 1mfbdevhw0m module is currently available for linux framebuffer devices. fbdev(4) is a non-accelerated driver which runs on top of the fbdevhw module. fbdevhw can be used by other drivers too, this is usually activated with `Option "UseFBDev"' in the device section. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7), fbdev(4) 1mAUTHORS0m Authors include: Gerd Knorr, based on the XF68_FBDev Server code (Mar- tin Schaller, Geert Uytterhoeven). ACECAD(4) ACECAD(4) 1mNAME0m acecad - Acecad Flair input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "acecad"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1macecad 22mis an XFree86 input driver for Acecad Flair devices... The 1macecad 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m What is supported... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. Config details... 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... Edouard TISSERANT CALCOMP(4) CALCOMP(4) 1mNAME0m calcomp - Calcomp input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "calcomp"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mcalcomp 22mis an XFree86 input driver for Calcomp devices. The 1mcalcomp 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. 1mSUPPORTED HARDWARE0m This driver supports the Calcomp binary format used by the Drawing Board II and III series. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. Both the 3 button stylus and the 4- or 16 button lens cursors can be used without changing the configuration file. Support for pressure sen- sitivity has not been tested, so the solid-tip stylus will probably not work. This device supports the following entries: 1mOption 4m22m"Device"24m 4m"path"0m sets the path to the special file which represents the serial line where the tablet is plugged. This option is mandatory. 1mOption 4m22m"Cursor"24m 4m"Stylus"|"Puck"0m this option is supported for backward compatibility only, but it should not be necessary. 1mOption 4m22m"DeviceName"24m 4m"name"0m sets the name of the X device. Some user-space programs may require a fixed name, e.g. TABLET, to recognize the digi- tizer. 1mOption 4m22m"Mode"24m 4m"Relative"|"Absolute"0m sets the mode of the device. Currently only Absolute mode is supported. 1mOption 4m22m"Pressure"24m 4m"on"0m enables pressure reporting if your tablet supports it. This option is untested and may not work. 1mOption 4m22m"AlwaysCore"24m 4m"on"0m enables the sharing of the core pointer. When this feature is enabled, the device will take control of the core pointer (and thus will emit core events) and at the same time will be able, when asked so, to report extended events. 1mOption 4m22m"MinX"24m 4m"number"0m X coordinate of the bottom left corner of the active zone. 1mOption 4m22m"MinY"24m 4m"number"0m Y coordinate of the bottom left corner of the active zone. 1mOption 4m22m"MaxX"24m 4m"Inumber"0m X coordinate of the top right corner of the active zone. 1mOption 4m22m"MaxY"24m 4m"number"0m Y coordinate of the top right corner of the active zone. 1mOption 4m22m"DebugLevel"24m 4mnumber0m sets the level of debugging info reported. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Martin Kroeker CITRON(4) CITRON(4) 1mNAME0m citron - Citron Infrared Touch Driver (CiTouch) 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "citron"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mcitron 22mis a XFree86 input driver for 4mCitron24m 4mInfrared24m 4mTouch24m devices. The 1mcitron 22mdriver acts as a pointer input device, and may be used as the X server's core pointer. It is connected via a "RS232" with the host. 1mSUPPORTED HARDWARE0m At the moment the following touches are supported. They are also avail- able as 4mZPress24m touches. 1mIRT6I5-V2.x0m 6.5 inch Infrared Touch 1mIRT10I4-V4.x0m 10.4 inch Infrared Touch 1mIRT12I1-V2.x0m 12.1 inch Infrared Touch 1mIRT15I1-V1.x0m 15.1 inch Infrared Touch 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5x) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. For better understanding please read also the 1mCTS 22mand various 1mIRT 22mmanuals which are available in "pdf" format from Citron web page 1mwww.citron.de 22mor directly from Citron. The following driver 1mOptions 22mare supported: 1mOption "Device" "4m22mdevpath24m1m"0m Specify the device path for the citron touch. Valid devices are: /dev/ttyS0, /dev/ttyS1, .... This option is mandatory. It's important to specify the right device Note: com1 -> /dev/ttyS0, com2 -> /dev/ttyS1 .... 1mOption "ScreenNumber" "4m22mscreennumber24m1m"0m sets the 4mscreennumber24m for the 4mcitron24m InputDevice. 4mDefault:24m ScreenNumber: "0" 1mOption "MinX, MinY" "4m22mvalue24m1m"0m These are the minimum X and Y values for the 4mcitron24m input device. Note: MinX, MinY must be less than MaxX, MaxY. 4mRange:24m "0" - "65535" 4mDefault:24m MinX: "0" MinY: "0" 1mOption "MaxX, MaxY" "4m22mvalue24m1m"0m These are the maximum X and Y values for the 4mcitron24m input device. Note: MaxX, MaxY must be greater than MinX, MinY. 4mRange:24m "0" - "65535" 4mDefault:24m MaxX: "65535" MaxY: "65535" 1mOption "ButtonNumber" "4m22mvalue24m1m"0m This value is responsible for the 4mbutton24m 4mnumber24m that is returned within the xf86PostButton event message 4mRange:24m "0" - "255" 4mDefault:24m "1" 1mOption "ButtonThreshold" "4m22mvalue24m1m"0m This value is responsible for the 4mbutton24m 4mthreshold.24m It changes the pressure sensitivity of the touch. A higher number corre- sponds to a higher pressure. Note: This feature is only available with pressure sensitive hardware. 4mRange:24m "0" - "255" 4mDefault:24m "20" 1mSleep-Mode0m If the IRT is in 4mDoze-Mode24m and Touch Zone is not interrupted for another certain span of time, the so-called 4mSleep-Mode24m is acti- vated. The 4mSleep-Mode24m decreases the scan rate of the beams even further than the 4mDoze-Mode24m does (see below). This way the life expectancy of the beams is prolonged and the power consumption of the IRT is reduced. As soon as an interruption of the Touch Zone is detected, the 4mSleep-Mode24m is deactivated and the Touch Zone will again be scanned with the maximum speed. With the Sleep-Mode activated, depending on the set scan rate the IRT's response time can be considerably longer as in normal operation. If, for example, a scan rate of 500 ms / scan is set, it may last up to a half of a second until the IRT detects the inter- ruption and deactivates the 4mSleep-Mode.0m 1mOption "SleepMode" "4m22mmode24m1m"0m This value is responsible for the 4msleep-mode24m of the touch. Determines the behaviour of the Sleep-Mode. 1m0x000m No message at either activation or deactivation 1m0x010m Message at activation 1m0x020m Message at deactivation 1m0x030m Message at activation and deactivation 1m0x10 22mGP_OUT output set according to the Sleep-Mode status 4mValues:24m "0" "1" "2" "3" "16" 4mDefault:24m "0" 1mOption "SleepTime" "4m22mtime24m1m"0m This value is responsible for the 4msleep-time24m of the touch. It is the activation time in seconds ("0" = immediately activated, "65535" = always deactivated). 4mRange:24m "0" - "65535" [s] 4mDefault:24m "65535" => deactivated 1mOption "SleepScan" "4m22mscan24m1m"0m This value is responsible for the 4mscan-time24m of the touch. This is the time interval between two scan operations while in Sleep- Mode. The time interval is set in steps of milliseconds. 4mRange:24m "0" - "65535" [ms] 4mDefault:24m "500" 1mOption "PWMAdjSrc" "4m22mvalue24m1m"0m 1mOption "PWMAdjDst" "4m22mvalue24m1m"0m These parameters are used to adjust the brightness of different backlight inverters. At the moment 2 backlight inverters are used: 0=TDK 1=AC. If you want a AC backlight inverter to behave like an AC type you have to set 4mPWMAdjSrc24m to 0 (TDK) and 4mPWMAd-0m 4mjDst24m to 1 (AC). 4mRange:24m "0" - "1" 4mDefault:24m "-1" (no adjustment) 1mOption "PWMActive" "4m22mvalue24m1m"0m This value determines the mark-to-space ratio of the 4mPWM24m output while in normal operation (sleep-mode not active). Higher val- ues result in longer pulse widths. This output signal can be used in conjunction with the 4mCitron24m 4mAWBI24m to do backlight-dimming via the touch. 4mRange:24m "0" - "255" 4mDefault:24m "255" (max. brightness) 1mOption "PWMSleep" "4m22mvalue24m1m"0m This value determines the mark-to-space ratio of the 4mPWM24m output while in sleep-mode (-> 4mSleepMode,24m 4mSleepScan,24m 4mSleepTime24m ) opera- tion (sleep-mode active). Higher values result in longer pulse widths. 4mRange:24m "0" - "255" 4mDefault:24m "255" (max. brightness) 1mOption "PWMFreq" "4m22mvalue24m1m"0m This value determines the 4mPWM24m frequency in Hertz 4mRange:24m "39" - "9803" 4mDefault:24m "9803" (max. frequency) 1mOption "ClickMode" "4m22mmode24m1m"0m With mode one can select between 5 4mClickModes0m 4m"1"24m 4m=24m 4mClickMode24m 4mEnter0m With this mode every interruption of the infrared beams will activate a ButtonPress event and after the interruption a But- tonRelease event will be sent. 4m"2"24m 4m=24m 4mClickMode24m 4mDual0m With this mode every interruption will sent a Proximity event and every second interruption a ButtonPress event. With the release of the interruption (while one interruption is still active) a ButtonRelease event will be sent. 4m"3"24m 4m=24m 4mClickMode24m 4mDual24m 4mExit0m With this mode every interruption will sent a ProximityIn event and every second interruption a ButtonPress event. With the release of the interruption (while one interruption is still active) no ButtonRelease event will be sent. Only if all inter- ruptions are released a ButtonRelease followed by a ProximityOut event will be sent. 4m"4"24m 4m=24m 4mClickMode24m 4mZPress0m With this mode every interruption will sent a ProximityIn event. Only if a certain pressure is exceeded a ButtonPress event will occur. If the pressure falls below a certain limit a ButtonRe- lease event will be sent. After also the interruption is released a ProximityOut event is generated. 4m"5"24m 4m=24m 4mClickMode24m 4mZPress24m 4mExit0m This mode is similar to "Clickmode Dual Exit". The first inter- ruption of the beams will sent a ProximityIn event. Only if a certain pressure is exceeded a ButtonPress event will occur. If the pressure falls below a certain limit no ButtonRelease event will be sent. After the interruption is also released a Button- Release followed by a ProximityOut event is generated. 4mRange:24m "1" - "5" 4mDefault:24m "1" (ClickMode Enter) 1mOption "Origin" "4m22mvalue24m1m"0m This value sets the coordinates origin to one of the four cor- ners of the screen. The following values are accepted: "0" TOPLEFT: Origin set to the left-hand side top corner. "1" TOPRIGHT: Origin set to the right-hand side top corner. "2" BOTTOMRIGHT: Origin set to the right-hand side bottom corner. "3" BOTTOMLEFT: Origin set to the left-hand side bottom corner. 4mRange:24m "0" - "3" 4mDefault:24m "0" (TOPLEFT) 1mDoze-Mode0m If for a certain span of time the Touch Zone is not interrupted, the so-called Doze-Mode is automatically activated. The acti- vated Doze-Mode slightly decreases the scan rate of the beams. This way the power consumption of the IRT is reduced. As soon as an interruption of the Touch Zone is detected, the Doze-Mode is deactivated and the Touch Zone will again be scanned with the maximum speed. 1mOption "DozeMode" "4m22mmode24m1m"0m This value is responsible for the 4mdoze-mode24m of the touch. Determines the behaviour of the Doze-Mode. 0x00 No message at either activation or deactivation 0x01 Message at activation 0x02 Message at deactivation 0x03 Message at activation and deactivation 0x10 GP_OUT output set according to the Doze-Mode status If the GP_OUT output is already controlled by the 4mSleep-Mode24m it is no longer available as an output port anymore. 4mValues:24m "0" "1" "2" "3" "16" 4mDefault:24m "0" 1mOption "DozeTime" "4m22mtime24m1m"0m This value is responsible for the 4mdoze-time24m of the touch. It is the activation time in seconds ("0" = immediately activated, "65535" = always deactivated). 4mRange:24m "0" - "65535" [s] 4mDefault:24m "65535" => deactivated 1mOption "DozeScan" "4m22mscan24m1m"0m This value is responsible for the 4mscan-time24m of the touch. This is the time interval between two scan operations while in Doze- Mode. The time interval is set in steps of milliseconds. 4mRange:24m "0" - "65535" [ms] 4mDefault:24m "500" 1mOption "DeltaX" "4m22mvalue24m1m"0m This value determines a virtual area at the left and right side of the current cursor position where the cursor didn't move. Within this area no "MotionNotify" event will be sent. 4mRange:24m "0" - "255" 4mDefault:24m "0" (no deltaX) 1mOption "DeltaY" "4m22mvalue24m1m"0m This value determines a virtual area at the top and bottom of the current cursor position where the cursor didn't move. Within this area no "MotionNotify" event will be sent. 4mRange:24m "0" - "255" 4mDefault:24m "0" (no deltaY) 1mOption "Beep" "4m22mvalue24m1m"0m This value determines if a "ButtonPress" and/or a "ButtonRe- lease" event should sound the buzzer. "0" deactivates the buzzer while every other value will activate it. 4mRange:24m "0" - "1" 4mDefault:24m "0" (deactivated) 1mOption "PressVol" "4m22mvalue24m1m"0m This value determines the volume of the buzzer (0-100%) when a "ButtonPress" event is sent. 4mRange:24m "0" - "100" 4mDefault:24m "100" 1mOption "PressPitch" "4m22mvalue24m1m"0m This value determines the pitch of the tone when a "ButtonPress" event is sent. 4mRange:24m "0" - "3000" 4mDefault:24m "880" 1mOption "PressDur" "4m22mvalue24m1m"0m This value determines the duration of the tone in ms when a "ButtonPress" event is sent. 4mRange:24m "0" - "255" 4mDefault:24m "15" 1mOption "ReleaseVol" "4m22mvalue24m1m"0m This value determines the volume of the buzzer (0-100%) when a "ButtonRelease" event is sent. 4mRange:24m "0" - "100" 4mDefault:24m "100" 1mOption "ReleasePitch" "4m22mvalue24m1m"0m This value determines the pitch of the tone when when a "Button- Release" event is sent. 4mRange:24m "0" - "3000" 4mDefault:24m "1200" 1mOption "ReleseDur" "4m22mvalue24m1m"0m This value determines the duration of the tone in ms when when a "ButtonRelease" event is sent. 4mRange:24m "0" - "255" 4mDefault:24m "10" 1mOption "BeamTimeout" "4m22mvalue24m1m"0m Determines the time span in seconds, that has to elapse before a beam is considered defective, blanked-out and excluded from the coordinates evaluation. 4mRange:24m "0" - "65535" 4mDefault:24m "30" (30 seconds) 1mOption "TouchTime" "4m22mvalue24m1m"0m Determines the minimum time span in steps of 10ms for a valid interruption. In order for an interruption to be reported to the host computer as valid, it needs to remain at the same spot for at least the time span declared here. 4mRange:24m "0" - "255" 4mDefault:24m "0" (=6,5 ms) 1mOption "EnterCount" "4m22mcount24m1m"0m Number of skipped "enter reports". Reports are sent approx. every 20ms. 4mRange:24m "0" - "31" 4mDefault:24m "3" (3 skipped messages = 60ms) 1mOption "ZEnterCount" "4m22mcount24m1m"0m Number of skipped "enter reports" while in pressure sensitive mode. Reports are sent approx. every 20ms. 4mRange:24m "0" - "31" 4mDefault:24m "1" (1 skipped messages = 20ms) 1mOption "LockZEnterTime" "4m22mcount24m1m"0m Minimum duration of an AreaPressEnter state (Pressure > Area- Pressure) before a PressEnter event is issued. The time is given in 10ms steps. 4mRange:24m "0" - "255" 4mDefault:24m "1" (10ms) 1mOption "LockZExitTime" "4m22mcount24m1m"0m Minimum duration of an AreaPressExit state (Pressure < AreaPres- sure/2) before a PressExit event is issued. The time is given in 10ms steps. 4mRange:24m "0" - "255" 4mDefault:24m "1" (10ms) 1mOption "LockZLockTime" "4m22mcount24m1m"0m Minimum gap between a PressExit and a PressEnter event. The time is in 10ms steps. 4mRange:24m "0" - "255" 4mDefault:24m "10" (100ms) 1mOption "DualCount" "4m22mcount24m1m"0m Number of skipped "dual touch error". Reports are sent approx. every 20ms. This option is only available for "ZPress" and "ZPress Exit" modes. 4mRange:24m "0" - "31" 4mDefault:24m "2" (2 skipped messages = 40ms) 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m 2000-2003 - written by Citron GmbH (support@citron.de) DMC(4) DMC(4) 1mNAME0m dmc - DMC input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "dmc"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mdmc 22mis an XFree86 input driver for DMC FIT10-controller... The 1mdmc 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m What is supported... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. Config details... 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... DYNAPRO(4) DYNAPRO(4) 1mNAME0m dynapro - Dynapro input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "dynapro"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mdynapro 22mis an XFree86 input driver for Dynapro devices... The 1mdynapro 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m What is supported... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. Config details... 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... ELOGRAPHICS(4) ELOGRAPHICS(4) 1mNAME0m elographics - Elographics input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "elographics"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1melographics 22mis an XFree86 input driver for Elographics devices... The 1melographics 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m What is supported... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. Config details... 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... Patrick Lecoanet ELOINPUT(4) ELOINPUT(4) 1mNAME0m eloinput - Elographics USB input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "eloinput"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1meloinput 22mis an XFree86 input driver for Elographics Touchscreen moni- tors that utilize the ELO 2500U USB-based controller, using the Linux Input API. The 1meloinput 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. 1mSUPPORTED HARDWARE0m Touch screen monitor manufactured by Elo Graphics that utilize the 2500U USB touchscreen controller. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. Config details... 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... Patrick Lecoanet FPIT(4) FPIT(4) 1mNAME0m fpit - Fujitsu Stylistic input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "fpit"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mfpit 22mis an XFree86 input driver for Fujitsu Stylistic Tablet PCs. The 1mfpit 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. 1mSUPPORTED HARDWARE0m This driver supports the touchscreen of the Stylistic LT and (with spe- cial options) of the Stylistic 500, 1000 and 2300. Under Linux the Fujitsus serial port is not, by default, detected. Therefore the following must be added to one of your start-up scripts. (Either one of the X scripts, or to rc.local or similar). 1msetserial /dev/ttyS3 autoconfig0m 1msetserial /dev/ttyS3 IRQ 15 baud_base 115200 port 0xfce80m This driver now supports Stylistic 3400 (and possibly other passive-pen systems) with a special 4m"Passive"24m paramter. Try this serial configura- tion for the 3400: 1msetserial /dev/ttyS3 autoconfig0m 1msetserial /dev/ttyS3 uart 16450 irq 5 port 0xfd680m 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5x) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. The device supports the following options: 1mOption 4m22m"MaximumXPosition"24m 4m"number"0m Sets the maximum X position, use this to callibrate your touchscreen's right hand edge. 1mOption 4m22m"MinimumXPosition"24m 4m"number"0m Sets the minimum X position, use this to callibrate your touchscreen's left hand edge. 1mOption 4m22m"MaximumYPosition"24m 4m"number"0m 1mOption 4m22m"MinimumYPosition"24m 4m"number"0m Same as for X axis, but for Y axis. 1mOption 4m22m"InvertX"0m 1mOption 4m22m"InvertY"0m Invert the specified axis. 1mOption 4m22m"SwapXY"0m Swap the X and Y axis. 1mOption 4m22m"Rotate"24m 4m"CW"0m 1mOption 4m22m"Rotate"24m 4m"CWW"24m Manipulate the invert and swap options to match screen rotations. 1mOption 4m22m"DeviceName"24m 4m"name"0m 1mOption 4m22m"DeviceName"24m 4m"name"24m sets the name of the X device. 1mOption 4m22m"AlwaysCore"24m 4m"on"0m enables the sharing of the core pointer. When this feature is enabled, the device will take control of the core pointer (and thus will emit core events) and at the same time will be able, when asked so, to report extended events. You can use the last available integer feedback to control this feature. When the value of the feedback is zero, the feature is disabled. The feature is enabled for any other value. 1mOption 4m22m"DebugLevel"24m 4mnumber0m sets the level of debugging info reported. 1mOption 4m22m"BaudRate"24m 4m"38400"24m1m, 4m22m"19200"24m 1mor 4m22m"9600"24m 1m(default)0m changes the serial link speed. 1mOption 4m22m"Passive"0m decodes the passive pen. Example, for Stylistic LT setup is: 1mSection "InputDevice"0m 1mIdentifier "4m22mmouse024m1m"0m 1mDriver "fpit"0m 1mOption "Device" "4m22m/dev/ttyS324m1m"0m 1mEndSection0m And for other Stylistic devices try: 1mSection "InputDevice"0m 1mIdentifier "4m22mmouse024m1m"0m 1mDriver "fpit"0m 1mOption "Device" "4m22m/dev/ttyS324m1m"0m 1mOption "BaudRate" "4m22m1920024m1m"0m 1mOption "MaximumXPosition" "4m22m625024m1m"0m 1mOption "MaximumYPosition" "4m22m495024m1m"0m 1mOption "MinimumXPosition" "4m22m13024m1m"0m 1mOption "MinimumYPosition" "4m22m024m1m"0m 1mOption "InvertY"0m 1mEndSection0m For Stylistic 3400: 1mSection "InputDevice"0m 1mIdentifier "4m22mmouse024m1m"0m 1mDriver "fpit"0m 1mOption "Device" "4m22m/dev/ttyS324m1m"0m 1mOption "BaudRate" "4m22m960024m1m"0m 1mOption "MaximumXPosition" "4m22m407024m1m"0m 1mOption "MaximumYPosition" "4m22m402024m1m"0m 1mOption "MinimumXPosition" "4m22m024m1m"0m 1mOption "MinimumYPosition" "4m22m024m1m"0m 1mOption "Passive"0m 1mOption "SendCoreEvents"0m 1mEndSection0m 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Original FPIT port: Rob Tsuk and John Apfelbaum X4 Port: Richard Miller-Smith , based on Elographics code from: Patrick Lecoanet X4.2 Cleanup: Alan Cox JS_X(4) JS_X(4) 1mNAME0m js_x - JamStudio input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22mdevname24m1m"0m 1mDriver "js_x"0m 1mOption "Device" "4m22mdevpath24m1m"0m 1mOption "MaxX" "4m22mint24m1m"0m 1mOption "MaxY" "4m22mint24m1m"0m 1mOption "MinX" "4m22mint24m1m"0m 1mOption "MinY" "4m22mint24m1m"0m 1mOption "PressMax" "4m22mint24m1m"0m 1mOption "PressMin" "4m22mint24m1m"0m 1mOption "PressDiv" "4m22mint24m1m"0m 1mEndSection0m 1mDESCRIPTION0m 1mjs_x 22mis an XFree86 input driver for JamStudio devices. The 1mjs_x 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. 1mSUPPORTED HARDWARE0m This driver supports the KB-Gear JamStudio pentablet. This X-Input driver should work on any OS supporting the hiddev raw USB HID driver. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. 1mOption 4m22m"Device"24m 4m"path"0m sets the path to the raw HID device to which the tablet was assigned. This option is mandatory. 1mOption 4m22m"MinX"24m 4m"int"0m 1mOption 4m22m"MaxX"24m 4m"int"0m 1mOption 4m22m"MinY"24m 4m"int"0m 1mOption 4m22m"MaxY"24m 4m"int"0m sets the minimum and maximum values returned for the abso- lute X,Y axis of the pen tablet. These values default to 0-8000 for X and 0-6000 for Y. It should generally be safe to leave these values untouched. 1mOption 4m22m"PressMin24m 4m"int"0m 1mOption 4m22m"PressMax24m 4m"int"0m sets the minimum and maximum values returned for the pres- sure sensitive tip. These values default to 0-127. It should generally be safe to leave these values untouched. 1mOption 4m22m"PressDiv"24m 4m"int"0m sets the divider for the returned pressure value. This option will allow you to return a smaller set of values for the pressure sensitive tip allowing for finer control. The returned value is computed as follows: 4mX24m 4m/24m 4mPressDiv24m 4m=24m 4mreturned24m 4mvalue0m where X equals the value read from the tablet. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Brian Goines KBD(4) KBD(4) 1mNAME0m kbd - Keyboard input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "kbd"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mkbd 22mis an XFree86 input driver for keyboards. The driver supports the standard OS-provided keyboard interface, but these are currently only available to this driver module for Linux and BSD. This driver is experimental, but will soon replace the built-in 1mkeyboard 22mdriver. The 1mkbd 22mdriver functions as a keyboard input device, and may be used as the X server's core keyboard. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. The following driver 1mOptions 22mare supported: 1mOption "Device" "4m22mstring24m1m"0m Specify the keyboard device. Default: the OS's default console keyboard input source. 1mOption "Protocol" "4m22mstring24m1m"0m Specify the keyboard protocol. Valid protocol types include: Standard, Xqueue. Not all protocols are supported on all platforms. Default: "Standard". 1mOption "AutoRepeat" "4m22mdelay24m 4mrate24m1m"0m sets the auto repeat behaviour for the keyboard. This is not implemented on all platforms. 4mdelay24m is the time in milliseconds before a key starts repeating. 4mrate24m is the number of times a key repeats per second. Default: "500 30". 1mOption "XLeds" "4m22mledlist24m1m"0m makes the keyboard LEDs specified in 4mledlist24m available for client use instead of their traditional function (Scroll Lock, Caps Lock and Num Lock). The numbers in the list are in the range 1 to 3. Default: empty list. 1mOption "XkbRules" "4m22mrules24m1m"0m specifies which XKB rules file to use for interpreting the 1mXkb-0m 1mModel22m, 1mXkbLayout22m, 1mXkbVariant22m, and 1mXkbOptions 22msettings. Default: "xfree86" for most platforms, but "xfree98" for the Japanese PC-98 platforms. 1mOption "XkbModel" "4m22mmodelname24m1m"0m specifies the XKB keyboard model name. Default: "pc101" for most platforms, but "pc98" for the Japanese PC-98 platforms, and "pc101_sol8x86" for Solaris 8 on x86. 1mOption "XkbLayout" "4m22mlayoutname24m1m"0m specifies the XKB keyboard layout name. This is usually the country or language type of the keyboard. Default: "us" for most platforms, but "nec/jp" for the Japanese PC-98 platforms. 1mOption "XkbVariant" "4m22mvariants24m1m"0m specifies the XKB keyboard variant components. These can be used to enhance the keyboard layout details. Default: not set. 1mOption "XkbOptions" "4m22moptions24m1m"0m specifies the XKB keyboard option components. These can be used to enhance the keyboard behaviour. Default: not set. Some other XKB-related options are available, but they are incompatible with the ones listed above and are not recommended, so they are not documented here. 1mSEE ALSO0m keyboard(4), XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). KEYBOARD(4) KEYBOARD(4) 1mNAME0m keyboard - Keyboard input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "keyboard"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mkeyboard 22mis an XFree86 input driver for keyboards. The driver supports the standard OS-provided keyboard interface. This driver is currently built-in to the core X server. The 1mkeyboard 22mdriver functions as a keyboard input device, and may be used as the X server's core keyboard. This driver is currently built- in to the core X server, and multiple instances are not yet supported. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. The following driver 1mOptions 22mare supported: 1mOption "Protocol" "4m22mstring24m1m"0m Specify the keyboard protocol. Valid protocol types include: Standard, Xqueue. Not all protocols are supported on all platforms. Default: "Standard". 1mOption "AutoRepeat" "4m22mdelay24m 4mrate24m1m"0m sets the auto repeat behaviour for the keyboard. This is not implemented on all platforms. 4mdelay24m is the time in milliseconds before a key starts repeating. 4mrate24m is the number of times a key repeats per second. Default: "500 30". 1mOption "XLeds" "4m22mledlist24m1m"0m makes the keyboard LEDs specified in 4mledlist24m available for client use instead of their traditional function (Scroll Lock, Caps Lock and Num Lock). The numbers in the list are in the range 1 to 3. Default: empty list. 1mOption "XkbDisable" "4m22mboolean24m1m"0m disable/enable the XKEYBOARD extension. The -kb command line option overrides this config file option. Default: XKB is enabled. NOTE: This option should be specified in the 1mServerFlags 22msection rather than here. It's use here is deprecated. 1mOption "XkbRules" "4m22mrules24m1m"0m specifies which XKB rules file to use for interpreting the 1mXkb-0m 1mModel22m, 1mXkbLayout22m, 1mXkbVariant22m, and 1mXkbOptions 22msettings. Default: "xfree86" for most platforms, but "xfree98" for the Japanese PC-98 platforms. 1mOption "XkbModel" "4m22mmodelname24m1m"0m specifies the XKB keyboard model name. Default: "pc101" for most platforms, but "pc98" for the Japanese PC-98 platforms, and "pc101_sol8x86" for Solaris 8 on x86. 1mOption "XkbLayout" "4m22mlayoutname24m1m"0m specifies the XKB keyboard layout name. This is usually the country or language type of the keyboard. Default: "us" for most platforms, but "nec/jp" for the Japanese PC-98 platforms. 1mOption "XkbVariant" "4m22mvariants24m1m"0m specifies the XKB keyboard variant components. These can be used to enhance the keyboard layout details. Default: not set. 1mOption "XkbOptions" "4m22moptions24m1m"0m specifies the XKB keyboard option components. These can be used to enhance the keyboard behaviour. Default: not set. Some other XKB-related options are available, but they are incompatible with the ones listed above and are not recommended, so they are not documented here. 1mSEE ALSO0m kbd(4), XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). MagicTouch(4) MagicTouch(4) 1mNAME0m magictouch - MagicTouch input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "MagicTouch"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mMagicTouch 22mis an XFree86 input driver for MagicTouch ProE-X con- troller... The 1mMagicTouch 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. 1mSUPPORTED HARDWARE0m It currently supports the ProE-X resistive touchscreen serial (rs232) interface and touchscreens made by Keytec, Inc (MagicTouch) 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. The following driver 1mOptions 22mare supported: 1mOption "Device" "4m22mdevpath24m1m"0m Specify the device path for the magictouch. Valid devices are: /dev/ttyS0, /dev/ttyS1, .... This option is mandatory. It's important to specify the right device Note: com1 -> /dev/ttyS0, com2 -> /dev/ttyS1 .... 1mOption "ScreenNumber" "4m22mscreennumber24m1m"0m sets the 4mscreennumber24m for the 4mmagictouch24m InputDevice. 4mDefault:24m ScreenNumber: "0" 1mOption "MinX, MinY" "4m22mvalue24m1m"0m These are the minimum X and Y values for the 4mmagictouch24m input device. Note: MinX, MinY must be less than MaxX, MaxY. 4mRange:24m "0" - "32767" 4mDefault:24m MinX: "0" MinY: "0" 1mOption "MaxX, MaxY" "4m22mvalue24m1m"0m These are the maximum X and Y values for the 4mmagictouch24m input device. Note: MaxX, MaxY must be greater than MinX, MinY. 4mRange:24m "0" - "32767" 4mDefault:24m MaxX: "16384" MaxY: "16384" 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... MICROTOUCH(4) MICROTOUCH(4) 1mNAME0m microtouch - MicroTouch input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "microtouch"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mmicrotouch 22mis an XFree86 input driver for MicroTouch devices... The 1mmicrotouch 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m What is supported... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. Config details... 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... MOUSE(4) MOUSE(4) 1mNAME0m mouse - Mouse input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "mouse"0m 1mOption "Protocol" "4m22mprotoname24m1m"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mmouse 22mis an XFree86 input driver for mice. The driver supports most available mouse types and interfaces. USB mice are only supported on some OSs, and the level of support for PS/2 mice depends on the OS. The 1mmouse 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. Multiple mice are supported by multi- ple instances of this driver. 1mSUPPORTED HARDWARE0m There is a detailed list of hardware that the 1mmouse 22mdriver supports in the 4mREADME.mouse24m document. This can be found in /usr/X11R6/lib/X11/doc/, or online at http://www.xfree86.org/cur- rent/mouse.html. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. The driver can auto-detect the mouse type on some platforms On some platforms this is limited to plug and play serial mice, and on some the auto-detection works for any mouse that the OS's kernel driver sup- ports. On others, it is always necessary to specify the mouse protocol in the config file. The 4mREADME.mouse24m document contains some detailed information about this. The following driver 1mOptions 22mare supported: 1mOption "Protocol" "4m22mstring24m1m"0m Specify the mouse protocol. Valid protocol types include: Auto, Microsoft, MouseSystems, MMSeries, Logitech, Mouse- Man, MMHitTab, GlidePoint, IntelliMouse, ThinkingMouse, ValuMouseScroll, AceCad, PS/2, ImPS/2, ExplorerPS/2, Think- ingMousePS/2, MouseManPlusPS/2, GlidePointPS/2, Net- MousePS/2, NetScrollPS/2, BusMouse, SysMouse, WSMouse, USB, Xqueue. Not all protocols are supported on all platforms. The "Auto" platform specifies that protocol auto-detection should be attempted. There is no default protocol setting, and specifying this option is mandatory. 1mOption "Device" "4m22mstring24m1m"0m Specifies the device through which the mouse can be accessed. A common setting is "/dev/mouse", which is often a symbolic link to the real device. This option is mandatory, and there is no default setting. 1mOption "Buttons" "4m22minteger24m1m"0m Specifies the number of mouse buttons. In cases where the num- ber of buttons cannot be auto-detected, the default value is 3. The maximum value is 24. 1mOption "Emulate3Buttons" "4m22mboolean24m1m"0m Enable/disable the emulation of the third (middle) mouse button for mice which only have two physical buttons. The third button is emulated by pressing both buttons simultaneously. Default: off 1mOption "Emulate3Timeout" "4m22minteger24m1m"0m Sets the timeout (in milliseconds) that the driver waits before deciding if two buttons where pressed "simultaneously" when 3 button emulation is enabled. Default: 50. 1mOption "ChordMiddle" "4m22mboolean24m1m"0m Enable/disable handling of mice that send left+right events when the middle button is used. Default: off. 1mOption "EmulateWheel" "4m22mboolean24m1m"0m Enable/disable "wheel" emulation. Wheel emulation means emulat- ing button press/release events when the mouse is moved while a specific real button is pressed. Wheel button events (typically buttons 4 and 5) are usually used for scrolling. Wheel emula- tion is useful for getting wheel-like behaviour with trackballs. It can also be useful for mice with 4 or more buttons but no wheel. See the description of the 1mEmulateWheelButton22m, 1mEmulate-0m 1mWheelInertia22m, 1mXAxisMapping22m, and 1mYAxisMapping 22moptions below. Default: off. 1mOption "EmulateWheelButton" "4m22minteger24m1m"0m Specifies which button must be held down to enable wheel emula- tion mode. While this button is down, X and/or Y pointer move- ment will generate button press/release events as specified for the 1mXAxisMapping 22mand 1mYAxisMapping 22msettings. Default: 4. 1mOption "EmulateWheelInertia" "4m22minteger24m1m"0m Specifies how far (in pixels) the pointer must move to generate button press/release events in wheel emulation mode. Default: 50. 1mOption "XAxisMapping" "4m22mN124m 4mN224m1m"0m Specifies which buttons are mapped to motion in the X direction in wheel emulation mode. Button number 4mN124m is mapped to the neg- ative X axis motion and button number 4mN224m is mapped to the posi- tive X axis motion. Default: no mapping. 1mOption "YAxisMapping" "4m22mN124m 4mN224m1m"0m Specifies which buttons are mapped to motion in the Y direction in wheel emulation mode. Button number 4mN124m is mapped to the neg- ative Y axis motion and button number 4mN224m is mapped to the posi- tive Y axis motion. Default: "4 5". 1mOption "ZAxisMapping" "X"0m 1mOption "ZAxisMapping" "Y"0m 1mOption "ZAxisMapping" "4m22mN124m 4mN224m1m"0m 1mOption "ZAxisMapping" "4m22mN124m 4mN224m 4mN324m 4mN424m1m"0m Set the mapping for the Z axis (wheel) motion to buttons or another axis (1mX 22mor 1mY22m). Button number 4mN124m is mapped to the nega- tive Z axis motion and button number 4mN224m is mapped to the posi- tive Z axis motion. For mice with two wheels, four button num- bers can be specified, with the negative and positive motion of the second wheel mapped respectively to buttons number 4mN324m and 4mN424m. Default: no mapping. 1mOption "FlipXY" "4m22mboolean24m1m"0m Enable/disable swapping the X and Y axes. This transformation is applied after the 1mInvX22m, 1mInvY 22mand 1mAngleOffset 22mtransformations. Default: off. 1mOption "InvX" "4m22mboolean24m1m"0m Invert the X axis. Default: off. 1mOption "InvY" "4m22mboolean24m1m"0m Invert the Y axis. Default: off. 1mOption "AngleOffset" "4m22minteger24m1m"0m Specify a clockwise angular offset (in degrees) to apply to the pointer motion. This transformation is applied before the 1mFlipXY22m, 1mInvX 22mand 1mInvY 22mtransformations. Default: 0. 1mOption "SampleRate" "4m22minteger24m1m"0m Sets the number of motion/button events the mouse sends per sec- ond. Setting this is only supported for some mice, including some Logitech mice and some PS/2 mice on some platforms. Default: whatever the mouse is already set to. 1mOption "Resolution" "4m22minteger24m1m"0m Sets the resolution of the device in counts per inch. Setting this is only supported for some mice, including some PS/2 mice on some platforms. Default: whatever the mouse is already set to. 1mOption "DragLockButtons" "4m22mL124m 4mB224m 4mL324m 4mB424m1m"0m Sets "drag lock buttons" that simulate holding a button down, so that low dexterity people do not have to hold a button down at the same time they move a mouse cursor. Button numbers occur in pairs, with the lock button number occurring first, followed by the button number that is the target of the lock button. 1mOption "DragLockButtons" "4m22mM124m1m"0m Sets a "master drag lock button" that acts as a "Meta Key" indi- cating that the next button pressed is to be "drag locked". 1mOption "ClearDTR" "4m22mboolean24m1m"0m Enable/disable clearing the DTR line on the serial port used by the mouse. Some dual-protocol mice require the DTR line to be cleared to operate in the non-default protocol. This option is for serial mice only. Default: off. 1mOption "ClearRTS" "4m22mboolean24m1m"0m Enable/disable clearing the RTS line on the serial port used by the mouse. Some dual-protocol mice require the RTS line to be cleared to operate in the non-default protocol. This option is for serial mice only. Default: off. 1mOption "BaudRate" "4m22minteger24m1m"0m Set the baud rate to use for communicating with a serial mouse. This option should rarely be required because the default is correct for almost all situations. Valid values include: 300, 1200, 2400, 4800, 9600, 19200. Default: 1200. There are some other options that may be used to control various param- eters for serial port communication, but they are not documented here because the driver sets them correctly for each mouse protocol type. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7), README.mouse. MUTOUCH(4) MUTOUCH(4) 1mNAME0m mutouch - Microtouch input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "mutouch"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mmutouch 22mis an XFree86 input driver for Microtouch devices... The 1mmutouch 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m What is supported... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. Config details... 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... Patrick Lecoanet PALMAX(4) PALMAX(4) 1mNAME0m palmax - Palmax (TR88L803) touchscreen driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "palmax"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mpalmax 22mis an XFree86 input driver for the Palmax PD1000/PD1100 The 1mpalmax 22mdriver functions as a pointer input device, and is normally used as the X server's core pointer. It supports positioning and mouse buttons using the touchscreen display and lid buttons on the Palmax machines. 1mSUPPORTED HARDWARE0m Palmax PD1000, Palmax PD1100. In theory also any other system using a TR88L803 wired to a serial port. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. The following driver 1moptions 22mare supported 1mOption "MinX" "4m22minteger24m1m"0m Set the left hand X value from the touchscreen, for calibration. 1mOption "MaxX" "4m22minteger24m1m"0m Set the right hand X value from the touchscreen, for calibra- tion. 1mOption "MinY" "4m22minteger24m1m"0m Set the top Y value from the touchscreen, for calibration. 1mOption "MaxY" "4m22minteger24m1m"0m Set the bottom Y value from the touchscreen, for calibration. 1mOption "Screen" "4m22minteger24m1m"0m The screen to attach to the touchscreen when running with multi- ple screens. The default is screen 0. 1mOption "Device" "4m22mstring24m1m"0m The serial port that is attached to the touchscreen interface. On the Palmax PD1000 and PD1100 this is ttyS0. 1mOption "DeviceName" "4m22mstring24m1m"0m Set the X11 device name for the touchscreen. This defaults to TOUCHSCREEN. 1mOption "PortraitMode" "4m22mstring24m1m"0m Set the display orientation. The default is "landscape" but you can rotate the screen clockwise ("portrait") or anticlockwise ("portraitCCW"). 1mOption "SwapXY" "4m22mboolean24m1m"0m Swap the X and Y values on the display. The default is false. 1mOption "TapButton" "4m22mboolean24m1m"0m Set the touchscreen tap to act as mouse button 1. This allows single handed operation except when using the menu buttons. The default is false. 1mBUGS0m The driver has been tested on the Palmax systems, the defaults reflect the Palmax hardware and should work out of the box. No testing has been done on other systems using the same digitizer. Support for a double-tap menu button option would be nice. The smoothing algorithm would benefit from real mathematics. XFree86 needs a nice calibration tool. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... Alan Cox PENMOUNT(4) PENMOUNT(4) 1mNAME0m penmount - PenMount input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "penmount"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mpenmount 22mis an XFree86 input driver for PenMount devices... The 1mpenmount 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. THIS MAN PAGE NEEDS TO BE FILLED IN. 1mSUPPORTED HARDWARE0m What is supported... 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. Config details... 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... TEK4957(4) TEK4957(4) 1mNAME0m tek4957 - Tektronix 4957 input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "tek4957"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mtek4957 22mis an XFree86 input driver for the Tektronix 4957 tablet. The 1mtek4957 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. 1mOption 4m22m"Device"24m 4m"devpath"0m sets the path to the special file which represents serial line where the tablet is plugged, for example /dev/ttyS0. 1mThis option is mandatory.0m 1mOption 4m22m"DeviceName"24m 4m"name"0m sets the name of the X device. 1mOption 4m22m"Speed"24m 4m"number"0m sets the sampling rate, from 1 to 6. Default is 6, maximum speed. 1mOption 4m22m"Resolution"24m 4m"number"0m sets the resolution. 0 : 2340 dots : 1/200 inch 1 : 2972 dots : 1/10 mm 2 : 11700 dots : 1/1000 inch 3 : 11887 dots : 1/40 mm 4 : 5850 dots : 1/500 inch 5 : 5944 dots : 1/20 mm : 1mdefault0m 6 : 4680 dots : 1/400 inch 7 : 1170 dots : 1/100 inch 8 : 12 dots : 1 inch 9 : 24 dots : 1/2 inch 1mOption 4m22m"TopX"24m 4m"number"0m X coordinate of the top corner of the active zone. ( Default = 0 ) 1mOption 4m22m"TopY"24m 4m"number"0m Y coordinate of the top corner of the active zone. ( Default = 0 ) 1mOption 4m22m"BottomX"24m 4m"Inumber"0m X coordinate of the bottom corner of the active zone. ( Default = full scale ) 1mOption 4m22m"BottomY"24m 4m"number"0m Y coordinate of the bottom corner of the active zone. ( Default = full scale ) 1mBUGS / LIMITATIONS0m Currently, only "Absolute" mode is supported ( Sorry ) 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Olivier DANET UR98(4) UR98(4) 1mNAME0m UR-98 - UR98 (TR88L803) head tracker driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "UR-98"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mUR-98 22mis an XFree86 input driver for the Union Reality UR-F98 head- tracker. The 1mUR-98 22mdriver functions as a pointer input device, and can be used either as an additional input device or as the X server's core pointer. The driver provides support for the three axes, throttle and four but- tons of the controller. If mapped as the core pointer the headtracker provides headtracking to try and place the mouse cursor where you look. As a secondary input device the unit can be used for gaming, for exam- ple to provide the look up/down and the turn in quake, and with the Z axis bound to ack/forward to provide movement control. The default mapping maps left-right movement to X, up-down movement to Y and near/far movement to the Z axis. The throttle is mapped as the fourth axis by default but can also be mapped as button 5. For use in "head only" mode the Z axis can be mapped as a button. This allows the user to select objects with head/neck movement alone but takes some practice to use well. 1mSUPPORTED HARDWARE0m Union Reality UR-98. While this is a joystick driver the behaviour is absolute so this driver is not useful for true joystick interfaces. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. The following driver 1moptions 22mare supported 1mOption "MinX" "4m22minteger24m1m"0m Set the left hand X value from the headgear, for calibration. 1mOption "MaxX" "4m22minteger24m1m"0m Set the right hand X value from the headgear, for calibration. 1mOption "MinY" "4m22minteger24m1m"0m Set the top Y value from the headgear, for calibration. 1mOption "MaxY" "4m22minteger24m1m"0m Set the bottom Y value from the headgear, for calibration. 1mOption "MinZ" "4m22minteger24m1m"0m Set the nearest Z value from the headgear, for calibration. 1mOption "MaxZ" "4m22minteger24m1m"0m Set the furthest Z value from the headgear, for calibration. 1mOption "MinT" "4m22minteger24m1m"0m Set the low throttle value from the headgear, for calibration. 1mOption "MaxT" "4m22minteger24m1m"0m Set the high throttle value from the headgear, for calibration. 1mOption "Screen" "4m22minteger24m1m"0m The screen to attach to the headgear when running with multiple screens. The default is screen 0. 1mOption "Device" "4m22mstring24m1m"0m The joystick port that is attached to the headgear interface. This is usually /dev/input/js0. The digital port is not sup- ported due to lack of documentation. 1mOption "DeviceName" "4m22mstring24m1m"0m Set the X11 device name for the headgear. This defaults to HEAD. 1mOption "PortraitMode" "4m22mstring24m1m"0m Set the display orientation. The default is "landscape" but you can rotate the screen clockwise ("portrait") or anticlockwise ("portraitCCW"). 1mOption "SwapXY" "4m22mboolean24m1m"0m Swap the X and Y values on the display. The default is false. 1mOption "Button5" "4m22mboolean24m1m"0m Map the throttle as a button instead of axis 4. For some gaming applications this can be more useful. The default is to map the throttle as axis 4. 1mOption "HeadButton" "4m22mboolean24m1m"0m Map the Z axis as button 1. This defaults to false. 1mOption "HeadThresh" "4m22mboolean24m1m"0m Set the distance that is held to be mouse down. 1mOption "HeadLock" "4m22mboolean24m1m"0m Set the range of depth around the mouse down point where mouse x and y movement is locked out. Set to zero to disable. 1mBUGS0m The "HeadButton" option is currently not implemented. The hardware or kernel driver has some idiosyncracies. Notably on ker- nel initialization the interface occasionally gets into a state where the readings rapidly cycle left-right-left-right or top-bottom-top-bot- tom. In those cases it seems to be necessary to unload the driver, unplug, replug and reload the joystick drivers. Once it initializes sanely it remains sane. If the device refuses to work check the gray/black cables are plugged into the right ports on the unit. Be careful about this as crossing the cables can lead to the device failing with a nasty burning electronics smell. The author writes from direct experience. This driver is currently Linux specific. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... Alan Cox VOID(4) VOID(4) 1mNAME0m void - null input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "void"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mvoid 22mis an dummy/null XFree86 input driver. It doesn't connect to any physical device, and it never delivers any events. It functions as both a pointer and keyboard device, and may be used as X server's core pointer and/or core keyboard. It's purpose is to allow the X server to operate without a core pointer and/or core keyboard. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This driver doesn't have any configuration options in addition to those. 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Authors include... WACOM(4) WACOM(4) 1mNAME0m wacom - Wacom input driver 1mSYNOPSIS0m 1mSection "InputDevice"0m 1mIdentifier "4m22midevname24m1m"0m 1mDriver "wacom"0m 1mOption "Device" "4m22mdevpath24m1m"0m ... 1mEndSection0m 1mDESCRIPTION0m 1mwacom 22mis an XFree86 input driver for Wacom devices. The 1mwacom 22mdriver functions as a pointer input device, and may be used as the X server's core pointer. 1mSUPPORTED HARDWARE0m This driver supports the Wacom IV and Wacom V protocols. Preliminary support is available for USB devices on some Linux platforms. 1mCONFIGURATION DETAILS0m Please refer to XF86Config(5) for general configuration details and for options that can be used with all input drivers. This section only covers configuration details specific to this driver. Multiple instances of the Wacom devices can cohabit. It can be useful to define multiple devices with different active zones. Each device supports the following entries: 1mOption 4m22m"Type"24m 4m"stylus"|"eraser"|"cursor"0m sets the type of tool the device represent. This option is mandatory. 1mOption 4m22m"Device"24m 4m"path"0m sets the path to the special file which represents serial line where the tablet is plugged. You have to specify it for each subsection with the same value if you want to have multiple devices with the same tablet. This option is mandatory. 1mOption 4m22m"USB"24m 4m"on"0m tells the driver to dialog with the tablet the USB way. This option is only available on some Linux platforms. 1mOption 4m22m"DeviceName"24m 4m"name"0m sets the name of the X device. 1mOption 4m22m"Suppress"24m 4m"Inumber"0m sets the position increment under which not to transmit coordinates. This entry must be specified only in the first Wacom subsection if you have multiple devices for one tablet. If you don't specify this entry, the default value is computed to 1mOption 4m22m"Mode"24m 4m"Relative"|"Absolute"0m sets the mode of the device. 1mOption 4m22m"Tilt"24m 4m"on"0m enables tilt report if your tablet supports it (ROM version 1.4 and above). If this is enabled, multiple devices at the same time will not be reported. 1mOption 4m22m"HistorySize"24m 4m"number"0m sets the motion history size. By default the value is zero. 1mOption 4m22m"AlwaysCore"24m 4m"on"0m enables the sharing of the core pointer. When this feature is enabled, the device will take control of the core pointer (and thus will emit core events) and at the same time will be able, when asked so, to report extended events. You can use the last available integer feedback to control this feature. When the value of the feedback is zero, the feature is disabled. The feature is enabled for any other value. 1mOption 4m22m"TopX"24m 4m"number"0m X coordinate of the top corner of the active zone. 1mOption 4m22m"TopY"24m 4m"number"0m Y coordinate of the top corner of the active zone. 1mOption 4m22m"BottomX"24m 4m"Inumber"0m X coordinate of the bottom corner of the active zone. 1mOption 4m22m"BottomY"24m 4m"number"0m Y coordinate of the bottom corner of the active zone. 1mOption 4m22m"KeepShape"24m 4m"on"0m When this option is enabled, the active zone begins according to TopX and TopY. The bottom corner is adjusted to keep the ratio width/height of the active zone the same as the screen while maximizing the area described by TopX, TopY, BottomX, BottomY. 1mOption 4m22m"DebugLevel"24m 4mnumber0m sets the level of debugging info reported. 1mOption 4m22m"BaudRate"24m 4m"38400"24m1m, 4m22m"19200"24m 1mor 4m22m"9600"24m 1m(default)0m changes the serial link speed. This option is only avail- able for wacom V models (Intuos). 1mOption 4m22m"Serial"24m 4m"number"0m sets the serial number associated with the physical device. This allows to have multiple devices of the same type (i.e. multiple pens). This option is only available on wacom V devices (Intuos). To see which serial number belongs to a device, you have to set the DebugLevel to 6 and watch the output of the X server. 1mOption 4m22m"Threshold"24m 4m"number"0m sets the pressure threshold used to generate a button 1 events of stylus devices for some models of tablets (Intuos and Graphire). 1mSEE ALSO0m XFree86(1), XF86Config(5), xf86config(1), Xserver(1), X(7). 1mAUTHORS0m Frederic Lepied XDARWIN(1) XDARWIN(1) 1mNAME0m XDarwin - X window system server for Darwin operating system 1mSYNOPSIS0m 1mXDarwin 22m[ options ] ... 1mDESCRIPTION0m 4mXDarwin24m is the X window server for Mac OS X and the Darwin operating system provided by the XFree86 Project. This version of 4mXDarwin24m can only be started from the Darwin text console. The Mac OS X Aqua GUI, if present, must be shut down. 4mXDarwin24m uses IOKit services to access the display framebuffer, mouse and keyboard and to provide a layer of hard- ware abstraction. 4mXDarwin24m will normally be started by the 4mxdm(1)24m dis- play manager or by a script that runs the program 4mxinit(1)24m. 1mOPTIONS0m In addition to the normal server options described in the 4mXserver(1)0m manual page, 4mXDarwin24m accepts the following command line switches: 1m-fakebuttons0m Emulates a 3 button mouse using modifier keys. By default, the Command modifier is used to emulate button 2 and Option is used for button 3. Thus, clicking the first mouse button while hold- ing down Command will act like clicking button 2. Holding down Option will simulate button 3. 1m-nofakebuttons0m Do not emulate a 3 button mouse. This is the default. 1m-fakemouse2 4m22mmodifiers0m Change the modifier keys used to emulate the second mouse but- ton. By default, Command is used to emulate the second button. Any combination of the following modifier names may be used: Shift, Option, Control, Command, Fn. For example, 1m-fakemouse20m 1m"Option,Shift" 22mwill set holding Option, Shift and clicking on button one as equivalent to clicking the second mouse button. 1m-fakemouse3 4m22mmodifiers0m Change the modifier keys used to emulate the third mouse but- ton. By default, Option is used to emulate the third button. Any combination of the following modifier names may be used: Shift, Option, Control, Command, Fn. For example, 1m-fakemouse30m 1m"Control,Shift" 22mwill set holding Control, Shift and clicking on button one as equivalent to clicking the third mouse button. 1m-keymap 4m22mfile0m On startup 4mXDarwin24m translates a Darwin keymapping into an X keymap. The default is to read this keymapping from USA.keymapping. With this option the keymapping will be read from 4mfile24m instead. If the file's path is not specified, it will be searched for in Library/Keyboards/ underneath the following directories (in order): ~, /, /Network, /System. 1m-nokeymap0m On startup 4mXDarwin24m translates a Darwin keymapping into an X keymap. With this option XDarwin queries the kernel for the current keymapping instead of reading it from a file. This will often fail on newer kernels. 1m-size 4m22mwidth24m 4mheight0m Sets the screen resolution for the X server to use. 1m-depth 4m22mdepth0m Specifies the color bit depth to use. Currently only 8, 15, and 24 color bits per pixel are supported. 1m-refresh 4m22mrate0m Gives the refresh rate to use in Hz. For LCD displays this should be 0. 1m-showconfig0m Print out the server version and patchlevel. 1m-version0m Same as 1m-showconfig22m. 1mSEE ALSO0m X(7), XFree86(1), Xserver(1), xdm(1), xinit(1) 1mBUGS0m 4mXDarwin24m and this man page still have many limitations. Some of the more obvious ones are: - The display mode cannot be changed once the X server has started. - A screen saver is not supported. 1mAUTHORS0m XFree86 was originally ported to Mac OS X Server by John Carmack. Dave Zarzycki used this as the basis of his port of XFree86 4.0 to Darwin 1.0. Torrey T. Lyons improved and integrated this code into the XFree86 Project's mainline for the 4.0.2 release. The following members of the XonX Team contributed to the following releases (in alphabetical order): XFree86 4.1.0: Rob Braun - Darwin x86 support Torrey T. Lyons - Project Lead Andreas Monitzer - Cocoa version of XDarwin front end Gregory Robert Parker - Original Quartz implementation Christoph Pfisterer - Dynamic shared X libraries Toshimitsu Tanaka - Japanese localization XFree86 4.2.0: Rob Braun - Darwin x86 support Pablo Di Noto - Spanish localization Paul Edens - Dutch localization Kyunghwan Kim - Korean localization Mario Klebsch - Non-US keyboard support Torrey T. Lyons - Project Lead Andreas Monitzer - German localization Patrik Montgomery - Swedish localization Greg Parker - Rootless support Toshimitsu Tanaka - Japanese localization Olivier Verdier - French localization DUMPKEYMAP(1) DUMPKEYMAP(1) 1mNAME0m dumpkeymap - Dianostic dump of a .keymapping file 1mSYNOPSIS0m 1mdumpkeymap 22m[4moptions24m] [-] [4mfile24m...] 1mDESCRIPTION0m 4mdumpkeymap24m prints a textual representation of each Apple/NeXT 4m.keymap-0m 4mping24m file mentioned on the command-line. If no files are mentioned and if the local machine is an Apple or NeXT installation, then the key mapping currently in use by the WindowServer and the AppKit is printed instead. 1mOPTIONS0m 1m-h --help0m Display general program instructions and option summary. 1m-k --help-keymapping0m Display a detailed description of the internal layout of a 4m.keymapping24m file. This is the same information as that pre- sented in the 4mKey24m 4mMapping24m 4mDescription24m section of this document. 1m-o --help-output0m Display an explanation of the output generated by 4mdumpkeymap0m when dissecting a 4m.keymapping24m file. This is the same informa- tion as that presented in the 4mOutput24m 4mDescription24m section of this document. 1m-f --help-files0m Display a summary of the various files and directories which are related to key mappings. This is the same information as that presented in the 4mFiles24m section of this document. 1m-d --help-diagnostics0m Display a list of the various diagnostic messages which may be emitted by 4mdumpkeymap.24m This is the same information as that presented in the 4mDiagnostics24m section of this document. 1m-v --version0m Display the 4mdumpkeymap24m version number and warranty information. 1m- -- 22mInhibit processing of options at this point in the argument list. An occurrence of `-' or `--' in the argument list causes all following arguments to be treated as file names even if an argument begins with a `-' character. 1mKEY MAPPING DESCRIPTION0m The following sections describe, in complete detail, the format of a raw key mapping resource, as well as the format of the 4m.keymapping24m file which encapsulates one or more raw mappings. 1mTypes and Data0m The following type definitions are employed throughout this discussion: typedef unsigned char byte; typedef unsigned short word; typedef unsigned long dword; Additionally, the type definition `4mnumber24m' is used generically to indi- cate a numeric value. The actual size of the `4mnumber24m' type may be one or two bytes depending upon how the data is stored in the key map. Although most key maps use byte-sized numeric values, word-sized values are also allowed. Multi-byte values in a key mapping file are stored in big-endian byte order. 1mKey Mapping File and Device Mapping0m A key mapping file begins with a magic-number and continues with a variable number of device-specific key mappings. struct KeyMappingFile { char magic_number[4]; // `KYM1' DeviceMapping maps[...]; // Variable number of maps }; struct DeviceMapping { dword interface; // Interface type dword handler_id; // Interface subtype dword map_size; // Byte count of `map' (below) KeyMapping map; }; The value of `interface' represents a family of keyboard device types (such as Intel PC, ADB, NeXT, Sun Type5, etc.), and is generally speci- fied as one of the constant values NX_EVS_DEVICE_INTERFACE_ADB, NX_EVS_DEVICE_INTERFACE_ACE, etc., which are are defined in IOHID- Types.h on MacOS/X and Darwin, and in ev_types.h on MacOS/X Server, OpenStep, and NextStep. The value of `handler_id' represents a specific keyboard layout within the much broader `interface' family. For instance, for a 101-key Intel PC keyboard (of type NX_EVS_DEVICE_INTERFACE_ACE) the `handler_id' is '0', whereas for a 102-key keyboard it is `1'. Together, `interface' and `handler_id' identify the exact keyboard hardware to which this mapping applies. Programs which display a visual representation of a keyboard layout, match `interface' and `han- dler_id' from the 4m.keymapping24m file against the `interface' and `han- dler_id' values found in each 4m.keyboard24m file. 1mKey Mapping0m A key mapping completely defines the relationship of all scan codes with their associated functionality. A 4mKeyMapping24m structure is embed- ded within the 4mDeviceMapping24m structure in a 4mKeyMappingFile24m. The key mapping currently in use by the WindowServer and AppKit is also repre- sented by a 4mKeyMapping24m structure, and can be referred to directly by calling NXGetKeyMapping() and accessing the `mapping' data member of the returned 4mNXKeyMapping24m structure. struct KeyMapping { word number_size; // 0=1 byte, non-zero=2 bytes number num_modifier_groups; // Modifier groups ModifierGroup modifier_groups[...]; number num_scan_codes; // Scan groups ScanGroup scan_table[...]; number num_sequence_lists; // Sequence lists Sequence sequence_lists[...]; number num_special_keys; // Special keys SpecialKey special_key[...]; }; The `number_size' flag determines the size, in bytes, of all remaining numeric values (denoted by the type definition `4mnumber24m') within the key mapping. If its value is zero, then numbers are represented by a sin- gle byte. If it is non-zero, then numbers are represented by a word (two bytes). 1mModifier Group0m A modifier group defines all scan codes which map to a particular type of modifier, such as 4mshift24m, 4mcontrol24m, etc. enum Modifier { ALPHALOCK = 0, SHIFT, CONTROL, ALTERNATE, COMMAND, KEYPAD, HELP }; struct ModifierGroup { number modifier; // A Modifier constant number num_scan_codes; number scan_codes[...]; // Variable number of scan codes }; The scan_codes[] array contains a list of all scan codes which map to the specified modifier. The 4mshift24m, 4mcommand24m, and 4malternate24m modifiers are frequently mapped to two different scan codes, apiece, since these modifiers often appear on both the left and right sides of the key- board. 1mScan Group0m There is one 4mScanGroup24m for each scan code generated by the given key- board. This number is given by KeyMapping::num_scan_codes. The first scan group represents hardware scan code 0, the second represents scan code 1, etc. enum ModifierMask { ALPHALOCK_MASK = 1 << 0, SHIFT_MASK = 1 << 1, CONTROL_MASK = 1 << 2, ALTERNATE_MASK = 1 << 3, CARRIAGE_RETURN_MASK = 1 << 4 }; #define NOT_BOUND 0xff struct ScanGroup { number mask; Character characters[...]; }; For each scan code, `mask' defines which modifier combinations generate characters. If `mask' is NOT_BOUND (0xff) then then this scan code does not generate any characters ever, and its characters[] array is zero length. Otherwise, the characters[] array contains one 4mCharacter0m record for each modifier combination. The number of records in characters[] is determined by computing (1 << bits_set_in_mask). In other words, if mask is zero, then zero bits are set, so characters[] contains only one record. If `mask' is (SHIFT_MASK | CONTROL_MASK), then two bits are set, so characters[] contains four records. The first record always represents the character which is generated by that key when no modifiers are active. The remaining records represent characters generated by the various modifier combinations. Using the example with the 4mshift24m and 4mcontrol24m masks set, record two would repre- sent the character with the 4mshift24m modifier active; record three, the 4mcontrol24m modifier active; and record four, both the 4mshift24m and 4mcontrol0m modifiers active. As a special case, ALPHALOCK_MASK implies SHIFT_MASK, though only ALPHALOCK_MASK appears in `mask'. In this case the same character is generated for both the 4mshift24m and 4malpha-lock24m modifiers, but only needs to appear once in the characters[] array. CARRIAGE_RETURN_MASK does not actually refer to a modifier key. Instead, it is used to distinguish the scan code which is given the special pseudo-designation of 4mcarriage24m 4mreturn24m key. Typically, this mask appears solo in a 4mScanGroup24m record and only the two 4mCharacter0m records for control-M and control-C follow. This flag may be a throw- back to an earlier time or may be specially interpreted by the low- level keyboard driver, but its purpose is otherwise enigmatic. 1mCharacter0m Each 4mCharacter24m record indicates the character generated when this key is pressed, as well as the character set which contains the character. Well known character sets are `ASCII' and `Symbol'. The character set can also be one of the meta values FUNCTION_KEY or KEY_SEQUENCE. If it is FUNCTION_KEY then `char_code' represents a generally well-known function key such as those enumerated by 4mFunctionKey.24m If the character set is KEY_SEQUENCE then `char_code' represents is a zero-base index into KeyMapping::sequence_lists[]. enum CharacterSet { ASCII = 0x00, SYMBOL = 0x01, ... FUNCTION_KEY = 0xfe, KEY_SEQUENCE = 0xff }; struct Character { number set; // CharacterSet of generated character number char_code; // Actual character generated }; enum FunctionKey { F1 = 0x20, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, INSERT, DELETE, HOME, END, PAGE_UP, PAGE_DOWN, PRINT_SCREEN, SCROLL_LOCK, PAUSE, SYS_REQUEST, BREAK, RESET, STOP, MENU, USER, SYSTEM, PRINT, CLEAR_LINE, CLEAR_DISPLAY, INSERT_LINE, DELETE_LINE, INSERT_CHAR, DELETE_CHAR, PREV, NEXT, SELECT }; 1mSequence0m When Character::set contains the meta value KEY_SEQUENCE, the scan code is bound to a sequence of keys rather than a single character. A sequence is a series of modifiers and characters which are automati- cally generated when the associated key is depressed. #define MODIFIER_KEY 0xff struct Sequence { number num_chars; Character characters[...]; }; Each generated 4mCharacter24m is represented as previously described, with the exception that MODIFIER_KEY may appear in place of KEY_SEQUENCE. When the value of Character::set is MODIFIER_KEY then Charac- ter::char_code represents a modifier key rather than an actual charac- ter. If the modifier represented by `char_code' is non-zero, then it indicates that the associated modifier key has been depressed. In this case, the value is one of the constants enumerated by 4mModifier24m (SHIFT, CONTROL, ALTERNATE, etc.). If the value is zero then it means that the modifier keys have been released. 1mSpecial Key0m A special key is one which is scanned directly by the Mach kernel rather than by the WindowServer. In general, events are not generated for special keys. enum SpecialKeyType { VOLUME_UP = 0, VOLUME_DOWN, BRIGHTNESS_UP, BRIGHTNESS_DOWN, ALPHA_LOCK, HELP, POWER, SECONDARY_ARROW_UP, SECONDARY_ARROW_DOWN }; struct SpecialKey { number type; // A SpecialKeyType constant number scan_code; // Actual scan code }; 1mOUTPUT0m What follows is an explanation and description of the various pieces of information emitted by 4mdumpkeymap.0m For a more thorough discussion of any particular piece of information described here, refer to the detailed description of the internal lay- out of a key mapping provided by the 4mKey24m 4mMapping24m 4mDescription24m section above. 1mConventions0m Depending upon context, some numeric values are displayed in decimal notation, whereas others are displayed in hexadecimal notation. Hexa- decimal numbers are denoted by a `0x' prefix (for instance, `0x7b'), except when explicitly noted otherwise. 1mKey Mapping Source0m The first piece of information presented about a particular key mapping is the source from which the data was gleaned. For a 4m.keymapping24m file, the title `KEYMAP FILE' is emitted along with the path and name of the file in question. For the key mapping currently in use by the Win- dowServer and AppKit, the title `ACTIVE KEYMAP' is emitted instead. 1mDevice Information0m Each 4m.keymapping24m file may contain one or more raw key mappings. For example, a file which maps keys to a Dvorak-style layout might contain raw mappings for Intel PC, ADB, NeXT, and Sun Type5 keyboards. For each raw mapping, the following information is emitted: ˇ The title `KEYMAP' along with the mapping's relative position in the 4m.keymapping24m file. ˇ The `interface' identifier. ˇ The `handler_id' sub-identifier. ˇ The size of the raw mapping resource counted in bytes. The `interface' and `handler_id' values, taken together, define a spe- cific keyboard device. A 4m.keyboard24m file, which describes the visual layout of a keyboard, also contains `interface' and `handler_id' iden- tifiers. The 4m.keyboard24m file corresponding to a particular key mapping can be found by matching the `interface' and `handler_id' values from each resource. 1mModifiers0m Each mapping may contain zero or more modifier records which associate hardware scan codes with modifier descriptions such as 4mshift,24m 4mcontrol,0m 4malternate,24m etc. The title `MODIFIERS' is printed along with the count of modifier records which follow. For each modifier record, the modi- fier's name is printed along with a list of scan codes, in hexadecimal format, which generate that modifier value. For example: MODIFIERS [4] alternate: 0x1d 0x60 control: 0x3a keypad: 0x52 0x53 ... 0x63 0x62 shift: 0x2a 0x36 1mCharacters0m Each mapping may contain zero or more character records which associate hardware scan codes with the actual characters generated by those scan codes in the presence or absence of various modifier combinations. The title `CHARACTERS' is printed along with the count of character records which follow. Here is a highly abbreviated example: CHARACTERS [9] scan 0x00: -AC-L "a" "A" "^A" "^A" ca c7 "^A" "^A" scan 0x07: -AC-L "x" "X" "^X" "^X" 01/b4 01/ce "^X" "^X" scan 0x0a: ---S- "<" ">" scan 0x13: -ACS- "2" "@" "^@" "^@" b2 b3 "^@" "^@" scan 0x24: R---- "^M" "^C" scan 0x3e: ----- [F4] scan 0x4a: ----- [page up] scan 0x60: ----- {seq#3} scan 0x68: not-bound For each record, the hexadecimal value of the hardware scan code is printed, followed by a list of modifier flag combinations and the actual characters generated by this scan code with and without modi- fiers applied. The modifier flags field is composed of a combination of single letter representations of the various modifier types. The letters stand for: L - alpha-lock S - shift C - control A - alternate R - carriage-return As a special case, the 4malpha-lock24m flag also implies the 4mshift24m flag, so these two flags never appear together in the same record. The combination of modifier flags determines the meaning and number of fields which follow. The first field after the modifier flags always represents the character that will be generated if no modifier keys are depressed. The remaining fields represent characters generated by the various modifier combinations. The order of the fields follows this general pattern: ˇ The character generated by this scan code when no modifiers are in effect is listed first. ˇ If the `L' or `S' flag is active, then the shifted character generated by this scan code is listed next. ˇ If the `C' flag is active, then the control-character gener- ated by this scan code is listed next. Furthermore, if the `L' or `S' flag is also active, then the shifted con- trol-character is listed after that. ˇ If the `A' flag is active, then the alternate-character gener- ated by this scan code is listed next. Furthermore, if the `L' or `S' flag is active, then the shifted alter- nate-character is listed after that. If the `C' flag is also active, then the alternate-control-character is listed next. Finally, if the `C' and `L' or `C' and `S' flags are also active, then the shifted alternate-con- trol-character is listed. The `R' flag does not actually refer to a modifier key. Instead, it is used to distinguish the scan code which is given the special pseudo- designation of 4mcarriage24m 4mreturn24m key. Typically, this mask appears solo and only the two fields for control-M and control-C follow. This flag may be a throwback to an earlier time or may be specially interpreted by the low-level keyboard driver, but its purpose is otherwise enig- matic. Recalling the example from above, the following fields can be identi- fied: scan 0x00: -AC-L "a" "A" "^A" "^A" ca c7 "^A" "^A" ˇ Lower-case `a' is generated when no modifiers are active. ˇ Upper-case `A' is generated when 4mshift24m or 4malpha-lock24m are active. ˇ Control-A is generated when 4mcontrol24m is active. ˇ Control-A is generated when 4mcontrol24m and 4mshift24m are active. ˇ The character represented by the hexadecimal code 0xca is gen- erated when 4malternate24m is active. ˇ The character represented by 0xc7 is generated when 4malternate0m and 4mshift24m (or 4malpha-lock24m) are active. ˇ Control-A is generated when 4malternate24m and 4mcontrol24m are active. ˇ Control-A is generated when 4malternate,24m 4mcontrol24m and 4mshift24m (or 4malpha-lock24m) are active. The notation used to represent a particular generated character varies. ˇ Printable ASCII characters are quoted, as in "x" or "X". ˇ Control-characters are quoted and prefixed with `^', as in "^X". ˇ Characters with values greater than 127 (0x7f) are displayed as hexadecimal values without the `0x' prefix. ˇ Characters in a non-ASCII character set (such as `Symbol') are displayed as two hexadecimal numbers separated by a slash, as in `01/4a'. The first number is the character set's identification code (such as `01' for the `Symbol' set), and the second number is the value of the generated character. ˇ Non-printing special function characters are displayed with the function's common name enclosed in brackets, as in `[page up]' or `[F4]'. ˇ If the binding represents a key sequence rather than a single character, then the sequence's identification number is enclosed in braces, as in `{seq#3}'. Recalling a few examples from above, the following interpretations can be made: scan 0x07: -AC-L "x" "X" "^X" "^X" 01/b4 01/ce "^X" "^X" scan 0x3e: ----- [F4] scan 0x4a: ----- [page up] scan 0x60: ----- {seq#3} ˇ "x" and "X" are printable ASCII characters. ˇ "^X" is a control-character. ˇ `01/b4' and `01/ce' represent the character codes 0xb4 and 0xce in the `Symbol' character set. ˇ Scan code 0x3e generates function-key `F4', and scan code 0x4a generates function-key `page up'. ˇ Scan code 0x60 is bound to key sequence #3. Finally, if a scan code is not bound to any characters, then it is annotated with the label `not-bound', as with example scan code 0x68 from above. 1mSequences0m A scan code (modified and unmodified) can be bound to a key sequence rather than generating a single character or acting as a modifier. When it is bound to a key sequence, a series of character invocations and modifier actions are automatically generated rather than a single keystroke. Each mapping may contain zero or more key sequence records. The title `SEQUENCES' is printed along with the count of sequence records which follow. For example: SEQUENCES [3] sequence 0: "f" "o" "o" sequence 1: {alternate} "b" "a" "r" {unmodify} sequence 2: [home] "b" "a" "z" The notation used to represent the sequence of generated characters is identical to the notation already described in the 4mCharacters24m section above, with the exception that modifier actions may be interposed between generated characters. Such modifier actions are represented by the modifier's name enclosed in braces. The special name `{unmodify}' indicates the release of the modifier keys. Thus, the sequences in the above example can be interpreted as follows: ˇ Sequence #0 generates `foo'. ˇ Sequence #1 invokes the 4malternate24m modifier, generates `bar', and then releases 4malternate.0m ˇ Sequence #2 invokes the 4mhome24m key and then generates `baz'. In a text editor, this would probably result in `baz' being prepended to the line of text on which the cursor resides. 1mSpecial Keys0m Certain keyboards feature keys which perform some type of special pur- pose function rather than generating a character or acting as a modi- fier. For instance, Apple keyboards often contain a 4mpower24m key, and NeXT keyboards have historically featured screen brightness and volume control keys. Each mapping may contain zero or more special-key records which asso- ciate hardware scan codes with such special purpose functions. The title `SPECIALS' is printed along with the count of records which fol- low. For each record, the special function's name is printed along with a list of scan codes, in hexadecimal format, which are bound to that function. For example: SPECIALS [6] alpha-lock: 0x39 brightness-down: 0x79 brightness-up: 0x74 power: 0x7f sound-down: 0x77 sound-up: 0x73 1mFILES0m *.keymapping A key mapping file which precisely defines the relationship of all hardware-specific keyboard scan-codes with their associated functionality. *.keyboard A file describing the physical layout of keys on a particular type of keyboard. Each `key' token in this file defines the position and shape of the key on the keyboard, as well as the associated scan code which that key generates. A 4m.keymapping0m file, on the other hand, defines the characters which are gener- ated by a particular scan code depending upon the state of the various modifier keys (such as 4mshift,24m 4mcontrol,24m etc.). The `interface' and `handler_id' values from a 4m.keymapping24m file are matched against those in each 4m.keyboard24m file in order to asso- ciate a particular 4m.keyboard24m file with a key mapping. Various GUI programs use the 4m.keyboard24m file to display a visual repre- sentation of a keyboard for the user. Since these files are just plain text, they can be easily viewed and interpreted with- out the aid of a specialized program, thus 4mdumpkeymap24m leaves these files alone. /System/Library/Keyboards /Network/Library/Keyboards /Local/Library/Keyboards /Library/Keyboards Repositories for 4m.keymapping24m and 4m.keyboard24m files for MacOS/X, Darwin, and MacOS/X Server. /NextLibrary/Keyboards /LocalLibrary/Keyboards Repositories for 4m.keymapping24m and 4m.keyboard24m files for OpenStep and NextStep. $(HOME)/Library/Keyboards Repository for personal 4m.keymapping24m and 4m.keyboard24m files. 1mDIGANOSTICS0m The following diagnostic messages may be issued to the standard error stream. Unrecognized option. An unrecognized option was specified on the command-line. Invoke 4mdumpkeymap24m with the 1m--help 22moption to view a list of valid options. Insufficient data in keymapping data stream. The key mapping file or data stream is corrupt. Either the file has been incorrectly truncated or a field, such as those which indicates the number of variable records which follow, contains a corrupt value. The following diagnostic messages have significance only when trying to print 4m.keymapping24m files mentioned on the command-line. Bad magic number. The mentioned file is not a 4m.keymapping24m file. The file's con- tent does not start with the string `KYM1'. Unable to open key mapping file. The call to fopen() failed; probably because the specified path is invalid or 4mdumpkeymap24m does not have permission to read the file. Unable to determine key mapping file size. The call to fstat() failed, thus memory can not be allocated for loading the file. Unable to read key mapping file. The call to fread() failed. The following diagnostic messages have significance only when trying to print the currently active key mapping when no 4m.keymapping24m files have been mentioned on the command-line. Unable to open event status driver. The call to NXOpenEventStatus() failed. Bad key mapping length. The call to NXKeyMappingLength() returned a bogus value. Unable to get current key mapping. The call to NXGetKeyMapping() failed. The following diagnostic messages have significance only when using 4mdumpkeymap24m on a non-Apple/NeXT platform. Must specify at least one .keymapping file. No 4m.keymapping24m files were mentioned on the command-line. On non-Apple/NeXT platforms, there is no concept of a currently active 4m.keymapping24m file, so at least one file must be mentioned on the command-line. 1mAUTHOR0m Eric Sunshine wrote 4mdumpkeymap24m and this docu- ment, the 4mdumpkeymap24m 4muser's24m 4mmanual.24m Both 4mdumpkeymap24m and this document are copyright Š1999,2000 by Eric Sunshine . All rights reserved. The implementation of 4mdumpkeymap24m is based upon information gathered on September 3, 1997 by Eric Sunshine and Paul S. McCarthy during an effort to reverse engineer the format of the NeXT 4m.keymapping24m file. Version 4 -- 1 December 2000 TinyX(1) TinyX(1) 1mNAME0m TinyX - tiny X server 1mSYNOPSIS0m 1mXvesa 22m[4m:display24m] [4moption24m...] 1mXchips 22m[4m:display24m] [4moption24m...] 1mXfbdev 22m[4m:display24m] [4moption24m...] 1mXi810 22m[4m:display24m] [4moption24m...] 1mXigs 22m[4m:display24m] [4moption24m...] 1mXipaq 22m[4m:display24m] [4moption24m...] 1mXmach64 22m[4m:display24m] [4moption24m...] 1mXsavage 22m[4m:display24m] [4moption24m...] 1mXsis530 22m[4m:display24m] [4moption24m...] 1mXtrident 22m[4m:display24m] [4moption24m...] 1mXtrio 22m[4m:display24m] [4moption24m...] 1mXts300 22m[4m:display24m] [4moption24m...] 1mDESCRIPTION0m 1mTinyX 22mis a family of X servers designed to be particularly small. This manual page describes the common functionality of the 1mTinyX 22mservers; for information on a specific X server, please refer to the relevant manual page. This incarnation of 1mTinyX 22mis colloquially known as 1mkdrive22m. 1mOPTIONS0m In addition to the standard options accepted by all X servers (see Xserver(1)), all the 1mTinyX 22mservers accept the following options: 1m-card 4m22mpcmcia0m Use pcmcia card as additional screen. 1m-dumb 22mDisable hardware acceleration. 1m-origin 4m22mX24m1m,4m22mY0m Locates the next screen in the Xinerama virtual screen. 1m-screen 4m22mwidth24m1mx4m22mheight24m[1mx4m22mdepth24m[1mx4m22mfreq24m]][1m@4m22mrotation24m] Use a screen of the specified 4mwidth24m, 4mheight24m, screen 4mdepth24m, 4mfre-0m 4mquency24m, and 4mrotation24m (0, 90, 180 and 270 are legal values). 1m-softCursor0m Disable the hardware cursor. 1m-videoTest0m Start the server, pause momentarily, and exit. 1m-zaphod 22mDisable switching screens by moving the pointer across a screen boundary. 1m-2button0m Enable emulation of a middle mouse button by chording. 1m-3button0m Disable emulation of a middle mouse button by chording. 1m-noserialmouse0m Do not probe for a serial mouse. 1mSEE ALSO0m X(7), Xserver(1), xdm(1), xinit(1), Xvesa(1), Xfbdev(1), XFree86(1). 1mAUTHORS0m The TinyX common core was written by Keith Packard, based on XFree86 which, in turn, is loosely based on the X11R6 Sample Implementation. It was integrated into the XFree86 build process by David Dawes and X- Oz Technologies. Xvesa(1) Xvesa(1) 1mNAME0m Xvesa - VESA Bios Extensions tiny X server 1mSYNOPSIS0m 1mXvesa 22m[4m:display24m] [4moption24m...] 1mDESCRIPTION0m 1mXvesa 22mis a generic X server for Linux on the x86 platform. 1mXvesa0m doesn't know about any particular hardware, and sets the video mode by running the video BIOS in VM86 mode. 1mXvesa 22mcan use both standard VGA BIOS modes and any modes advertised by a VESA BIOS if available. 1mXvesa 22mruns untrusted code with full privileges, and is therefore a fairly insecure X server. 1mThe Xvesa server should only be used in0m 1mtrusted environments.0m 1mOPTIONS0m Besides the normal TinyX server's options (see TinyX(1)), 1mXvesa 22maccepts the following command line switches: 1m-mode 4m22mn24m specifies the VESA video mode to use. This option overrides any 1m-screen 22moptions. 1m-listmodes0m list all supported video modes. If 1m-force 22mwas specified before 1m-listmodes22m, lists all the modes that your BIOS claims to sup- port, even those that the 1mXvesa 22mserver won't be able to use. 1m-force 22mdisable some sanity checks and use the specified mode even if the BIOS claims not to support it. 1m-shadow 22muse a shadow framebuffer even if it is not strictly necessary. This may dramatically improve performance on some hardware. 1m-nolinear0m don't use a linear framebuffer even if one is available. You don't want to use this option. 1m-swaprgb0m pass RGB values in the order that works on broken BIOSes. Use this if the colours are wrong in PseudoColor and 16 colour modes. 1m-map-holes0m use a contiguous (hole-less) memory map. This fixes a segmen- tation violation with some rare BIOSes that violate the VESA specification, but may cause slightly higher memory usage on systems that over-commit memory. 1m-verbose0m emit diagnostic messages during BIOS initialization and tear- down. 1mKEYBOARD0m Multiple key presses recognized directly by 1mXvesa 22mare: 1mCtrl+Alt+Backspace0m Immediately kill the server. 1mCtrl+Alt+F1...F120m Switch to virtual console 1 through 12. 1mSEE ALSO0m X(7), Xserver(1), TinyX(1), xdm(1), xinit(1), XFree86(1). 1mAUTHORS0m The VESA driver was written by Juliusz Chroboczek. Keith Packard added support for standard VGA BIOS modes and is especially proud of 320x200 16 colour mode. Xfbdev(1) Xfbdev(1) 1mNAME0m Xfbdev - Linux framebuffer device tiny X server 1mSYNOPSIS0m 1mXfbdev 22m[4m:display24m] [4moption24m...] 1mDESCRIPTION0m 1mXfbdev 22mis a generic X server for Linux. 1mXfbdev 22mdoesn't know about any particular hardware, and uses the framebuffer provided by the Linux framebuffer device. 1mOPTIONS0m 1mXfbdev 22maccepts the common options of the TinyX family of servers. Please see TinyX(1). 1mSEE ALSO0m X(7), Xserver(1), TinyX(1), xdm(1), xinit(1), XFree86(1). 1mAUTHORS0m The 1mXfbdev 22mserver was written by Keith Packard. XDGA(3) XFree86 XDGA(3) 1mNAME0m XDGA - XFree86 DGA extension client library 1mSYNOPSIS0m 1m#include 0m Bool 1mXDGAQueryExtension22m( Display *4mdpy24m, int *4meventBase24m, int *4merrorBase24m) Bool 1mXDGAQueryVersion22m( Display *4mdpy24m, int *4mmajorVersion24m, int *4mminorVersion24m) XDGAMode *1mXDGAQueryModes22m( Display *4mdpy24m, int 4mscreen24m, int *4mnum24m) XDGADevice *1mXDGASetMode22m( Display *4mdpy24m, int 4mscreen24m, int 4mmode24m) Bool 1mXDGAOpenFramebuffer22m( Display *4mdpy24m, int 4mscreen24m) void 1mXDGACloseFramebuffer22m( Display *4mdpy24m, int 4mscreen24m) void 1mXDGASetViewport22m( Display *4mdpy24m, int 4mscreen24m, int 4mx24m, int 4my24m, int 4mflags24m) void 1mXDGAInstallColormap22m( Display *4mdpy24m, int 4mscreen24m, Colormap 4mcmap24m) Colormap 1mXDGACreateColormap22m( Display *4mdpy24m, int 4mscreen24m, XDGADevice *4mdevice24m, int 4malloc24m) void 1mXDGASelectInput22m( Display *4mdpy24m, int 4mscreen24m, long 4mevent_mask24m) void 1mXDGAFillRectangle22m( Display *4mdpy24m, int 4mscreen24m, int 4mx24m, int 4my24m, unsigned int 4mwidth24m, unsigned int 4mheight24m, unsigned long 4mcolor24m) void 1mXDGACopyArea22m( Display *4mdpy24m, int 4mscreen24m, int 4msrcx24m, int 4msrcy24m, unsigned int 4mwidth24m, unsigned int 4mheight24m, int 4mdstx24m, int 4mdsty24m) void 1mXDGACopyTransparentArea22m( Display *4mdpy24m, int 4mscreen24m, int 4msrcx24m, int 4msrcy24m, unsigned int 4mwidth24m, unsigned int 4mheight24m, int 4mdstx24m, int 4mdsty24m, unsigned long 4mkey24m) int 1mXDGAGetViewportStatus22m( Display *4mdpy24m, int 4mscreen24m) void 1mXDGASync22m( Display *4mdpy24m, int 4mscreen24m) Bool 1mXDGASetClientVersion22m( Display *4mdpy24m) void 1mXDGAChangePixmapMode22m( Display *4mdpy24m, int 4mscreen24m, int *4mx24m, int *4my24m, int 4mmode24m) void 1mXDGAKeyEventToXKeyEvent22m( XDGAKeyEvent *4mdk24m, XKeyEvent *4mxk24m) 1mDESCRIPTION0m The 1mXFree86-DGA 22mextension is an X server extension for allowing client programs direct access to the video frame buffer. This is a brief description of the programming interface for version 2.0 of the 1mXFree86-DGA 22mextension. 1mXFree86-DGA 22mis not intended as a direct rendering API, but rather, as a mechanism to "get the X Server out of the way" so that some other direct rendering API can have full access to the hardware. With this in mind, DGA does provide clients some direct access to the hardware without requiring a separate rendering API, but this access is limited to direct linear framebuffer access. Most of the reasons for the 1mXFree86-DGA 22mextension's existence are now better served in other ways. Further development of this extension is not expected, and it may be deprecated in a future release. The fea- tures that continue to be useful will either be provided through other existing mechanisms, or through an extension that address those needs more specifically. Discussion of these issue is encouraged in the XFree86 developer forum <4mdevel@xfree86.org24m>. 1mXFree86-DGA 22mis initialized by passing a number corresponding to a valid 4mXDGAMode24m to 1mXDGASetMode22m(). Clients can get a list of valid modes from 1mXDGAQueryModes22m(). Each 4mXDGAMode24m corresponds to a different framebuffer layout. 1mXDGAQueryModes22m() returns a pointer to an array of 4mXDGAMode24ms which are valid for the given screen. 4mnum24m is the number of elements in the array. The returned array can be freed with XFree(3). The 4mXDGAMode0m structure is as follows: typedef struct { int num; char *name; float verticalRefresh; int flags; int imageWidth; int imageHeight; int pixmapWidth; int pixmapHeight; int bytesPerScanline; int byteOrder; int depth; int bitsPerPixel; unsigned long redMask; unsigned long greenMask; unsigned long blueMask; short visualClass; int viewportWidth; int viewportHeight; int xViewportStep; int yViewportStep; int maxViewportX; int maxViewportY; int viewportFlags; int reserved1; int reserved2; } XDGAMode; 4mnum24m A unique identifying number (4mnum24m > 0) for the mode. This is the number referenced when initializing the mode. 4mname24m The name of the corresponding modeline as given in the XF86Con- fig file. 4mverticalRefresh0m The vertical refresh rate for the modeline (in Hz). 4mflags24m Any of the following may be OR'd together: 1mXDGAConcurrentAccess0m Indicates that concurrent client/server access to the framebuffer is possible. If this flag is not set it is very important to call 1mXDGASync22m() before directly accessing the framebuffer if a call to 1mXDGAFillRectangle22m(), 1mXDGACopy-0m 1mArea22m() or 1mXDGACopyTransparentArea22m() or any Xlib rendering function has been made prior to such accesses. 1mXDGASolidFillRect0m Indicates that 1mXDGAFillRectangle22m() is supported. 1mXDGABlitRect0m Indicates that 1mXDGACopyArea22m() is supported. 1mXDGABlitTransRect0m Indicates that 1mXDGACopyTransparentArea22m() is supported. 1mXDGAPixmap0m Indicates that a Pixmap will be returned when the mode is initialized. This means that rendering with Xlib is possi- ble for this mode. 1mXDGAInterlaced0m 1mXDGADoublescan0m Indicates that the mode is an interlaced or doublescan mode. 4mimageWidth0m 4mimageHeight0m The width and height of the framebuffer area accessible by the client. This rectangle is always justified to the upper left- hand corner. 4mpixmapWidth0m 4mpixmapHeight0m The width and height of the framebuffer area accessible by Xlib. This rectangle is always justified to the upper left- hand corner. These fields are only valid if the 1mXDGAPixmap0m flag is set in the 4mflags24m field. 4mbytesPerScanline0m The pitch of the framebuffer in bytes. 4mbyteOrder0m 1mMSBFirst 22mor 1mLSBFirst22m. 4mdepth24m The number of bits in each pixel which contain usable data. 4mbitsPerPixel0m The number of bits taken up by each pixel. 4mredMask0m 4mgreenMask0m 4mblueMask0m The RGB masks. These do not apply to color-indexed modes. 4mvisualClass0m 1mTrueColor22m, 1mPseudoColor22m, 1mDirectColor22m, etc. 4mviewportWidth0m 4mviewportHeight0m The dimensions of the portion of the framebuffer which will be displayed on the screen. 4mxViewPortStep0m 4myViewPortStep0m The granularity of the x,y viewport positioning possible with the 1mXDGASetViewport22m() function. 4mmaxViewportX0m 4mmaxViewportY0m The maximum x and y positions possible with the 1mXDGASetView-0m 1mport22m() function. 4mviewportFlags0m Any of the following may be OR'd together 1mXDGAFlipRetrace0m Indicates that the hardware can switch viewports during the vertical retrace. 1mXDGAFlipImmediate0m Indicates that the hardware can switch viewports immedi- ately without waiting for the vertical retrace. 1mXDGASetMode22m() initialises the 4mXDGAMode24m corresponding to 4mnum24m. To exit DGA mode and return to normal server operation, call 1mXDGASetMode22m() with 4mnum24m set to zero. 1mXDGASetMode22m() returns a pointer to an 4mXDGADevice24m if successful. The XDGADevice can be freed with XFree(3). The 4mXDGADevice0m structure is as follows: typedef struct { XDGAMode mode; unsigned char *data; Pixmap pixmap; } XDGADevice; 4mmode24m The 4mXDGAMode24m structure, identical to the information returned by 1mXDGAQueryModes22m(). 4mdata24m If direct framebuffer access is desired and possible, this field will contain a pointer to the mapped framebuffer memory. Generally, this field will be zero unless a call to 1mXDGAOpen-0m 1mFramebuffer22m() is made prior to initialization of the mode. 4mpixmap24m If the mode supports Xlib rendering as indicated by 1mXDGAPixmap0m in the 4mflags24m field, this will contain a Pixmap handle suitable for passing as the drawable argument to Xlib functions. This field will be zero if Xlib rendering is not supported. 1mXDGAQueryExtension22m() checks for the presence of the extension and returns the event and error bases. 1mXDGAQueryVersion22m() returns the 1mXFree86-DGA 22mmajor and minor version num- bers. 1mXDGAOpenFramebuffer22m() maps the framebuffer memory. The client needs sufficient privileges to be able to do this. 1mXDGAOpenFramebuffer22m() should be called prior to initializing a DGA mode if direct framebuffer access is desired for that mode. 1mXDGAOpenFramebuffer22m() does not need to be called if direct framebuffer access is not required. If the framebuffer is opened, 1mXDGACloseFramebuffer22m() should be called prior to client exit to unmap the memory. 1mXDGAChangePixmapMode22m() can be used to change between two pixmap sizes in cases where a Pixmap is available for Xlib rendering. The following values for the 4mmode24m parameter are available: 1mXDGAPixmapModeLarge0m The pixmap size is defined by the 4mpixmapWidth24m and 4mpixmapHeight24m fields in the 4mXDGAMode24m structure. The 4mx24m and 4my0m values are ignored in this case. 1mXDGAPixmapModeSmall0m The pixmap size is defined by the 4mviewportWidth24m and 4mview-0m 4mportHeight24m fields in the 4mXDGAMode24m structure. In this mode, the 4mx24m and 4my24m values specify where in the framebuffer this pixmap rectangle is located. It may be placed anywhere within the Xlib renderable region described by the 4mpixmap-0m 4mWidth24m and 4mpixmapHeight24m fields in the 4mXDGAMode24m. The 4mx24m and 4my0m values returned are the resultant location of the pixmap and may be different from the requested x,y location due to platform specific alignment constraints. All Xlib render- ing is clipped to this pixmap rectangle. 1mXDGASetViewport22m() sets the upper left-hand corner of the rectangle of framebuffer that is to be displayed on the screen. Not all locations may be supported by the hardware and requested locations will be adjusted according to the 4mxViewPortStep24m and 4myViewPortStep24m fields in the 4mXDGAMode24m. 4mflags24m can be 1mXDGAFlipRetrace 22mor 1mXDGAFlipImmediate 22mto adjust the view- port location at the next vertical retrace or immediately. Values other than the supported values advertised in the mode's 4mviewportFlags0m field will result in hardware-specific default behavior. 1mXDGAFlipImme-0m 1mdiate 22mwill block until the flip is completed. 1mXDGAFlipRetrace 22mwill generally NOT block so it is necessary to monitor the viewport status with 1mXDGAGetViewportStatus22m(). 1mXDGAFlipImmediate 22mrequests during pend- ing 1mXDGAFlipRetrace 22mrequests will be ignored. 1mXDGAGetViewportStatus22m() keeps track of the 1mXDGASetViewport22m() requests still pending. The return value of the function will have consecutive bits set (LSB justified), each bit representing a pending viewport change. For example: while(XDGAGetViewportStatus(dpy, screen)); waits for all pending viewport changes to finish. while(0x2 & XDGAGetViewportStatus(dpy, screen)); waits until all but the last viewport changes have completed. 1mXDGACreateColormap22m() is similar to the Xlib function XCreateColormap(3) except that it takes an 4mXDGADevice24m as an argument instead of a Window and Visual. Though XCreateColormap(3) may create usable colormaps in some cases, 1mXDGACreateColormap22m() is the preferred method for creating colormaps in DGA since there may not be an advertised visual compatible with the DGA device. 1mXDGAInstallColormap22m() must be used to install colormaps in DGA mode. XInstallColormap(3) will not work. 1mXDGASelectInput22m() enables DGA's own event mechanism. This function is similar to XSelectInput(3), and all Xlib Key, Button and Motion masks are supported. The following DGA events are defined: typedef struct { int type; /* ButtonPress or ButtonRelease + the DGA event base*/ unsigned long serial; /* # or last request processed by the server */ Display *display; /* Display the event was read from */ int screen; /* The screen number the event came from */ Time time; /* milliseconds */ unsigned int state; /* key or button mask */ unsigned int button; /* detail */ } XDGAButtonEvent; typedef struct { int type; /* KeyPress or KeyRelease + the DGA event base*/ unsigned long serial; /* # or last request processed by the server */ Display *display; /* Display the event was read from */ int screen; /* The screen number the event came from */ Time time; /* milliseconds */ unsigned int state; /* key or button mask */ unsigned int keycode; /* detail */ } XDGAKeyEvent; typedef struct { int type; /* MotionNotify + the DGA event base*/ unsigned long serial; /* # or last request processed by the server */ Display *display; /* Display the event was read from */ int screen; /* The screen number the event came from */ Time time; /* milliseconds */ unsigned int state; /* key or button mask */ int dx; /* relative pointer motion */ int dy; /* relative pointer motion */ } XDGAMotionEvent; 1mXDGAKeyEventToXKeyEvent22m() is a helper function to translate 4mXDGAKeyEvent24ms into 4mXKeyEvent24ms suitable for use with XLookupKeysym(3). 1mXDGAFillRectangle22m(), 1mXDGACopyArea22m(), and 1mXDGACopyTransparentArea22m() are included with some reservation since DGA is not intended as a rendering API. These are merely convenience routines and are optionally sup- ported. The associated flags will be set in the 4mXDGAMode24m's 4mflags24m field if these functions are supported. These functions will be no-ops oth- erwise. they do not provide direct access to the hardware, but are sim- ply context-less operations performed by the server. 1mXDGASync22m() blocks until all server rendering to the framebuffer com- pletes. If Xlib or the 3 rendering functions above are used, 1mXDGASync22m() must be called before the client directly accesses the framebuffer as the server rendering is asynchronous with the client and may have not completed. This is especially important if the 1mXDGACon-0m 1mcurrentAccess 22mflag is not set in the 4mXDGAMode24m's 4mflags24m field since con- current access by the server and client may result in a system lockup. 1mSEE ALSO0m XFree86(1), XF86Config(5) 1mAUTHORS0m 1mXFree86-DGA 22mversion 2 was written by Mark Vojkovich. Version 1 was written by Jon Tombs, Harm Hanemaayer, Mark Vojkovich. XF86MISC(3X11) X FUNCTIONS XF86MISC(3X11) 1mNAME0m XF86MiscQueryExtension, XF86MiscQueryVersion, XF86MiscGetMouseSettings, XF86MiscSetMouseSettings, XF86MiscGetKbdSettings, XF86MiscSetKbdSet- tings - XFree86-Misc extension interface functions 1mSYNTAX0m #include Bool XF86MiscQueryExtension( Display *4mdisplay24m, int *4mevent_base_return24m, int *4merror_base_return24m); Bool XF86MiscQueryVersion( Display *4mdisplay24m, int *4mmajor_version_return24m, int *4mminor_version_return24m); Status XF86MiscGetMouseSettings( Display *4mdisplay24m, XF86MiscMouseSettings *4mmseinfo24m); Status XF86MiscSetMouseSettings( Display *4mdisplay24m, XF86MiscMouseSettings *4mmseinfo24m); Status XF86MiscGetKbdSettings( Display *4mdisplay24m, XF86MiscKbdSettings *4mkbdinfo24m); Status XF86MiscSetKbdSettings( Display *4mdisplay24m, XF86MiscKbdSettings *4mkbdinfo24m); 1mARGUMENTS0m 4mdisplay24m Specifies the connection to the X server. 4mscreen24m Specifies which screen number the setting apply to. 4mevent_base_return24m Returns the base event number for the extension. 4merror_base_return24m Returns the base error number for the extension. 4mmajor_version_return0m Returns the major version number of the extension. 4mminor_version_return0m Returns the minor version number of the extension. 4mmseinfo24m Specifies a structure which contains the mouse parameters. 4mkbdinfo24m Specifies a structure which contains the keyboard parameters. 1mSTRUCTURES0m 4mMouse:0m typedef struct { char *device; /* returned path to device */ int type; /* mouse protocol */ int baudrate; /* 1200, 2400, 4800, or 9600 */ int samplerate; /* samples per second */ int resolution; /* resolution, count per inch */ int buttons; /* number of buttons */ Bool emulate3buttons; /* Button1+Button3 -> Button2 ? */ int emulate3timeout; /* in milliseconds */ Bool chordmiddle; /* Button1+Button3 == Button2 ? */ int flags; /* Device open flags */ } XF86MiscMouseSettings; 4mKeyboard:0m typedef struct { int type; /* of keyboard: 84-key, 101-key, Xqueue */ int rate; /* repeat rate */ int delay; /* delay until repeat starts */ Bool servnumlock; /* Server handles NumLock ? */ } XF86MiscKbdSettings; 1mDESCRIPTION0m These functions provide an interface to the 4mXFree86-Misc24m extension which allows various server settings to be queried and changed dynami- cally. Applications that use these functions must be linked with 4m-lXxf86misc0m 1mPOWER-SAVER FUNCTIONS0m The 4mXF86MiscGetSaver24m and 4mXF86MiscSetSaver24m functions have been removed. This functionality is now provided by the DPMS extension. 1mMOUSE FUNCTIONS0m Mouse parameters can be queried using the function 4mXF86MiscGetMouseSet-0m 4mtings24m. The structure pointed to by its second argument is filled in with the current mouse settings. Not all fields are valid in all cases. For example, when the protocol indicates a bus mouse (i.e. the type field has value 4mMTYPE_BUSMOUSE24m as defined in 4mxf86misc.h24m), then the value in the 4mbaudrate24m field should be ignored as it does not apply to bus mice. The 4msamplerate24m field contains the resolution in lines per inch when using the Hitachi tablet protocol. The device field of the structure points to dynamically allocated stor- age which should be freed by the caller. Any of the fields of the structure can be altered and then passed to the 4mXF86MiscSetMouseSettings24m function to change their value in the server, with the following restrictions: 1) The device can not be changed 2) The protocol can not be changed to or from Xqueue or OsMouse 3) The buttons field can not be changed 4) Invalid combinations of parameters are not allowed The server will generate an error if any of the above is attempted, except the first - the contents of the device field are simply ignored. A change of the protocol causes the device to be closed and reopened. Changes to the baud rate, sample rate, resolution or flags, when appli- cable to the selected protocol, also cause a reopen of the device. A reopen can be forced by using the MF_REOPEN flag, except in the case of the OsMouse and Xqueue protocols which ignore all attempts to reopen the device. 1mKEYBOARD FUNCTIONS0m The 4mXF86MiscGetKbdSettings24m function allows you to retrieve the current keyboard-related settings from the server. Using the 4mXF86MiscSetKbdSettings24m function, the keyboard autorepeat delay and rate can be set. Requests to change the 4mtype24m and 4mservnumlock0m fields are ignored (except for checking for an invalid keyboard type). This is expected to change in a future release. 1mOTHER FUNCTIONS0m Two functions, 4mXF86MiscQueryExtension24m and 4mXF86MiscQueryVersion24m, are provided which allow the client to query some information regarding the extension itself. 1mPREDEFINED VALUES0m The header file 4mX11/extensions/xf86misc.h24m contains definitions for 1mMTYPE_22m* Mouse protocols 1mKTYPE_22m* Keyboard types 1mMF_22m* Mouse flags 1mSEE ALSO0m xset(1), XF86Config(5) 1mAUTHORS0m Joe Moss and David Dawes, The XFree86 Project, Inc. XF86VIDMODE(3X11) X FUNCTIONS XF86VIDMODE(3X11) 1mNAME0m XF86VidModeQueryExtension, XF86VidModeQueryVersion, XF86VidModeSet- ClientVersion, XF86VidModeGetModeLine, XF86VidModeGetAllModeLines, XF86VidModeDeleteModeLine, XF86VidModeModModeLine, XF86VidModeValidate- ModeLine, XF86VidModeSwitchMode, XF86VidModeSwitchToMode, XF86VidMode- LockModeSwitch, XF86VidModeGetMonitor, XF86VidModeGetViewPort, XF86Vid- ModeSetViewPort, XF86VidModeGetDotClocks, XF86VidModeGetGamma, XF86Vid- ModeSetGamma, XF86VidModeGetGammaRamp, XF86VidModeSetGammaRamp, XF86VidModeGetGammaRampSize, XF86VidModeGetPermissions - XFree86-Vid- Mode extension interface functions 1mSYNTAX0m #include Bool XF86VidModeQueryExtension( Display *4mdisplay24m, int *4mevent_base_return24m, int *4merror_base_return24m); Bool XF86VidModeQueryVersion( Display *4mdisplay24m, int *4mmajor_version_return24m, int *4mminor_version_return24m); Bool XF86VidModeSetClientVersion( Display *4mdisplay24m); Bool XF86VidModeGetModeLine( Display *4mdisplay24m, int 4mscreen24m, int *4mdotclock_return24m, XF86VidModeModeLine *4mmodeline24m); Bool XF86VidModeGetAllModeLines( Display *4mdisplay24m, int 4mscreen24m, int *4mmodecount_return24m, XF86VidModeModeInfo ***4mmodesinfo24m); Bool XF86VidModeDeleteModeLine( Display *4mdisplay24m, int 4mscreen24m, XF86VidModeModeInfo *4mmodeline24m); Bool XF86VidModeModModeLine( Display *4mdisplay24m, int 4mscreen24m, XF86VidModeModeLine *4mmodeline24m); Status XF86VidModeValidateModeLine( Display *4mdisplay24m, int 4mscreen24m, XF86VidModeModeLine *4mmodeline24m); Bool XF86VidModeSwitchMode( Display *4mdisplay24m, int 4mscreen24m, int 4mzoom24m); Bool XF86VidModeSwitchToMode( Display *4mdisplay24m, int 4mscreen24m, XF86VidModeModeInfo *4mmodeline24m); Bool XF86VidModeLockModeSwitch( Display *4mdisplay24m, int 4mscreen24m, int 4mlock24m); Bool XF86VidModeGetMonitor( Display *4mdisplay24m, int 4mscreen24m, XF86VidModeMonitor *4mmonitor24m); Bool XF86VidModeGetViewPort( Display *4mdisplay24m, int 4mscreen24m, int *4mx_return24m, int *4my_return24m); Bool XF86VidModeSetViewPort( Display *4mdisplay24m, int 4mscreen24m, int 4mx24m, int 4my24m); XF86VidModeGetDotClocks( Display *4mdisplay24m, int 4mscreen24m, int *4mflags24m 4mreturn24m, int *4mnumber24m 4mof24m 4mclocks24m 4mreturn24m, int *4mmax24m 4mdot24m 4mclock24m 4mreturn24m, int **4mclocks24m 4mreturn24m); XF86VidModeGetGamma( Display *4mdisplay24m, int 4mscreen24m, XF86VidModeGamma *4mGamma24m); XF86VidModeSetGamma( Display *4mdisplay24m, int 4mscreen24m, XF86VidModeGamma *4mGamma24m); XF86VidModeGetGammaRamp( Display *4mdisplay24m, int 4mscreen24m, int 4msize24m, unsigned short *4mred24m 4marray24m, unsigned short *4mgreen24m 4marray24m, unsigned short *4mblue24m 4marray24m); XF86VidModeSetGammaRamp( Display *4mdisplay24m, int 4mscreen24m, int 4msize24m, unsigned short *4mred24m 4marray24m, unsigned short *4mgreen24m 4marray24m, unsigned short *4mblue24m 4marray24m); XF86VidModeGetGammaRampSize( Display *4mdisplay24m, int 4mscreen24m, int *4msize24m); 1mARGUMENTS0m 4mdisplay24m Specifies the connection to the X server. 4mscreen24m Specifies which screen number the setting apply to. 4mevent_base_return24m Returns the base event number for the extension. 4merror_base_return24m Returns the base error number for the extension. 4mmajor_version_return0m Returns the major version number of the extension. 4mminor_version_return0m Returns the minor version number of the extension. 4mdotclock_return24m Returns the clock for the mode line. 4mmodecount_return24m Returns the number of video modes available in the server. 4mzoom24m If greater than zero, indicates that the server should switch to the next mode, otherwise switch to the previous mode. 4mlock24m Indicates that mode switching should be locked, if non-zero. 4mmodeline24m Specifies or returns the timing values for a video mode. 4mmodesinfo24m Returns the timing values and dotclocks for all of the available video modes. 4mmonitor24m Returns information about the monitor. 4mx24m Specifies the desired X location for the viewport. 4mx_return24m Returns the current X location of the viewport. 4my24m Specifies the desired Y location for the viewport. 4my_return24m Returns the current Y location of the viewport. 1mSTRUCTURES0m 4mVideo24m 4mMode24m 4mSettings:0m typedef struct { unsigned short hdisplay; /* Number of display pixels horizontally */ unsigned short hsyncstart; /* Horizontal sync start */ unsigned short hsyncend; /* Horizontal sync end */ unsigned short htotal; /* Total horizontal pixels */ unsigned short vdisplay; /* Number of display pixels vertically */ unsigned short vsyncstart; /* Vertical sync start */ unsigned short vsyncend; /* Vertical sync start */ unsigned short vtotal; /* Total vertical pixels */ unsigned int flags; /* Mode flags */ int privsize; /* Size of private */ INT32 *private; /* Server privates */ } XF86VidModeModeLine; typedef struct { unsigned int dotclock; /* Pixel clock */ unsigned short hdisplay; /* Number of display pixels horizontally */ unsigned short hsyncstart; /* Horizontal sync start */ unsigned short hsyncend; /* Horizontal sync end */ unsigned short htotal; /* Total horizontal pixels */ unsigned short vdisplay; /* Number of display pixels vertically */ unsigned short vsyncstart; /* Vertical sync start */ unsigned short vsyncend; /* Vertical sync start */ unsigned short vtotal; /* Total vertical pixels */ unsigned int flags; /* Mode flags */ int privsize; /* Size of private */ INT32 *private; /* Server privates */ } XF86VidModeModeInfo; 4mMonitor24m 4minformation:0m typedef struct { char* vendor; /* Name of manufacturer */ char* model; /* Model name */ float EMPTY; /* unused, for backward compatibility */ unsigned char nhsync; /* Number of horiz sync ranges */ XF86VidModeSyncRange* hsync;/* Horizontal sync ranges */ unsigned char nvsync; /* Number of vert sync ranges */ XF86VidModeSyncRange* vsync;/* Vertical sync ranges */ } XF86VidModeMonitor; typedef struct { float hi; /* Top of range */ float lo; /* Bottom of range */ } XF86VidModeSyncRange; typedef struct { int type; /* of event */ unsigned long serial; /* # of last request processed by server */ Bool send_event; /* true if this came from a SendEvent req */ Display *display; /* Display the event was read from */ Window root; /* root window of event screen */ int state; /* What happened */ int kind; /* What happened */ Bool forced; /* extents of new region */ Time time; /* event timestamp */ } XF86VidModeNotifyEvent; typedef struct { float red; /* Red Gamma value */ float green; /* Green Gamma value */ float blue; /* Blue Gamma value */ } XF86VidModeGamma; 1mDESCRIPTION0m These functions provide an interface to the server extension 4mXFree86-VidModeExtension24m which allows the video modes to be queried and adjusted dynamically and mode switching to be controlled. Applications that use these functions must be linked with 4m-lXxf86vm0m 1mMODELINE FUNCTIONS0m The 4mXF86VidModeGetModeLine24m function is used to query the settings for the currently selected video mode. The calling program should pass a pointer to a 4mXF86VidModeModeLine24m structure that it has already allo- cated. The function fills in the fields of the structure. If there are any server private values (currently only applicable to the S3 server) the function will allocate storage for them. Therefore, if the 4mprivsize24m field is non-zero, the calling program should call 4mXfree(private)24m to free the storage. 4mXF86VidModeGetAllModeLines24m returns the settings for all video modes. The calling program supplies the address of a pointer which will be set by the function to point to an array of 4mXF86VidModeModeInfo24m structures. The memory occupied by the array is dynamically allocated by the 4mXF86VidModeGetAllModeLines24m function and should be freed by the caller. The first element of the array corresponds to the current video mode. The 4mXF86VidModeModModeLine24m function can be used to change the settings of the current video mode provided the requested settings are valid (e.g. they don't exceed the capabilities of the monitor). Modes can be deleted with the 4mXF86VidModeDeleteModeLine24m function. The specified mode must match an existing mode. To be considered a match, all of the fields of the given 4mXF86VidModeModeInfo24m structure must match, except the 4mprivsize24m and 4mprivate24m fields. If the mode to be deleted is the current mode, a mode switch to the next mode will occur first. The last remaining mode can not be deleted. The validity of a mode can be checked with the 4mXF86VidModeValidateMode-0m 4mLine24m function. If the specified mode can be used by the server (i.e. meets all the constraints placed upon a mode by the combination of the server, card, and monitor) the function returns 4mMODE_OK24m, otherwise it returns a value indicating the reason why the mode is invalid (as defined in 4mxf86.h24m) 1mMODE SWITCH FUNCTIONS0m When the function 4mXF86VidModeSwitchMode24m is called, the server will change the video mode to next (or previous) video mode. The 4mXF86VidMod-0m 4meSwitchToMode24m function can be used to switch directly to the specified mode. Matching is as specified in the description of the 4mXF86VidMod-0m 4meAddModeLine24m function above. The 4mXF86VidModeLockModeSwitch24m function can be used to allow or disallow mode switching whether the request to switch modes comes from a call to the 4mXF86VidModeSwitchMode24m or 4mXF86Vid-0m 4mModeSwitchToMode24m functions or from one of the mode switch key sequences. Note: Because of the asynchronous nature of the X protocol, a call to 4mXFlush24m is needed if the application wants to see the mode change imme- diately. To be informed of the execution status of the request, a cus- tom error handler should be installed using 4mXSetErrorHandler24m before calling the mode switching function. 1mMONITOR FUNCTIONS0m Information known to the server about the monitor is returned by the 4mXF86VidModeGetMonitor24m function. The 4mhsync24m and 4mvsync24m fields each point to an array of 4mXF86VidModeSyncRange24m structures. The arrays contain 4mnhsync24m and 4mnvsync24m elements, respectively. The 4mhi24m and 4mlow24m values will be equal if a discreate value was given in the 4mXF86Config24m file. The 4mvendor24m, 4mmodel24m, 4mhsync24m, and 4mvsync24m fields point to dynamically allo- cated storage that should be freed by the caller. 1mVIEWPORT FUNCTIONS0m The 4mXF86VidModeGetViewPort24m and 4mXF86VidModeSetViewPort24m functions can be used to, respectively, query and change the location of the upper left corner of the viewport into the virtual screen. 1mOTHER FUNCTIONS0m The 4mXF86VidModeQueryVersion24m function can be used to determine the ver- sion of the extension built into the server. The function 4mXF86VidModeQueryExtension24m returns the lowest numbered error and event values assigned to the extension. 1mBUGS0m The XF86VidModeSetClientVersion, XF86VidModeGetDotClocks, XF86VidMod- eGetGamma, XF86VidModeSetGamma, XF86VidModeSetGammaRamp, XF86VidMod- eGetGammaRamp, XF86VidModeGetGammaRampSize, and XF86VidModeGetPermis- sions functions need to be documented. In the meantime, check the source code for information about how to use them. 1mSEE ALSO0m XFree86(1), XF86Config(5), XFlush(3), XSetErrorHandler(3), xvidtune(1) 1mAUTHORS0m Kaleb Keithley, Jon Tombs, David Dawes, and Joe Moss X(7) X(7) 1mNAME0m X - a portable, network-transparent window system 1mSYNOPSIS0m The X Window System is a network transparent window system which runs on a wide range of computing and graphics machines. It should be rela- tively straightforward to build the X Consortium software distribution on most ANSI C and POSIX compliant systems. Commercial implementations are also available for a wide range of platforms. The X Consortium requests that the following names be used when refer- ring to this software: X X Window System X Version 11 X Window System, Version 11 X11 4mX24m 4mWindow24m 4mSystem24m is a trademark of X Consortium, Inc. 1mDESCRIPTION0m X Window System servers run on computers with bitmap displays. The server distributes user input to and accepts output requests from vari- ous client programs through a variety of different interprocess commu- nication channels. Although the most common case is for the client programs to be running on the same machine as the server, clients can be run transparently from other machines (including machines with dif- ferent architectures and operating systems) as well. X supports overlapping hierarchical subwindows and text and graphics operations, on both monochrome and color displays. For a full explana- tion of the functions that are available, see the 4mXlib24m 4m-24m 4mC24m 4mLanguage24m 4mX0m 4mInterface24m manual, the 4mX24m 4mWindow24m 4mSystem24m 4mProtocol24m specification, the 4mX0m 4mToolkit24m 4mIntrinsics24m 4m-24m 4mC24m 4mLanguage24m 4mInterface24m manual, and various toolkit documents. The number of programs that use 4mX24m is quite large. Programs provided in the core X Consortium distribution include: a terminal emulator, 4mxterm24m; a window manager, 4mtwm24m; a display manager, 4mxdm24m; a console redirect pro- gram, 4mxconsole24m; a mail interface, 4mxmh24m; a bitmap editor, 4mbitmap24m; resource listing/manipulation tools, 4mappres24m, 4meditres24m; access control programs, 4mxauth24m, 4mxhost24m, and 4miceauth24m; user preference setting programs, 4mxrdb24m, 4mxcmsdb24m, 4mxset24m, 4mxsetroot24m, 4mxstdcmap24m, and 4mxmodmap24m; clocks, 4mxclock24m and 4moclock24m; a font displayer, (4mxfd24m; utilities for listing information about fonts, windows, and displays, 4mxlsfonts24m, 4mxwininfo24m, 4mxlsclients24m, 4mxdpyinfo24m, 4mxlsatoms24m, and 4mxprop24m; screen image manipulation utilities, 4mxwd24m, 4mxwud24m, and 4mxmag24m; a performance measurement utility, 4mx11perf24m; a font compiler, 4mbdftopcf24m; a font server and related utilities, 4mxfs24m, 4mfsinfo24m, 4mfslsfonts24m, 4mfstobdf24m; a display server and related utilities, 4mXserver24m, 4mrgb24m, 4mmkfont-0m 4mdir24m; remote execution utilities, 4mrstart24m and 4mxon24m; a clipboard manager, 4mxclipboard24m; keyboard description compiler and related utilities, 4mxkb-0m 4mcomp24m, 4mxkbprint24m, 4mxkbbell24m, 4mxkbevd24m, 4mxkbvleds24m, and 4mxkbwatch24m; a utility to terminate clients, 4mxkill24m; an optimized X protocol proxy, 4mlbxproxy24m; a firewall security proxy, 4mxfwp24m; a proxy manager to control them, 4mproxym-0m 4mngr24m; a utility to find proxies, 4mxfindproxy24m; Netscape Navigator Plug- ins, 4mlibxrx.so24m and 4mlibxrxnest.so24m; an RX MIME-type helper program, 4mxrx24m; and a utility to cause part or all of the screen to be redrawn, 4mxre-0m 4mfresh24m. Many other utilities, window managers, games, toolkits, etc. are included as user-contributed software in the X Consortium distribution, or are available using anonymous ftp on the Internet. See your site administrator for details. 1mSTARTING UP0m There are two main ways of getting the X server and an initial set of client applications started. The particular method used depends on what operating system you are running and whether or not you use other window systems in addition to X. 4mxdm24m 1m(the X Display Manager)0m If you want to always have X running on your display, your site administrator can set your machine up to use the X Display Man- ager 4mxdm24m. This program is typically started by the system at boot time and takes care of keeping the server running and get- ting users logged in. If you are running 4mxdm24m, you will see a window on the screen welcoming you to the system and asking for your username and password. Simply type them in as you would at a normal terminal, pressing the Return key after each. If you make a mistake, 4mxdm24m will display an error message and ask you to try again. After you have successfully logged in, 4mxdm0m will start up your X environment. By default, if you have an executable file named 4m.xsession24m in your home directory, 4mxdm0m will treat it as a program (or shell script) to run to start up your initial clients (such as terminal emulators, clocks, a window manager, user settings for things like the background, the speed of the pointer, etc.). Your site administrator can provide details. 4mxinit24m 1m(run manually from the shell)0m Sites that support more than one window system might choose to use the 4mxinit24m program for starting X manually. If this is true for your machine, your site administrator will probably have provided a program named "x11", "startx", or "xstart" that will do site-specific initialization (such as loading convenient default resources, running a window manager, displaying a clock, and starting several terminal emulators) in a nice way. If not, you can build such a script using the 4mxinit24m program. This utility simply runs one user-specified program to start the server, runs another to start up any desired clients, and then waits for either to finish. Since either or both of the user-specified programs may be a shell script, this gives sub- stantial flexibility at the expense of a nice interface. For this reason, 4mxinit24m is not intended for end users. 1mDISPLAY NAMES0m From the user's perspective, every X server has a 4mdisplay24m 4mname24m of the form: 4mhostname:displaynumber.screennumber0m This information is used by the application to determine how it should connect to the server and which screen it should use by default (on displays with multiple monitors): 4mhostname0m The 4mhostname24m specifies the name of the machine to which the display is physically connected. If the hostname is not given, the most efficient way of communicating to a server on the same machine will be used. 4mdisplaynumber0m The phrase "display" is usually used to refer to collection of monitors that share a common keyboard and pointer (mouse, tablet, etc.). Most workstations tend to only have one key- board, and therefore, only one display. Larger, multi-user systems, however, frequently have several displays so that more than one person can be doing graphics work at once. To avoid confusion, each display on a machine is assigned a 4mdisplay24m 4mnum-0m 4mber24m (beginning at 0) when the X server for that display is started. The display number must always be given in a display name. 4mscreennumber0m Some displays share a single keyboard and pointer among two or more monitors. Since each monitor has its own set of windows, each screen is assigned a 4mscreen24m 4mnumber24m (beginning at 0) when the X server for that display is started. If the screen number is not given, screen 0 will be used. On POSIX systems, the default display name is stored in your DISPLAY environment variable. This variable is set automatically by the 4mxterm0m terminal emulator. However, when you log into another machine on a network, you will need to set DISPLAY by hand to point to your display. For example, % setenv DISPLAY myws:0 $ DISPLAY=myws:0; export DISPLAY The 4mxon24m script can be used to start an X program on a remote machine; it automatically sets the DISPLAY variable correctly. Finally, most X programs accept a command line option of 1m-display 4m22mdis-0m 4mplayname24m to temporarily override the contents of DISPLAY. This is most commonly used to pop windows on another person's screen or as part of a "remote shell" command to start an xterm pointing back to your display. For example, % xeyes -display joesws:0 -geometry 1000x1000+0+0 % rsh big xterm -display myws:0 -ls 24m:4m/.../0m An RGB Device specification is identified by the prefix "rgb:" and has the following syntax: rgb:4m//0m 4m24m, 4m24m, 4m24m := 4mh24m | 4mhh24m | 4mhhh24m | 4mhhhh0m 4mh24m := single hexadecimal digits Note that 4mh24m indicates the value scaled in 4 bits, 4mhh24m the value scaled in 8 bits, 4mhhh24m the value scaled in 12 bits, and 4mhhhh24m the value scaled in 16 bits, respectively. These values are passed directly to the X server, and are assumed to be gamma corrected. The eight primary colors can be represented as: black rgb:0/0/0 red rgb:ffff/0/0 green rgb:0/ffff/0 blue rgb:0/0/ffff yellow rgb:ffff/ffff/0 magenta rgb:ffff/0/ffff cyan rgb:0/ffff/ffff white rgb:ffff/ffff/ffff For backward compatibility, an older syntax for RGB Device is sup- ported, but its continued use is not encouraged. The syntax is an ini- tial sharp sign character followed by a numeric specification, in one of the following formats: #RGB (4 bits each) #RRGGBB (8 bits each) #RRRGGGBBB (12 bits each) #RRRRGGGGBBBB (16 bits each) The R, G, and B represent single hexadecimal digits. When fewer than 16 bits each are specified, they represent the most-significant bits of the value (unlike the "rgb:" syntax, in which values are scaled). For example, #3a7 is the same as #3000a0007000. An RGB intensity specification is identified by the prefix "rgbi:" and has the following syntax: rgbi:4m//0m The red, green, and blue are floating point values between 0.0 and 1.0, inclusive. They represent linear intensity values, with 1.0 indicating full intensity, 0.5 half intensity, and so on. These values will be gamma corrected by 4mXlib24m before being sent to the X server. The input format for these values is an optional sign, a string of numbers possi- bly containing a decimal point, and an optional exponent field contain- ing an E or e followed by a possibly signed integer string. The standard device-independent string specifications have the follow- ing syntax: CIEXYZ:4m//24m (4mnone24m, 1, 4mnone24m) CIEuvY:4m//24m (~.6, ~.6, 1) CIExyY:4m//24m (~.75, ~.85, 1) CIELab:4m//24m (100, 4mnone24m, 4mnone24m) CIELuv:4m//24m (100, 4mnone24m, 4mnone24m) TekHVC:4m//24m (360, 100, 100) All of the values (C, H, V, X, Y, Z, a, b, u, v, y, x) are floating point values. Some of the values are constrained to be between zero and some upper bound; the upper bounds are given in parentheses above. The syntax for these values is an optional '+' or '-' sign, a string of digits possibly containing a decimal point, and an optional exponent field consisting of an 'E' or 'e' followed by an optional '+' or '-' followed by a string of digits. For more information on device independent color, see the 4mXlib24m refer- ence manual. 1mKEYBOARDS0m The X keyboard model is broken into two layers: server-specific codes (called 4mkeycodes24m) which represent the physical keys, and server-inde- pendent symbols (called 4mkeysyms24m) which represent the letters or words that appear on the keys. Two tables are kept in the server for con- verting keycodes to keysyms: 4mmodifier24m 4mlist0m Some keys (such as Shift, Control, and Caps Lock) are known as 4mmodifier24m and are used to select different symbols that are attached to a single key (such as Shift-a generates a capital A, and Control-l generates a control character ^L). The server keeps a list of keycodes corresponding to the various modifier keys. Whenever a key is pressed or released, the server gener- ates an 4mevent24m that contains the keycode of the indicated key as well as a mask that specifies which of the modifier keys are currently pressed. Most servers set up this list to initially contain the various shift, control, and shift lock keys on the keyboard. 4mkeymap24m 4mtable0m Applications translate event keycodes and modifier masks into keysyms using a 4mkeysym24m 4mtable24m which contains one row for each keycode and one column for various modifier states. This table is initialized by the server to correspond to normal typewriter conventions. The exact semantics of how the table is inter- preted to produce keysyms depends on the particular program, libraries, and language input method used, but the following conventions for the first four keysyms in each row are gener- ally adhered to: The first four elements of the list are split into two groups of keysyms. Group 1 contains the first and second keysyms; Group 2 con- tains the third and fourth keysyms. Within each group, if the first element is alphabetic and the the second element is the special keysym 4mNoSymbol24m, then the group is treated as equivalent to a group in which the first element is the lowercase letter and the second element is the uppercase letter. Switching between groups is controlled by the keysym named MODE SWITCH, by attaching that keysym to some key and attaching that key to any one of the modifiers Mod1 through Mod5. This modifier is called the ``group modifier.'' Group 1 is used when the group modifier is off, and Group 2 is used when the group modifier is on. Within a group, the modifier state determines which keysym to use. The first keysym is used when the Shift and Lock modifiers are off. The second keysym is used when the Shift modifier is on, when the Lock mod- ifier is on and the second keysym is uppercase alphabetic, or when the Lock modifier is on and is interpreted as ShiftLock. Otherwise, when the Lock modifier is on and is interpreted as CapsLock, the state of the Shift modifier is applied first to select a keysym; but if that keysym is lowercase alphabetic, then the corresponding uppercase keysym is used instead. 1mOPTIONS0m Most X programs attempt to use the same names for command line options and arguments. All applications written with the X Toolkit Intrinsics automatically accept the following options: 1m-display 4m22mdisplay0m This option specifies the name of the X server to use. 1m-geometry 4m22mgeometry0m This option specifies the initial size and location of the win- dow. 1m-bg 4m22mcolor24m1m, -background 4m22mcolor0m Either option specifies the color to use for the window back- ground. 1m-bd 4m22mcolor24m1m, -bordercolor 4m22mcolor0m Either option specifies the color to use for the window border. 1m-bw 4m22mnumber24m1m, -borderwidth 4m22mnumber0m Either option specifies the width in pixels of the window bor- der. 1m-fg 4m22mcolor24m1m, -foreground 4m22mcolor0m Either option specifies the color to use for text or graphics. 1m-fn 4m22mfont24m1m, -font 4m22mfont0m Either option specifies the font to use for displaying text. 1m-iconic0m This option indicates that the user would prefer that the application's windows initially not be visible as if the win- dows had be immediately iconified by the user. Window managers may choose not to honor the application's request. 1m-name0m This option specifies the name under which resources for the application should be found. This option is useful in shell aliases to distinguish between invocations of an application, without resorting to creating links to alter the executable file name. 1m-rv22m, 1m-reverse0m Either option indicates that the program should simulate reverse video if possible, often by swapping the foreground and background colors. Not all programs honor this or implement it correctly. It is usually only used on monochrome displays. 1m+rv0m This option indicates that the program should not simulate reverse video. This is used to override any defaults since reverse video doesn't always work properly. 1m-selectionTimeout0m This option specifies the timeout in milliseconds within which two communicating applications must respond to one another for a selection request. 1m-synchronous0m This option indicates that requests to the X server should be sent synchronously, instead of asynchronously. Since 4mXlib24m nor- mally buffers requests to the server, errors do not necessarily get reported immediately after they occur. This option turns off the buffering so that the application can be debugged. It should never be used with a working program. 1m-title 4m22mstring0m This option specifies the title to be used for this window. This information is sometimes used by a window manager to pro- vide some sort of header identifying the window. 1m-xnllanguage 4m22mlanguage[_territory][.codeset]0m This option specifies the language, territory, and codeset for use in resolving resource and other filenames. 1m-xrm 4m22mresourcestring0m This option specifies a resource name and value to override any defaults. It is also very useful for setting resources that don't have explicit command line arguments. 1mRESOURCES0m To make the tailoring of applications to personal preferences easier, X provides a mechanism for storing default values for program resources (e.g. background color, window title, etc.) Resources are specified as strings that are read in from various places when an application is run. Program components are named in a hierarchical fashion, with each node in the hierarchy identified by a class and an instance name. At the top level is the class and instance name of the application itself. By convention, the class name of the application is the same as the program name, but with the first letter capitalized (e.g. 4mBitmap24m or 4mEmacs24m) although some programs that begin with the letter ``x'' also capitalize the second letter for historical reasons. The precise syntax for resources is: ResourceLine = Comment | IncludeFile | ResourceSpec | Comment = "!" {} IncludeFile = "#" WhiteSpace "include" WhiteSpace FileName WhiteSpace FileName = ResourceSpec = WhiteSpace ResourceName WhiteSpace ":" WhiteSpace Value ResourceName = [Binding] {Component Binding} ComponentName Binding = "." | "*" WhiteSpace = { | } Component = "?" | ComponentName ComponentName = NameChar {NameChar} NameChar = "a"-"z" | "A"-"Z" | "0"-"9" | "_" | "-" Value = {} Elements separated by vertical bar (|) are alternatives. Curly braces ({...}) indicate zero or more repetitions of the enclosed elements. Square brackets ([...]) indicate that the enclosed element is optional. Quotes ("...") are used around literal characters. IncludeFile lines are interpreted by replacing the line with the con- tents of the specified file. The word "include" must be in lowercase. The filename is interpreted relative to the directory of the file in which the line occurs (for example, if the filename contains no direc- tory or contains a relative directory specification). If a ResourceName contains a contiguous sequence of two or more Binding characters, the sequence will be replaced with single "." character if the sequence contains only "." characters, otherwise the sequence will be replaced with a single "*" character. A resource database never contains more than one entry for a given ResourceName. If a resource file contains multiple lines with the same ResourceName, the last line in the file is used. Any whitespace character before or after the name or colon in a ResourceSpec are ignored. To allow a Value to begin with whitespace, the two-character sequence ``\4mspace24m'' (backslash followed by space) is recognized and replaced by a space character, and the two-character sequence ``\4mtab24m'' (backslash followed by horizontal tab) is recognized and replaced by a horizontal tab character. To allow a Value to con- tain embedded newline characters, the two-character sequence ``\n'' is recognized and replaced by a newline character. To allow a Value to be broken across multiple lines in a text file, the two-character sequence ``\4mnewline24m'' (backslash followed by newline) is recognized and removed from the value. To allow a Value to contain arbitrary character codes, the four-character sequence ``\4mnnn24m'', where each 4mn24m is a digit character in the range of ``0''-``7'', is recognized and replaced with a single byte that contains the octal value specified by the sequence. Finally, the two-character sequence ``\\'' is recognized and replaced with a single backslash. When an application looks for the value of a resource, it specifies a complete path in the hierarchy, with both class and instance names. However, resource values are usually given with only partially speci- fied names and classes, using pattern matching constructs. An asterisk (*) is a loose binding and is used to represent any number of interven- ing components, including none. A period (.) is a tight binding and is used to separate immediately adjacent components. A question mark (?) is used to match any single component name or class. A database entry cannot end in a loose binding; the final component (which cannot be "?") must be specified. The lookup algorithm searches the resource database for the entry that most closely matches (is most specific for) the full name and class being queried. When more than one database entry matches the full name and class, precedence rules are used to select just one. The full name and class are scanned from left to right (from highest level in the hierarchy to lowest), one component at a time. At each level, the corresponding component and/or binding of each matching entry is determined, and these matching components and bindings are compared according to precedence rules. Each of the rules is applied at each level, before moving to the next level, until a rule selects a single entry over all others. The rules (in order of precedence) are: 1. An entry that contains a matching component (whether name, class, or "?") takes precedence over entries that elide the level (that is, entries that match the level in a loose binding). 2. An entry with a matching name takes precedence over both entries with a matching class and entries that match using "?". An entry with a matching class takes precedence over entries that match using "?". 3. An entry preceded by a tight binding takes precedence over entries preceded by a loose binding. Programs based on the X Tookit Intrinsics obtain resources from the following sources (other programs usually support some subset of these sources): 1mRESOURCE_MANAGER root window property0m Any global resources that should be available to clients on all machines should be stored in the RESOURCE_MANAGER property on the root window of the first screen using the 4mxrdb24m program. This is frequently taken care of when the user starts up X through the display manager or 4mxinit24m. 1mSCREEN_RESOURCES root window property0m Any resources specific to a given screen (e.g. colors) that should be available to clients on all machines should be stored in the SCREEN_RESOURCES property on the root window of that screen. The 4mxrdb24m program will sort resources automatically and place them in RESOURCE_MANAGER or SCREEN_RESOURCES, as appro- priate. 1mapplication-specific files0m Directories named by the environment variable XUSERFILESEARCH- PATH or the environment variable XAPPLRESDIR (which names a single directory and should end with a '/' on POSIX systems), plus directories in a standard place (usually under /usr/X11R6/lib/X11/, but this can be overridden with the XFILE- SEARCHPATH environment variable) are searched for for applica- tion-specific resources. For example, application default resources are usually kept in /usr/X11R6/lib/X11/app-defaults/. See the 4mX24m 4mToolkit24m 4mIntrinsics24m 4m-24m 4mC24m 4mLanguage24m 4mInterface24m manual for details. 1mXENVIRONMENT0m Any user- and machine-specific resources may be specified by setting the XENVIRONMENT environment variable to the name of a resource file to be loaded by all applications. If this vari- able is not defined, a file named 4m$HOME24m/.Xdefaults-4mhostname24m is looked for instead, where 4mhostname24m is the name of the host where the application is executing. 1m-xrm 4m22mresourcestring0m Resources can also be specified from the command line. The 4mresourcestring24m is a single resource name and value as shown above. Note that if the string contains characters interpreted by the shell (e.g., asterisk), they must be quoted. Any number of 1m-xrm 22marguments may be given on the command line. Program resources are organized into groups called 4mclasses24m, so that collections of individual resources (each of which are called 4minstances24m) can be set all at once. By convention, the instance name of a resource begins with a lowercase letter and class name with an upper case letter. Multiple word resources are concatenated with the first letter of the succeeding words capitalized. Applications written with the X Toolkit Intrinsics will have at least the following resources: 1mbackground (22mclass 1mBackground)0m This resource specifies the color to use for the window back- ground. 1mborderWidth (22mclass 1mBorderWidth)0m This resource specifies the width in pixels of the window bor- der. 1mborderColor (22mclass 1mBorderColor)0m This resource specifies the color to use for the window border. Most applications using the X Toolkit Intrinsics also have the resource 1mforeground 22m(class 1mForeground22m), specifying the color to use for text and graphics within the window. By combining class and instance specifications, application preferences can be set quickly and easily. Users of color displays will frequently want to set Background and Foreground classes to particular defaults. Specific color instances such as text cursors can then be overridden without having to define all of the related resources. For example, bitmap*Dashed: off XTerm*cursorColor: gold XTerm*multiScroll: on XTerm*jumpScroll: on XTerm*reverseWrap: on XTerm*curses: on XTerm*Font: 6x10 XTerm*scrollBar: on XTerm*scrollbar*thickness: 5 XTerm*multiClickTime: 500 XTerm*charClass: 33:48,37:48,45-47:48,64:48 XTerm*cutNewline: off XTerm*cutToBeginningOfLine: off XTerm*titeInhibit: on XTerm*ttyModes: intr ^c erase ^? kill ^u XLoad*Background: gold XLoad*Foreground: red XLoad*highlight: black XLoad*borderWidth: 0 emacs*Geometry: 80x65-0-0 emacs*Background: rgb:5b/76/86 emacs*Foreground: white emacs*Cursor: white emacs*BorderColor: white emacs*Font: 6x10 xmag*geometry: -0-0 xmag*borderColor: white If these resources were stored in a file called 4m.Xresources24m in your home directory, they could be added to any existing resources in the server with the following command: % xrdb -merge $HOME/.Xresources This is frequently how user-friendly startup scripts merge user-spe- cific defaults into any site-wide defaults. All sites are encouraged to set up convenient ways of automatically loading resources. See the 4mXlib24m manual section 4mResource24m 4mManager24m 4mFunctions24m for more information. 1mENVIRONMENT0m 1mDISPLAY0m This is the only mandatory environment variable. It must point to an X server. See section "Display Names" above. 1mXAUTHORITY0m This must point to a file that contains authorization data. The default is 4m$HOME/.Xauthority24m. See 1mXsecurity22m(7), 1mxauth22m(1), 1mxdm22m(1), 1mXau22m(3). 1mICEAUTHORITY0m This must point to a file that contains authorization data. The default is 4m$HOME/.ICEauthority24m. 1mLC_ALL22m, 1mLC_CTYPE22m, 1mLANG0m The first non-empty value among these three determines the cur- rent locale's facet for character handling, and in particular the default text encoding. See 1mlocale22m(7), 1msetlocale22m(3), 1mlocale22m(1). 1mXMODIFIERS0m This variable can be set to contain additional information important for the current locale setting. Typically set to 4m@im=24m to enable a particular input method. See 1mXSetLocaleModifiers22m(3). 1mXLOCALEDIR0m This must point to a directory containing the locale.alias file and Compose and XLC_LOCALE file hierarchies for all locales. The default value is 4m/usr/X11R6/lib/X11/locale24m. 1mXENVIRONMENT0m This must point to a file containing X resources. The default is 4m$HOME/.Xdefaults-24m. Unlike 4m/usr/X11R6/lib/X11/Xre-0m 4msources24m, it is consulted each time an X application starts. 1mXFILESEARCHPATH0m This must contain a colon separated list of path templates, where libXt will search for resource files. The default value consists of /usr/X11R6/lib/X11/%L/%T/%N%C%S:\ /usr/X11R6/lib/X11/%l/%T/%N%C%S:\ /usr/X11R6/lib/X11/%T/%N%C%S:\ /usr/X11R6/lib/X11/%L/%T/%N%S:\ /usr/X11R6/lib/X11/%l/%T/%N%S:\ /usr/X11R6/lib/X11/%T/%N%S A path template is transformed to a pathname by substituting: %N => name (basename) being searched for %T => type (dirname) being searched for %S => suffix being searched for %C => value of the resource "customization" (class "Customization") %L => the locale name %l => the locale's language (part before '_') %t => the locale's territory (part after '_` but before '.') %c => the locale's encoding (part after '.') 1mXUSERFILESEARCHPATH0m This must contain a colon separated list of path templates, where libXt will search for user dependent resource files. The default value is: $XAPPLRESDIR/%L/%N%C:\ $XAPPLRESDIR/%l/%N%C:\ $XAPPLRESDIR/%N%C:\ $HOME/%N%C:\ $XAPPLRESDIR/%L/%N:\ $XAPPLRESDIR/%l/%N:\ $XAPPLRESDIR/%N:\ $HOME/%N $XAPPLRESDIR defaults to 4m$HOME24m, see below. A path template is transformed to a pathname by substituting: %N => name (basename) being searched for %T => type (dirname) being searched for %S => suffix being searched for %C => value of the resource "customization" (class "Customization") %L => the locale name %l => the locale's language (part before '_') %t => the locale's territory (part after '_` but before '.') %c => the locale's encoding (part after '.') 1mXAPPLRESDIR0m This must point to a base directory where the user stores his application dependent resource files. The default value is 4m$HOME24m. Only used if XUSERFILESEARCHPATH is not set. 1mXKEYSYMDB0m This must point to a file containing nonstandard keysym defini- tions. The default value is 4m/usr/X11R6/lib/X11/XKeysymDB24m. 1mXCMSDB 22mThis must point to a color name database file. The default value is 4m/usr/X11R6/lib/X11/Xcms.txt24m. 1mXFT_CONFIG0m This must point to a configuration file for the Xft library. The default value is 4m/usr/X11R6/lib/X11/XftConfig24m. 1mRESOURCE_NAME0m This serves as main identifier for resources belonging to the program being executed. It defaults to the basename of pathname of the program. 1mSESSION_MANAGER0m Denotes the session manager the application should connect. See 1mxsm22m(1), 1mrstart22m(1). 1mXF86BIGFONT_DISABLE0m Setting this variable to a non-empty value disables the XFree86-Bigfont extension. This extension is a mechanism to reduce the memory consumption of big fonts by use of shared mem- ory. 1mXKB_FORCE0m 1mXKB_DISABLE0m 1mXKB_DEBUG0m 1m_XKB_CHARSET0m 1m_XKB_LOCALE_CHARSETS0m 1m_XKB_OPTIONS_ENABLE0m 1m_XKB_LATIN1_LOOKUP0m 1m_XKB_CONSUME_LOOKUP_MODS0m 1m_XKB_CONSUME_SHIFT_AND_LOCK0m 1m_XKB_IGNORE_NEW_KEYBOARDS0m 1m_XKB_CONTROL_FALLBACK0m 1m_XKB_COMP_LED _XKB_COMP_FAIL_BEEP0m These variables influence the X Keyboard Extension. 1mEXAMPLES0m The following is a collection of sample command lines for some of the more frequently used commands. For more information on a particular command, please refer to that command's manual page. % xrdb $HOME/.Xresources % xmodmap -e "keysym BackSpace = Delete" % mkfontdir /usr/local/lib/X11/otherfonts % xset fp+ /usr/local/lib/X11/otherfonts % xmodmap $HOME/.keymap.km % xsetroot -solid 'rgbi:.8/.8/.8' % xset b 100 400 c 50 s 1800 r on % xset q % twm % xmag % xclock -geometry 48x48-0+0 -bg blue -fg white % xeyes -geometry 48x48-48+0 % xbiff -update 20 % xlsfonts '*helvetica*' % xwininfo -root % xdpyinfo -display joesworkstation:0 % xhost -joesworkstation % xrefresh % xwd | xwud % bitmap companylogo.bm 32x32 % xcalc -bg blue -fg magenta % xterm -geometry 80x66-0-0 -name myxterm $* % xon filesysmachine xload 1mDIAGNOSTICS0m A wide variety of error messages are generated from various programs. The default error handler in 4mXlib24m (also used by many toolkits) uses standard resources to construct diagnostic messages when errors occur. The defaults for these messages are usually stored in 4m/usr/X11R6/lib/X11/XErrorDB24m. If this file is not present, error mes- sages will be rather terse and cryptic. When the X Toolkit Intrinsics encounter errors converting resource strings to the appropriate internal format, no error messages are usu- ally printed. This is convenient when it is desirable to have one set of resources across a variety of displays (e.g. color vs. monochrome, lots of fonts vs. very few, etc.), although it can pose problems for trying to determine why an application might be failing. This behavior can be overridden by the setting the 4mStringConversionsWarning24m resource. To force the X Toolkit Intrinsics to always print string conversion error messages, the following resource should be placed in the file that gets loaded onto the RESOURCE_MANAGER property using the 4mxrdb24m pro- gram (frequently called 4m.Xresources24m or 4m.Xres24m in the user's home direc- tory): *StringConversionWarnings: on To have conversion messages printed for just a particular application, the appropriate instance name can be placed before the asterisk: xterm*StringConversionWarnings: on 1mSEE ALSO0m 1mXStandards22m(7), 1mXsecurity22m(7), 1mappres22m(1), 1mbdftopcf22m(1), 1mbitmap22m(1), 1meditres22m(1), 1mfsinfo22m(1), 1mfslsfonts22m(1), 1mfstobdf22m(1), 1miceauth22m(1), 1mimake22m(1), 1mlbxproxy22m(1), 1mmakedepend22m(1), 1mmkfontdir22m(1), 1moclock22m(1), 1mproxymngr22m(1), 1mrgb22m(1), 1mresize22m(1), 1mrstart22m(1), 1msmproxy22m(1), 1mtwm22m(1), 1mx11perf22m(1), 1mx11perf-0m 1mcomp22m(1), 1mxauth22m(1), 1mxclipboard22m(1), 1mxclock22m(1), 1mxcmsdb22m(1), 1mxconsole22m(1), 1mxdm22m(1), 1mxdpyinfo22m(1), 1mxfd22m(1), 1mxfindproxy22m(1), 1mxfs22m(1), 1mxfwp22m(1), 1mxhost22m(1), 1mxinit22m(1), 1mxkbbell22m(1), 1mxkbcomp22m(1), 1mxkbevd22m(1), 1mxkbprint22m(1), 1mxkbvleds22m(1), 1mxkbwatch22m(1), 1mxkill22m(1), 1mxlogo22m(1), 1mxlsatoms22m(1), 1mxlsclients22m(1), 1mxls-0m 1mfonts22m(1), 1mxmag22m(1), 1mxmh22m(1), 1mxmodmap22m(1), 1mxon22m(1), 1mxprop22m(1), 1mxrdb22m(1), 1mxre-0m 1mfresh22m(1), 1mxrx22m(1), 1mxset22m(1), 1mxsetroot22m(1), 1mxsm22m(1), 1mxstdcmap22m(1), 1mxterm22m(1), 1mxwd22m(1), 1mxwininfo22m(1), 1mxwud22m(1). 1mXserver22m(1), 1mXdec22m(1), 1mXmacII22m(1), 1mXsun22m(1), 1mXnest22m(1), 1mXvfb22m(1), 1mXFree8622m(1), 1mXDarwin22m(1), 1mkbd_mode22m(1), 4mXlib24m 4m-24m 4mC24m 4mLan-0m 4mguage24m 4mX24m 4mInterface24m, and 4mX24m 4mToolkit24m 4mIntrinsics24m 4m-24m 4mC24m 4mLanguage24m 4mInterface0m 1mTRADEMARKS0m X Window System is a trademark of X Consortium, Inc. 1mAUTHORS0m A cast of thousands, literally. The Release 6.3 distribution is brought to you by X Consortium, Inc. The names of all people who made it a reality will be found in the individual documents and source files. The staff members at the X Consortium responsible for this release are: Donna Converse (emeritus), Stephen Gildea (emeritus), Kaleb Keithley, Matt Landau (emeritus), Ralph Mor (emeritus), Janet O'Halloran, Bob Scheifler, Ralph Swick, Dave Wiggins (emeritus), and Reed Augliere. The X Window System standard was originally developed at the Laboratory for Computer Science at the Massachusetts Institute of Technology, and all rights thereto were assigned to the X Consortium on January 1, 1994. X Consortium, Inc. closed its doors on December 31, 1996. All rights to the X Window System have been assigned to the Open Software Foundation. XSTANDARDS(7) XSTANDARDS(7) 1mNAME0m XStandards - X Consortium Standards and X Project Team Specifications 1mSYNOPSIS0m The major goal of the X Consortium was to promote cooperation within the computer industry in the creation of standard software interfaces at all layers in the X Window System environment. The X Consortium produced standards - documents which defined network protocols, pro- gramming interfaces, and other aspects of the X environment. These standards continue to exist in The Open Group's X Project Team releases. The X Project Team produces specifications. Like X Consor- tium Standards, these are documents which define network protocols, programming interfaces, and other aspects of the X environment. Under the aegis of The Open Group, X Consortium standards, X Project Team specifications, and other specifications are the basis for portions of The Open Group's various CAE specifications. The status of various standards, specifications, and the software in the X11R6.4 distribution, is explained below. 1mSTANDARDS0m The following documents are X Consortium standards: X Window System Protocol X Version 11, Release 6.4 Robert W. Scheifler Xlib - C Language X Interface X Version 11, Release 6.4 James Gettys, Robert W. Scheifler, Ron Newman X Toolkit Intrinsics - C Language Interface X Version 11, Release 6.4 Joel McCormack, Paul Asente, Ralph R. Swick, Donna Converse Bitmap Distribution Format Version 2.1 X Version 11, Release 6.4 Inter-Client Communication Conventions Manual Version 2.0 X Version 11, Release 6.4 David Rosenthal, Stuart W. Marks Compound Text Encoding Version 1.1 X Version 11, Release 6.4 Robert W. Scheifler X Logical Font Description Conventions Version 1.5 X Version 11, Release 6.4 Jim Flowers, Stephen Gildea X Display Manager Control Protocol Version 1.0 X Version 11, Release 6.4 Keith Packard X11 Nonrectangular Window Shape Extension Version 1.0 X Version 11, Release 6.4 Keith Packard X11 Input Extension Protocol Specification Version 1.0 X Version 11, Release 6.4 George Sachs, Mark Patrick X11 Input Extension Library Specification X Version 11, Release 6.4 Mark Patrick, George Sachs The X Font Service Protocol Version 2.0 X Version 11, Release 6.4 Jim Fulton Inter-Client Exchange (ICE) Protocol Version 1.0 X Version 11, Release 6.4 Robert Scheifler, Jordan Brown Inter-Client Exchange (ICE) Library Version 1.0 X Version 11, Release 6.4 Ralph Mor X Session Management Protocol Version 1.0 X Version 11, Release 6.4 Mike Wexler X Session Management Library Version 1.0 X Version 11, Release 6.4 Ralph Mor The Input Method Protocol Version 1.0 X Version 11, Release 6.4 Masahiko Narita, Hideki Hiura X Synchronization Extension Version 3.0 X Version 11, Release 6.4 Tim Glauert, Dave Carver, Jim Gettys, David P. Wiggins XTEST Extension Version 2.2 Kieron Drake Big Requests Extension Version 2.0 X Version 11, Release 6.4 Bob Scheifler XC-MISC Extension Version 1.1 X Version 11, Release 6.4 Bob Scheifler, Dave Wiggins Double Buffer Extension Version 1.0 Ian Elliott, David P. Wiggins Record Extension Protocol Version 1.13 Martha Zimet, Stephen Gildea Record Extension Library Version 1.13 Martha Zimet, Stephen Gildea X Keyboard Extension Protocol X Version 11, Release 6.4 Erik Fortune X Keyboard Extension Library X Version 11, Release 6.4 Amber J. Benson, Gary Aitken, Erik Fortune, Donna Converse, George Sachs, and Will Walker X Print Extension Protocol X Version 11, Release 6.4 X Print Extension Library X Version 11, Release 6.4 X Application Group Extension Protocol and Library Version 1.0 X Version 11, Release 6.4 Kaleb Keithley X Security Extension Protocol and Library Version 4.0 X Version 11, Release 6.4 Dave Wiggins X Proxy Manager Protocol X Version 11, Release 6.4 Ralph Swick LBX Extension Protocol and Library X Version 11, Release 6.4 Keith Packard, Dave Lemke, Donna Converse, Ralph Mor, Ray Tice Remote Execution MIME Type Version 1.0 X Version 11, Release 6.4 Arnaud Le Hors 1mSPECIFICATIONS0m The following documents are X Project Team specifications: Colormap Utilization Policy and Extension Version 1.0 Kaleb Keithley Extended Visual Information Extension Version 1.0 Peter Daifuku X Display Power Management (DPMS) Extension Protocol and Library Version 1.0 Rob Lembree 1mINCLUDE FILES0m The following include files are part of the Xlib standard. The following include files are part of the X Toolkit Intrinsics stan- dard. The following include file is part of the Nonrectangular Window Shape Extension standard. The following include files are part of the X Input Extension standard. The following include files are part of the ICElib standard. The following include files are part of the SMlib standard. The following include file is part of the Synchronization standard. The following include file is part of the XTEST standard. The following include file is part of the Double Buffer Extension stan- dard. The following include file is part of the Record Library standard. The following include files are part of the X Keyboard Extension Library standard. The following include files are part of the X Print Extension Library standard. The following include files are part of the X Application Group Exten- sion Library standard. The following include files are part of the X Security Extension Library standard. The following include files are part of the LBX Extension library stan- dard. The following include files are part of the Colormap Utilization Policy and Extention specification. The following include files are part of the Extended Visual Information specification. The following include files are part of the X Display Management Sig- naling Extension specification. 1mNON STANDARDS0m The X11R6.4 distribution contains 4msample24m implementations, not 4mreference0m implementations. Although much of the code is believed to be correct, the code should be assumed to be in error wherever it conflicts with the specification. The only X Consortium standards are the ones listed above. No other documents, include files, or software in X11R6.4 carry special status within the X Consortium. For example, none of the following are stan- dards: internal interfaces of the sample server; the MIT-SHM extension; the Athena Widget Set; the Xmu library; the Xau library; the RGB data- base; the X Locale database; the fonts distributed with X11R6.4; the applications distributed with X11R6.4; the include files , , , , , , , and ; the bitmap files in . The Multi-Buffering extension was a draft standard of the X Consortium but has been superseded by DBE as a standard. 1mX REGISTRY0m The X Consortium maintained a registry of certain X-related items, to aid in avoiding conflicts and to aid in sharing of such items. The registry is published as part of the X Consortium software release. The latest version may also be available by sending a message to xstuff@x.org. The message can have a subject line and no body, or a single-line body and no subject, in either case the line looking like: send docs registry The X Registry and the names in it are not X Consortium standards. XSECURITY(7) XSECURITY(7) 1mNAME0m Xsecurity - X display access control 1mSYNOPSIS0m X provides mechanism for implementing many access control systems. The sample implementation includes five mechanisms: Host Access Simple host-based access control. MIT-MAGIC-COOKIE-1 Shared plain-text "cookies". XDM-AUTHORIZATION-1 Secure DES based private-keys. SUN-DES-1 Based on Sun's secure rpc system. MIT-KERBEROS-5 Kerberos Version 5 user-to-user. 1mACCESS SYSTEM DESCRIPTIONS0m Host Access Any client on a host in the host access control list is allowed access to the X server. This system can work reasonably well in an environment where everyone trusts everyone, or when only a single person can log in to a given machine, and is easy to use when the list of hosts used is small. This system does not work well when multiple people can log in to a single machine and mutual trust does not exist. The list of allowed hosts is stored in the X server and can be changed with the 4mxhost24m com- mand. When using the more secure mechanisms listed below, the host list is normally configured to be the empty list, so that only authorized programs can connect to the display. MIT-MAGIC-COOKIE-1 When using MIT-MAGIC-COOKIE-1, the client sends a 128 bit "cookie" along with the connection setup information. If the cookie presented by the client matches one that the X server has, the connection is allowed access. The cookie is chosen so that it is hard to guess; 4mxdm24m generates such cookies automati- cally when this form of access control is used. The user's copy of the cookie is usually stored in the 4m.Xauthority24m file in the home directory, although the environment variable 1mXAUTHORITY 22mcan be used to specify an alternate location. 4mXdm24m automatically passes a cookie to the server for each new login session, and stores the cookie in the user file at login. The cookie is transmitted on the network without encryption, so there is nothing to prevent a network snooper from obtaining the data and using it to gain access to the X server. This system is useful in an environment where many users are running appli- cations on the same machine and want to avoid interference from each other, with the caveat that this control is only as good as the access control to the physical network. In environments where network-level snooping is difficult, this system can work reasonably well. XDM-AUTHORIZATION-1 Sites who compile with DES support can use a DES-based access control mechanism called XDM-AUTHORIZATION-1. It is similar in usage to MIT-MAGIC-COOKIE-1 in that a key is stored in the 4m.Xau-0m 4mthority24m file and is shared with the X server. However, this key consists of two parts - a 56 bit DES encryption key and 64 bits of random data used as the authenticator. When connecting to the X server, the application generates 192 bits of data by combining the current time in seconds (since 00:00 1/1/1970 GMT) along with 48 bits of "identifier". For TCP/IPv4 connections, the identifier is the address plus port number; for local connections it is the process ID and 32 bits to form a unique id (in case multiple connections to the same server are made from a single process). This 192 bit packet is then encrypted using the DES key and sent to the X server, which is able to verify if the requestor is authorized to connect by decrypting with the same DES key and validating the authentica- tor and additional data. This system is useful in many environ- ments where host-based access control is inappropriate and where network security cannot be ensured. SUN-DES-1 Recent versions of SunOS (and some other systems) have included a secure public key remote procedure call system. This system is based on the notion of a network principal; a user name and NIS domain pair. Using this system, the X server can securely discover the actual user name of the requesting process. It involves encrypting data with the X server's public key, and so the identity of the user who started the X server is needed for this; this identity is stored in the 4m.Xauthority24m file. By extending the semantics of "host address" to include this notion of network principal, this form of access control is very easy to use. To allow access by a new user, use 4mxhost24m. For example, xhost keith@ ruth@mit.edu adds "keith" from the NIS domain of the local machine, and "ruth" in the "mit.edu" NIS domain. For keith or ruth to suc- cessfully connect to the display, they must add the principal who started the server to their 4m.Xauthority24m file. For example: xauth add expo.lcs.mit.edu:0 SUN-DES-1 unix.expo.lcs.mit.edu@our.domain.edu This system only works on machines which support Secure RPC, and only for users which have set up the appropriate public/private key pairs on their system. See the Secure RPC documentation for details. To access the display from a remote host, you may have to do a 4mkeylogin24m on the remote host first. MIT-KERBEROS-5 Kerberos is a network-based authentication scheme developed by MIT for Project Athena. It allows mutually suspicious princi- pals to authenticate each other as long as each trusts a third party, Kerberos. Each principal has a secret key known only to it and Kerberos. Principals includes servers, such as an FTP server or X server, and human users, whose key is their pass- word. Users gain access to services by getting Kerberos tickets for those services from a Kerberos server. Since the X server has no place to store a secret key, it shares keys with the user who logs in. X authentication thus uses the user-to-user scheme of Kerberos version 5. When you log in via 4mxdm24m, 4mxdm24m will use your password to obtain the initial Kerberos tickets. 4mxdm24m stores the tickets in a cre- dentials cache file and sets the environment variable 4mKRB5CCNAME0m to point to the file. The credentials cache is destroyed when the session ends to reduce the chance of the tickets being stolen before they expire. Since Kerberos is a user-based authorization protocol, like the SUN-DES-1 protocol, the owner of a display can enable and dis- able specific users, or Kerberos principals. The 4mxhost24m client is used to enable or disable authorization. For example, xhost krb5:judy krb5:gildea@x.org adds "judy" from the Kerberos realm of the local machine, and "gildea" from the "x.org" realm. 1mTHE AUTHORIZATION FILE0m Except for Host Access control, each of these systems uses data stored in the 4m.Xauthority24m file to generate the correct authorization informa- tion to pass along to the X server at connection setup. MIT-MAGIC- COOKIE-1 and XDM-AUTHORIZATION-1 store secret data in the file; so any- one who can read the file can gain access to the X server. SUN-DES-1 stores only the identity of the principal who started the server (unix.4mhostname24m@4mdomain24m when the server is started by 4mxdm24m), and so it is not useful to anyone not authorized to connect to the server. Each entry in the 4m.Xauthority24m file matches a certain connection family (TCP/IP, DECnet or local connections) and X display name (hostname plus display number). This allows multiple authorization entries for dif- ferent displays to share the same data file. A special connection fam- ily (FamilyWild, value 65535) causes an entry to match every display, allowing the entry to be used for all connections. Each entry addi- tionally contains the authorization name and whatever private autho- rization data is needed by that authorization type to generate the cor- rect information at connection setup time. The 4mxauth24m program manipulates the 4m.Xauthority24m file format. It under- stands the semantics of the connection families and address formats, displaying them in an easy to understand format. It also understands that SUN-DES-1 and MIT-KERBEROS-5 use string values for the authoriza- tion data, and displays them appropriately. The X server (when running on a workstation) reads authorization infor- mation from a file name passed on the command line with the 4m-auth0m option (see the 4mXserver24m manual page). The authorization entries in the file are used to control access to the server. In each of the autho- rization schemes listed above, the data needed by the server to ini- tialize an authorization scheme is identical to the data needed by the client to generate the appropriate authorization information, so the same file can be used by both processes. This is especially useful when 4mxinit24m is used. MIT-MAGIC-COOKIE-1 This system uses 128 bits of data shared between the user and the X server. Any collection of bits can be used. 4mXdm24m gener- ates these keys using a cryptographically secure pseudo random number generator, and so the key to the next session cannot be computed from the current session key. XDM-AUTHORIZATION-1 This system uses two pieces of information. First, 64 bits of random data, second a 56 bit DES encryption key (again, random data) stored in 8 bytes, the last byte of which is ignored. 4mXdm0m generates these keys using the same random number generator as is used for MIT-MAGIC-COOKIE-1. SUN-DES-1 This system needs a string representation of the principal which identifies the associated X server. This information is used to encrypt the client's authority information when it is sent to the X server. When 4mxdm24m starts the X server, it uses the root principal for the machine on which it is running (unix.4mhost-0m 4mname24m@4mdomain24m, e.g., "unix.expire.lcs.mit.edu@our.domain.edu"). Putting the correct principal name in the 4m.Xauthority24m file causes Xlib to generate the appropriate authorization informa- tion using the secure RPC library. MIT-KERBEROS-5 Kerberos reads tickets from the cache pointed to by the 4mKRB5CCNAME24m environment variable, so does not use any data from the 4m.Xauthority24m file. An entry with no data must still exist to tell clients that MIT-KERBEROS-5 is available. Unlike the 4m.Xauthority24m file for clients, the authority file passed by xdm to a local X server (with ``1m-auth 4m22mfilename24m'', see xdm(1)) does contain the name of the credentials cache, since the X server will not have the 4mKRB5CCNAME24m environment variable set. The data of the MIT-KERBEROS-5 entry is the credentials cache name and has the form ``UU:FILE:4mfilename24m'', where 4mfilename0m is the name of the credentials cache file created by xdm. Note again that this form is 4mnot24m used by clients. 1mFILES0m .Xauthority 1mSEE ALSO0m X(7), xdm(1), xauth(1), xhost(1), xinit(1), Xserver(1) APPRES(1) APPRES(1) 1mNAME0m appres - list X application resource database 1mSYNOPSIS0m 1mappres 22m[[class [instance]] [-1] [toolkitoptions] 1mDESCRIPTION0m The 4mappres24m program prints the resources seen by an application (or sub- hierarchy of an application) with the specified 4mclass24m and 4minstance0m names. It can be used to determine which resources a particular pro- gram will load. For example, % appres XTerm will list the resources that any 4mxterm24m program will load. If no appli- cation class is specified, the class 4m-AppResTest-24m is used. To match a particular instance name, specify an instance name explic- itly after the class name, or use the normal Xt toolkit option. For example, % appres XTerm myxterm or % appres XTerm -name myxterm To list resources that match a subhierarchy of an application, specify hierarchical class and instance names. The number of class and instance components must be equal, and the instance name should not be specified with a toolkit option. For example, % appres Xman.TopLevelShell.Form xman.topBox.form will list the resources of widgets of 4mxman24m topBox hierarchy. To list just the resources matching a specific level in the hierarchy, use the -1 option. For example, % appres XTerm.VT100 xterm.vt100 -1 will list the resources matching the 4mxterm24m vt100 widget. 1mSEE ALSO0m X(7), xrdb(1), listres(1) 1mAUTHOR0m Jim Fulton, MIT X Consortium BDFTOPCF(1) BDFTOPCF(1) 1mNAME0m bdftopcf - convert X font from Bitmap Distribution Format to Portable Compiled Format 1mSYNOPSIS0m 1mbdftopcf 22m[ 1m-p4m22mn24m ] [ 1m-u4m22mn24m ] [ 1m-m 22m] [ 1m-l 22m] [ 1m-M 22m] [ 1m-L 22m] [ 1m-t 22m] [ 1m-i 22m] [ 1m-o0m 4moutputfile24m ] fontfile.bdf 1mDESCRIPTION0m 4mBdftopcf24m is a font compiler for the X server and font server. Fonts in Portable Compiled Format can be read by any architecture, although the file is structured to allow one particular architecture to read them directly without reformatting. This allows fast reading on the appro- priate machine, but the files are still portable (but read more slowly) on other machines. 1mOPTIONS0m 1m-p4m22mn24m Sets the font glyph padding. Each glyph in the font will have each scanline padded in to a multiple of 4mn24m bytes, where 4mn24m is 1, 2, 4 or 8. 1m-u4m22mn24m Sets the font scanline unit. When the font bit order is dif- ferent from the font byte order, the scanline unit 4mn24m describes what unit of data (in bytes) are to be swapped; the unit 4mi24m can be 1, 2 or 4 bytes. 1m-m 22mSets the font bit order to MSB (most significant bit) first. Bits for each glyph will be placed in this order; i.e., the left most bit on the screen will be in the highest valued bit in each unit. 1m-l 22mSets the font bit order to LSB (least significant bit) first. The left most bit on the screen will be in the lowest valued bit in each unit. 1m-M 22mSets the font byte order to MSB first. All multi-byte data in the file (metrics, bitmaps and everything else) will be written most significant byte first. 1m-L 22mSets the font byte order to LSB first. All multi-byte data in the file (metrics, bitmaps and everything else) will be written least significant byte first. 1m-t 22mWhen this option is specified, 4mbdftopcf24m will convert fonts into "terminal" fonts when possible. A terminal font has each glyph image padded to the same size; the X server can usually render these types of fonts more quickly. 1m-i 22mThis option inhibits the normal computation of ink metrics. When a font has glyph images which do not fill the bitmap image (i.e., the "on" pixels don't extend to the edges of the met- rics) 4mbdftopcf24m computes the actual ink metrics and places them in the .pcf file; the -t option inhibits this behaviour. 1m-o 4m22moutput-file-name0m By default 4mbdftopcf24m writes the pcf file to standard output; this option gives the name of a file to be used instead. 1mSEE ALSO0m X(7) 1mAUTHOR0m Keith Packard, MIT X Consortium bdftruncate(1) XFree86 bdftruncate(1) 1mNAME0m bdftruncate - generate truncated BDF font from ISO 10646-1-encoded BDF font 1mSYNOPSIS0m 1mbdftruncate 4m22mthreshold24m 1m< 4m22msource.bdf24m 1m> 4m22mdestination.bdf0m 1mDESCRIPTION0m 1mbdftruncate 22mallows one to generate from an ISO10646-1 encoded BDF font other ISO10646-1 BDF fonts in which all characters above a threshold code value are stored unencoded. This is often desirable because the Xlib API and X11 protocol data structures used for representing font metric information are extremely inefficient when handling sparsely populated fonts. 1mEXAMPLE0m The command bdftruncate 0x3200 < 6x13.bdf > 6x13t.bdf will generate the file 6x13t.bdf in which all glyphs with codes >= 0x3200 will only be stored unencoded (i.e., they are encoded at code- point -1). 1mSEE ALSO0m 1mucs2any22m(1) 1mAUTHOR0m 1mbdftruncate 22mwas written by Markus Kuhn. Branden Robinson wrote this manual page, originally for the Debian Project. beforelight(1) beforelight(1) 1mNAME0m beforelight - screen saver 1mSYNOPSIS0m 1mbeforelight 22m[ 4m-toolkitoption24m ... ] 1mDESCRIPTION0m The 4mbeforelight24m program is a sample implementation of a screen saver for X servers supporting the MIT-SCREEN-SAVER extension. 1mAUTHORS0m Keith Packard, MIT X Consortium. BITMAP(1) BITMAP(1) 1mNAME0m bitmap, bmtoa, atobm - bitmap editor and converter utilities for the X Window System 1mSYNOPSIS0m 1mbitmap 22m[ 4m-options24m ... ] [ 4mfilename24m ] [ 4mbasename24m ] 1mbmtoa 22m[ 1m-chars 22m... ] [ 4mfilename24m ] 1matobm 22m[ 1m-chars 4m22mcc24m ] [ 1m-name 4m22mvariable24m ] [ 1m-xhot 4m22mnumber24m ] [ 1m-yhot 4m22mnumber0m ] [ 4mfilename24m ] 1mDESCRIPTION0m The 4mbitmap24m program is a rudimentary tool for creating or editing rect- angular images made up of 1's and 0's. Bitmaps are used in X for defining clipping regions, cursor shapes, icon shapes, and tile and stipple patterns. The 4mbmtoa24m and 4matobm24m filters convert 4mbitmap24m files (FILE FORMAT) to and from ASCII strings. They are most commonly used to quickly print out bitmaps and to generate versions for including in text. 1mCOMMAND LINE OPTIONS0m 4mBitmap24m supports the standard X Toolkit command line arguments (see 4mX24m(1)). The following additional arguments are supported as well. 1m-size 4m22mWIDTHxHEIGHT0m Specifies size of the grid in squares. 1m-sw 4m22mdimension0m Specifies the width of squares in pixels. 1m-sh 4m22mdimension0m Specifies the height of squares in pixels. 1m-gt 4m22mdimension0m Grid tolerance. If the square dimensions fall below the specified value, grid will be automatically turned off. 1m-grid, +grid0m Turns on or off the grid lines. 1m-axes, +axes0m Turns on or off the major axes. 1m-dashed, +dashed0m Turns on or off dashing for the frame and grid lines. 1m-stippled, +stippled0m Turns on or off stippling of highlighted squares. 1m-proportional, +proportional0m Turns proportional mode on or off. If proportional mode is on, square width is equal to square height. If proportional mode is off, 4mbitmap24m will use the smaller square dimension, if they were initially different. 1m-dashes 4m22mfilename0m Specifies the bitmap to be used as a stipple for dashing. 1m-stipple 4m22mfilename0m Specifies the bitmap to be used as a stipple for highlighting. 1m-hl 4m22mcolor0m Specifies the color used for highlighting. 1m-fr 4m22mcolor0m Specifies the color used for the frame and grid lines. 1mfilename0m Specifies the bitmap to be initially loaded into the program. If the file does not exist, 4mbitmap24m will assume it is a new file. 1mbasename0m Specifies the basename to be used in the C code output file. If it is different than the basename in the working file, 4mbitmap24m will change it when saving the file. 4mBmtoa24m accepts the following option: 1m-chars 4m22mcc0m This option specifies the pair of characters to use in the string version of the bitmap. The first character is used for 0 bits and the second character is used for 1 bits. The default is to use dashes (-) for 0's and sharp signs (#) for 1's. 4mAtobm24m accepts the following options: 1m-chars 4m22mcc0m This option specifies the pair of characters to use when converting string bitmaps into arrays of numbers. The first character repre- sents a 0 bit and the second character represents a 1 bit. The default is to use dashes (-) for 0's and sharp signs (#) for 1's. 1m-name 4m22mvariable0m This option specifies the variable name to be used when writing out the bitmap file. The default is to use the basename of the 4mfile-0m 4mname24m command line argument or leave it blank if the standard input is read. 1m-xhot 4m22mnumber0m This option specifies the X coordinate of the hotspot. Only posi- tive values are allowed. By default, no hotspot information is included. 1m-yhot 4m22mnumber0m This option specifies the Y coordinate of the hotspot. Only posi- tive values are allowed. By default, no hotspot information is included. 1mUSAGE0m 4mBitmap24m displays grid in which each square represents a single bit in the picture being edited. Actual size of the bitmap image, as it would appear normaly and inverted, can be obtained by pressing 1mMeta-I 22mkey. You are free to move the image popup out of the way to continue edit- ing. Pressing the left mouse button in the popup window or 1mMeta-I0m again will remove the real size bitmap image. If the bitmap is to be used for defining a cursor, one of the squares in the images may be designated as the hot spot. This determines where the cursor is actually pointing. For cursors with sharp tips (such as arrows or fingers), this is usually at the end of the tip; for symmet- ric cursors (such as crosses or bullseyes), this is usually at the cen- ter. Bitmaps are stored as small C code fragments suitable for including in applications. They provide an array of bits as well as symbolic con- stants giving the width, height, and hot spot (if specified) that may be used in creating cursors, icons, and tiles. 1mEDITING0m To edit a bitmap image simply click on one of the buttons with drawing commands (1mPoint, Curve, Line, Rectangle, 22metc.) and move the pointer into the bitmap grid window. Press one of the buttons on your mouse and the appropriate action will take place. You can either set, clear or invert the gird squares. Setting a grid square corresponds to set- ting a bit in the bitmap image to 1. Clearing a grid square corre- sponds to setting a bit in the bitmap image to 0. Inverting a grid square corresponds to changing a bit in the bitmap image from 0 to 1 or 1 to 0, depending what its previous state was. The default behavior of mouse buttons is as specified below. MouseButton1 Set MouseButton2 Invert MouseButton3 Clear MouseButton4 Clear MouseButton5 Clear This default behavior can be changed by setting the button function resources. An example is provided below. bitmap*button1Function: Set bitmap*button2Function: Clear bitmap*button3Function: Invert etc. The button function applies to all drawing commands, including copying, moving and pasting, flood filling and setting the hot spot. 1mDRAWING COMMANDS0m Here is the list of drawing commands accessible through the buttons at the left side of the application's window. Some commands can be aborted by pressing A inside the bitmap window, allowing the user to select different guiding points where applicable. 1mClear0m This command clears all bits in the bitmap image. The grid squares will be set to the background color. Pressing C inside the bitmap window has the same effect. 1mSet 22mThis command sets all bits in the bitmap image. The grid squares will be set to the foreground color. Pressing S inside the bitmap window has the same effect. 1mInvert0m This command inverts all bits in the bitmap image. The grid squares will be inverted appropriately. Pressing I inside the bit- map window has the same effect. 1mMark0m This command is used to mark an area of the grid by dragging out a rectangular shape in the highlighting color. Once the area is marked, it can be operated on by a number of commands (see 1mUp,0m 1mDown, Left, Right, Rotate, Flip, Cut, 22metc.) Only one marked area can be present at any time. If you attempt to mark another area, the old mark will vanish. The same effect can be achieved by pressing 1mShift-MouseButton1 22mand dragging out a rectangle in the grid window. Pressing 1mShift-MouseButton2 22mwill mark the entire grid area. 1mUnmark0m This command will cause the marked area to vanish. The same effect can be achieved by pressing 1mShift-MouseButton322m. 1mCopy0m This command is used to copy an area of the grid from one location to another. If there is no marked grid area displayed, 1mCopy0m behaves just like 1mMark 22mdescribed above. Once there is a marked grid area displayed in the highlighting color, this command has two alternative behaviors. If you click a mouse button inside the marked area, you will be able to drag the rectangle that represents the marked area to the desired location. After you release the mouse button, the area will be copied. If you click outside the marked area, 1mCopy 22mwill assume that you wish to mark a different region of the bitmap image, thus it will behave like 1mMark 22magain. 1mMove0m This command is used to move an area of the grid from one location to another. Its behavior resembles the behavior of 1mCopy 22mcommand, except that the marked area will be moved instead of copied. 1mFlip Horizontally0m This command will flip the bitmap image with respect to the hori- zontal axes. If a marked area of the grid is highlighted, it will operate only inside the marked area. Pressing H inside the bitmap window has the same effect. 1mUp 22mThis command moves the bitmap image one pixel up. If a marked area of the grid is highlighted, it will operate only inside the marked area. Pressing UpArrow inside the bitmap window has the same effect. 1mFlip Vertically0m This command will flip the bitmap image with respect to the verti- cal axes. If a marked area of the grid is highlighted, it will operate only inside the marked area. Pressing V inside the bitmap window has the same effect. 1mLeft0m This command moves the bitmap image one pixel to the left. If a marked area of the grid is highlighted, it will operate only inside the marked area. Pressing LeftArrow inside the bitmap window has the same effect. 1mFold0m This command will fold the bitmap image so that the opposite cor- ners become adjacent. This is useful when creating bitmap images for tiling. Pressing F inside the bitmap window has the same effect. 1mRight0m This command moves the bitmap image one pixel to the right. If a marked area of the grid is highlighted, it will operate only inside the marked area. Pressing RightArrow inside the bitmap window has the same effect. 1mRotate Left0m This command rotates the bitmap image 90 degrees to the left (counter clockwise.) If a marked area of the grid is highlighted, it will operate only inside the marked area. Pressing L inside the bitmap window has the same effect. 1mDown0m This command moves the bitmap image one pixel down. If a marked area of the grid is highlighted, it will operate only inside the marked area. Pressing DownArrow inside the bitmap window has the same effect. 1mRotate Right0m This command rotates the bitmap image 90 degrees to the right (clockwise.) If a marked area of the grid is highlighted, it will operate only inside the marked area. Pressing R inside the bitmap window has the same effect. 1mPoint0m This command will change the grid squares underneath the mouse pointer if a mouse button is being pressed down. If you drag the mouse button continuously, the line may not be continuous, depend- ing on the speed of your system and frequency of mouse motion events. 1mCurve0m This command will change the grid squares underneath the mouse pointer if a mouse button is being pressed down. If you drag the mouse button continuously, it will make sure that the line is con- tinuous. If your system is slow or 4mbitmap24m receives very few mouse motion events, it might behave quite strangely. 1mLine0m This command will change the gird squares in a line between two squares. Once you press a mouse button in the grid window, 4mbitmap0m will highlight the line from the square where the mouse button was initially pressed to the square where the mouse pointer is located. By releasing the mouse button you will cause the change to take effect, and the highlighted line will disappear. 1mRectangle0m This command will change the gird squares in a rectangle between two squares. Once you press a mouse button in the grid window, 4mbitmap24m will highlight the rectangle from the square where the mouse button was initially pressed to the square where the mouse pointer is located. By releasing the mouse button you will cause the change to take effect, and the highlighted rectangle will disap- pear. 1mFilled Rectangle0m This command is identical to 1mRectangle22m, except at the end the rec- tangle will be filled rather than outlined. 1mCircle0m This command will change the gird squares in a circle between two squares. Once you press a mouse button in the grid window, 4mbitmap0m will highlight the circle from the square where the mouse button was initially pressed to the square where the mouse pointer is located. By releasing the mouse button you will cause the change to take effect, and the highlighted circle will disappear. 1mFilled Circle0m This command is identical to 1mCircle22m, except at the end the circle will be filled rather than outlined. 1mFlood Fill0m This command will flood fill the connected area underneath the mouse pointer when you click on the desired square. Diagonally adjacent squares are not considered to be connected. 1mSet Hot Spot0m This command designates one square in the grid as the hot spot if this bitmap image is to be used for defining a cursor. Pressing a mouse button in the desired square will cause a diamond shape to be displayed. 1mClear Hot Spot0m This command removes any designated hot spot from the bitmap image. 1mUndo0m This command will undo the last executed command. It has depth one, that is, pressing 1mUndo 22mafter 1mUndo 22mwill undo itself. 1mFILE MENU0m The File menu commands can be accessed by pressing the File button and selecting the appropriate menu entry, or by pressing Ctrl key with another key. These commands deal with files and global bitmap parame- ters, such as size, basename, filename etc. 1mNew 22mThis command will clear the editing area and prompt for the name of the new file to be edited. It will not load in the new file. 1mLoad0m This command is used to load a new bitmap file into the bitmap edi- tor. If the current image has not been saved, user will be asked whether to save or ignore the changes. The editor can edit only one file at a time. If you need interactive editing, run a number of editors and use cut and paste mechanism as described below. 1mInsert0m This command is used to insert a bitmap file into the image being currently edited. After being prompted for the filename, click inside the grid window and drag the outlined rectangle to the loca- tion where you want to insert the new file. 1mSave0m This command will save the bitmap image. It will not prompt for the filename unless it is said to be . If you leave the filename undesignated or -, the output will be piped to stdout. 1mSave As0m This command will save the bitmap image after prompting for a new filename. It should be used if you want to change the filename. 1mResize0m This command is used to resize the editing area to the new number of pixels. The size should be entered in the WIDTHxHEIGHT format. The information in the image being edited will not be lost unless the new size is smaller that the current image size. The editor was not designed to edit huge files. 1mRescale0m This command is used to rescale the editing area to the new width and height. The size should be entered in the WIDTHxHEIGHT format. It will not do antialiasing and information will be lost if you rescale to the smaller sizes. Feel free to add you own algorithms for better rescaling. 1mFilename0m This command is used to change the filename without changing the basename nor saving the file. If you specify - for a filename, the output will be piped to stdout. 1mBasename0m This command is used to change the basename, if a different one from the specified filename is desired. 1mQuit0m This command will terminate the bitmap application. If the file was not saved, user will be prompted and asked whether to save the image or not. This command is preferred over killing the process. 1mEDIT MENU0m The Edit menu commands can be accessed by pressing the Edit button and selecting the appropriate menu entry, or by pressing Meta key with another key. These commands deal with editing facilities such as grid, axes, zooming, cut and paste, etc. 1mImage0m This command will display the image being edited and its inverse in its actual size in a separate window. The window can be moved away to continue with editing. Pressing the left mouse button in the image window will cause it to disappear from the screen. 1mGrid0m This command controls the grid in the editing area. If the grid spacing is below the value specified by gridTolerance resource (8 by default), the grid will be automatically turned off. It can be enforced by explicitly activating this command. 1mDashed0m This command controls the stipple for drawing the grid lines. The stipple specified by dashes resource can be turned on or off by activating this command. 1mAxes0m This command controls the highlighting of the main axes of the image being edited. The actual lines are not part of the image. They are provided to aid user when constructing symmetrical images, or whenever having the main axes highlighted helps your editing. 1mStippled0m This command controls the stippling of the highlighted areas of the bitmap image. The stipple specified by stipple resource can be turned on or off by activating this command. 1mProportional0m This command controls the proportional mode. If the proportional mode is on, width and height of all image squares are forced to be equal, regardless of the proportions of the bitmap window. 1mZoom0m This command controls the zoom mode. If there is a marked area of the image already displayed, bitmap will automatically zoom into it. Otherwise, user will have to highlight an area to be edited in the zoom mode and bitmap will automatically switch into it. One can use all the editing commands and other utilities in the zoom mode. When you zoom out, undo command will undo the whole zoom session. 1mCut 22mThis commands cuts the contents of the highlighted image area into the internal cut and paste buffer. 1mCopy0m This command copies the contents of the highlighted image area into the internal cut and paste buffer. 1mPaste0m This command will check if there are any other bitmap applications with a highlighted image area, or if there is something in the internal cut and paste buffer and copy it to the image. To place the copied image, click in the editing window and drag the outlined image to the position where you want to place i, and then release the button. 1mCUT AND PASTE0m Bitmap supports two cut and paste mechanisms; the internal cut and paste and the global X selection cut and paste. The internal cut and paste is used when executing copy and move drawing commands and also cut and copy commands from the edit menu. The global X selection cut and paste is used whenever there is a highlighted area of a bitmap image displayed anywhere on the screen. To copy a part of image from another bitmap editor simply highlight the desired area by using the Mark command or pressing the shift key and dragging the area with the left mouse button. When the selected area becomes highlighted, any other applications (such as xterm, etc.) that use primary selection will discard their selection values and unhighlight the appropriate information. Now, use the Paste command for the Edit menu or control mouse button to copy the selected part of image into another (or the same) bitmap application. If you attempt to do this without a visible highlighted image area, the bitmap will fall back to the internal cut and paste buffer and paste whatever was there stored at the moment. 1mWIDGETS0m Below is the widget structure of the 4mbitmap24m application. Indentation indicates hierarchical structure. The widget class name is given first, followed by the widget instance name. All widgets except the bitmap widget are from the standard Athena widget set. Bitmap bitmap TransientShell image Box box Label normalImage Label invertedImage TransientShell input Dialog dialog Command okay Command cancel TransientShell error Dialog dialog Command abort Command retry TransientShell qsave Dialog dialog Command yes Command no Command cancel Paned parent Form formy MenuButton fileButton SimpleMenu fileMenu SmeBSB new SmeBSB load SmeBSB insert SmeBSB save SmeBSB saveAs SmeBSB resize SmeBSB rescale SmeBSB filename SmeBSB basename SmeLine line SmeBSB quit MenuButton editButton SimpleMenu editMenu SmeBSB image SmeBSB grid SmeBSB dashed SmeBSB axes SmeBSB stippled SmeBSB proportional SmeBSB zoom SmeLine line SmeBSB cut SmeBSB copy SmeBSB paste Label status Pane pane Bitmap bitmap Form form Command clear Command set Command invert Toggle mark Command unmark Toggle copy Toggle move Command flipHoriz Command up Command flipVert Command left Command fold Command right Command rotateLeft Command down Command rotateRight Toggle point Toggle curve Toggle line Toggle rectangle Toggle filledRectangle Toggle circle Toggle filledCircle Toggle floodFill Toggle setHotSpot Command clearHotSpot Command undo 1mCOLORS0m If you would like bitmap to be viewable in color, include the following in the #ifdef COLOR section of the file you read with xrdb: *customization: -color This will cause bitmap to pick up the colors in the app-defaults color customization file: /usr/X11R6/lib/X11/app-defaults/Bitmap-color 1mBITMAP WIDGET0m Bitmap widget is a stand-alone widget for editing raster images. It is not designed to edit large images, although it may be used in that pur- pose as well. It can be freely incorporated with other applications and used as a standard editing tool. The following are the resources provided by the bitmap widget. Bitmap Widget Header file Bitmap.h Class bitmapWidgetClass Class Name Bitmap Superclass Bitmap All the Simple Widget resources plus ... Name Class Type Default Value foreground Foreground Pixel XtDefaultForeground highlight Highlight Pixel XtDefaultForeground framing Framing Pixel XtDefaultForeground gridTolerance GridTolerance Dimension 8 size Size String 32x32 dashed Dashed Boolean True grid Grid Boolean True stippled Stippled Boolean True proportional Proportional Boolean True axes Axes Boolean False squareWidth SquareWidth Dimension 16 squareHeight SquareHeight Dimension 16 margin Margin Dimension 16 xHot XHot Position NotSet (-1) yHot YHot Position NotSet (-1) button1Function Button1Function DrawingFunction Set button2Function Button2Function DrawingFunction Invert button3Function Button3Function DrawingFunction Clear button4Function Button4Function DrawingFunction Invert button5Function Button5Function DrawingFunction Invert filename Filename String None ("") basename Basename String None ("") 1mAUTHOR0m Davor Matic, MIT X Consortium ccmakedep(1) ccmakedep(1) 1mNAME0m ccmakedep - create dependencies in makefiles using a C compiler 1mSYNOPSIS0m 1mccmakedep 22m[ 1mcpp-flags 22m] [ 1m-w4m22mwidth24m ] [ 1m-s4m22mmagic-string24m ] [ 1m-f4m22mmakefile24m ] [ 1m-o4m22mobject-suffix24m ] [ 1m-v 22m] [ 1m-a 22m] [ 1m-cc4m22mcompiler24m ] [ -- 4moptions24m -- ] 4msourcefile24m ... 1mDESCRIPTION0m The 1mccmakedep 22mprogram calls a C compiler to preprocess each 4msourcefile24m, and uses the output to construct 4mmakefile24m rules describing their depen- dencies. These rules instruct 1mmake22m(1) on which object files must be recompiled when a dependency has changed. By default, 1mccmakedep 22mplaces its output in the file named 4mmakefile24m if it exists, otherwise 4mMakefile.24m An alternate makefile may be specified with the 1m-f 22moption. It first searches the makefile for a line begin- ning with # DO NOT DELETE or one provided with the 1m-s 22moption, as a delimiter for the dependency output. If it finds it, it will delete everything following this up to the end of the makefile and put the output after this line. If it doesn't find it, the program will append the string to the makefile and place the output after that. 1mEXAMPLE0m Normally, 1mccmakedep 22mwill be used in a makefile target so that typing 'make depend' will bring the dependencies up to date for the makefile. For example, SRCS = file1.c file2.c ... CFLAGS = -O -DHACK -I../foobar -xyz depend: ccmakedep -- $(CFLAGS) -- $(SRCS) 1mOPTIONS0m The program will ignore any option that it does not understand, so you may use the same arguments that you would for 1mcc22m(1), including 1m-D 22mand 1m-U 22moptions to define and undefine symbols and 1m-I 22mto set the include path. 1m-a 22mAppend the dependencies to the file instead of replacing exist- ing dependencies. 1m-cc4m22mcompiler0m Use this compiler to generate dependencies. 1m-f4m22mmakefile0m Filename. This allows you to specify an alternate makefile in which 1mccmakedep 22mcan place its output. Specifying "-" as the file name (that is, 1m-f-22m) sends the output to standard output instead of modifying an existing file. 1m-s4m22mstring0m Starting string delimiter. This option permits you to specify a different string for 1mccmakedep 22mto look for in the makefile. The default is "# DO NOT DELETE". 1m-v 22mBe verbose: display the C compiler command before running it. 1m-- 4m22moptions24m 1m--0m If 1mccmakedep 22mencounters a double hyphen (--) in the argument list, then any unrecognized arguments following it will be silently ignored. A second double hyphen terminates this spe- cial treatment. In this way, 1mccmakedep 22mcan be made to safely ignore esoteric compiler arguments that might normally be found in a CFLAGS 1mmake 22mmacro (see the 1mEXAMPLE 22msection above). 1m-D22m, 1m-I22m, and 1m-U 22moptions appearing between the pair of double hyphens are still processed normally. 1mSEE ALSO0m 1mcc22m(1), 1mmake22m(1), 1mmakedepend22m(1), 1mccmakedep22m(1). 1mAUTHOR0m 1mccmakedep 22mwas written by the X Consortium. Colin Watson wrote this manual page, originally for the Debian Project, based partly on the manual page for 1mmakedepend22m(1). cleanlinks(1) cleanlinks(1) 1mNAME0m cleanlinks - remove dangling symbolic links and empty directories 1mSYNOPSIS0m 1mcleanlinks0m 1mDESCRIPTION0m The 4mcleanlinks24m program searches the directory tree descended from the current directory for symbolic links whose targets do not exist, and removes them. It then removes all empty directories in that directory tree. 4mcleanlinks24m is useful for cleaning up a shadow link tree created with 1mlndir22m(1) after files have been removed from the real directory. 1mDIAGNOSTICS0m A message will be printed upon encountering each dangling symlink and empty directory. 1mSEE ALSO0m 1mlndir22m(1). 1mAUTHOR0m David Dawes wrote the 4mcleanlinks24m program for XFree86. Colin Watson wrote this manual page, originally for the Debian Project. CONSTYPE(1) CONSTYPE(1) 1mNAME0m constype - print type of Sun console 1mSYNOPSIS0m 1mconstype 22m[ 4mdevice_name24m ] [ 1m-num 22m] 1mDESCRIPTION0m The 4mconstype24m program writes on the standard output the Sun code for the type of display that the console is. The types output include these: bw? Black and White, where ? is 1-4. (eg) 3-50s are bw2 cg? Colour Graphics display, where ? is 1-4 gp? Optional Graphics Processor board, where ? is 1-2 ns? Not Sun display -- where ? is A-J This is useful in determining startup values and defaults for window systems. The 4mdevice_name24m argument, if given, is the device to examine. If not given, 4m/dev/fb24m is used. The 1m-num 22moption causes 4mconstype24m to follow the type keyword with the numeric value of that type, as returned by the FBIOGATTR or FBIOGTYPE ioctl and defined in fbio.h. This is useful if the type is not recog- nized by the program. 1mEXIT STATUS0m The program exits with status 0 if it identified a known console type, 1 if the type was unknown, and 2 if the device could not be opened or another error occurred. 1mBUGS0m Not tested on all monitor types 1mCOPYRIGHT0m Copyright 1988, SRI 1mAUTHOR0m Doug Moran CXPM(1) CXPM(1) 1mNAME0m cxpm - Check an XPM (X PixMap) file - XPM 1, 2, or 3. 1mSYNOPSIS0m 1mcxpm 22m[4mfilename24m] 1mDESCRIPTION0m The 1mcxpm 22mprogram can be used to check the format of any XPM (version 1, 2, or 3) file. On error, unlike 1msxpm22m, 1mcxpm 22mprints out an error message indicating where the parser choked. This should help finding out what's wrong with an XPM file but do not expect too much from it though. This is not even close from being some kind of lint program for XPM. First, it stops at the first error it encounters - so several fix and retry cycles may be necessary to get your file to parse successfully. Second, 1mcxpm 22monly cares about the format. If, for instance, your pixmap uses too many colors for your system you still may experience difficulties displaying it. Be warned. When no 4mfilename24m is given 1mcxpm 22mreads from the standard input. 1mAUTHOR0m Arnaud Le Hors (lehors@sophia.inria.fr) Copyright (C) 1998 by Arnaud LE HORS. dga(1) dga(1) 1mNAME0m dga - test program for the XFree86-DGA extension 1mSYNOPSIS0m 1mdga0m 1mDESCRIPTION0m Dga is a simple test client for the XFree86-DGA extension. It fills the screen with a different colour for each key pressed. It prints some basic framebuffer parameters, and also keyboard and pointer events to stdout. To exit, hit the `q' key. Hitting the `b' key runs a sim- ple benchmark, measuring raw framebuffer write and read speed (this takes one second each). 1mAUTHOR0m Jon Tombs DPSEXEC(1) DPSEXEC(1) 1mNAME0m dpsexec - Display PostScript Executive 1mSYNOPSIS0m 1mdpsexec 22m[ 1m-display 4m22mname24m ][ 1m-sync 22m][ 1m-backup 22m][ 1m-noexec 22m][ 1m-root 22m][ 1m-drawable 4m22mwindowId24m ][ 1m-height 4m22mn24m ][ 1m-width 4m22mn24m ] 1mDESCRIPTION0m 1mdpsexec 22mis a Display PostScript program that allows the user to inter- act directly with the PostScript interpreter through a command inter- face. 1mdpsexec 22mreads lines of text from standard input and passes each line to the PostScript interpreter for execution. It creates a window that displays the results of graphics operations as they are executed. 1mdpsexec 22mexits when end of file is reached on standard input, or when the user types "quit", which executes the PostScript 1mquit 22moper- ator. By default, 1mdpsexec 22mexecutes the PostScript 1mexecutive 22moperator before it accepts any user input. This operator puts the PostScript inter- preter in "interactive executive" mode so that the user can control the interpreter directly. In this mode, the PostScript interpreter sup- ports certain line-editing functions and prompts the user when it is ready to execute more input. See section 2.4.4, "Using the Interpreter Interactively," of the 4mPostScript24m 4mLanguage24m 4mReference24m 4mManual,24m 4mSecond0m 4mEdition,24m for detailed information on this mode of operation. 1mOPTIONS0m 1m-display 4m22mname0m specifies the display on which to open a connection to the Dis- play PostScript system. If no display is specified, the DISPLAY environment variable is used. 1m-sync 22mestablishes a synchronous connection with the specified X dis- play. 1m-backup0m uses backing store for the window in which graphics are dis- played, if possible. This is generally only effective with the DPS NX system. 1m-noexec0m prevents 1mdpsexec 22mfrom entering "interactive executive" mode. The primary effect of this option is to inhibit printing the 1mPS>0m prompt before each line of input is accepted. This option is useful when 1mdpsexec 22mis run with standard input redirected from a file or a pipe. 1m-root 22mtells 1mdpsexec 22mto draw into the root window instead of into a window that it creates. 1m-drawable 4m22mwindowId0m tells 1mdpsexec 22mto draw into the specified window instead of into a window that it creates. 1m-height 4m22mn0m sets the height of the created window. 1m-width 4m22mn0m sets the width of the created window. 1mDIAGNOSTICS0m PostScript language error messages are printed to standard output. 1mAUTHOR0m Adobe Systems Incorporated 1mNOTES0m PostScript and Display PostScript are trademarks of Adobe Systems Incorporated which may be registered in certain jurisdictions. Copyright (c) 1990-1994 Adobe Systems Incorporated. All rights reserved. DPSINFO(1) DPSINFO(1) 1mNAME0m dpsinfo - Display PostScript Information 1mSYNOPSIS0m 1mdpsinfo 22m[ 1m-display 4m22mname24m ] [ 1m-debug 22m] 1mDESCRIPTION0m 1mDpsinfo 22mis a utility for displaying information about the DPS extension present in an X server or provided by a client-side DPS agent. 1mDpsinfo0m will print out the version of the DPS protocol used, the language level and version of the underlying PS interpreter, as well as the set of font formats supported. If 1m-debug 22mis specified, 1mdpsinfo 22mwill print out all the PS code sent to the server. 1mSEE ALSO0m X(1), xdpyinfo(1), dpsexec(1) 1mAUTHOR0m Juliusz Chroboczek 1mNOTES0m PostScript and Display PostScript are trademarks of Adobe Systems Incorporated which may be registered in certain jurisdictions. EDITRES(1) EDITRES(1) 1mNAME0m editres - a dynamic resource editor for X Toolkit applications 1mSYNTAX0m 1meditres 22m[ 4m-toolkitoption24m ... ] 1mOPTIONS0m 4mEditres24m accepts all of the standard X Toolkit command line options (see 4mX(7)24m). The order of the command line options is not important. 1mDESCRIPTION0m Editres is a tool that allows users and application developers to view the full widget hierarchy of any X Toolkit application that speaks the Editres protocol. In addition, editres will help the user construct resource specifications, allow the user to apply the resource to the application and view the results dynamically. Once the user is happy with a resource specification editres will append the resource string to the user's X Resources file. 1mUSING EDITRES0m 4mEditres24m provides a window consisting of the following four areas: Menu Bar A set of popup menus that allow you full access to editres's features. Panner The panner allows a more intuitive way to scroll the application tree display. Message Area Displays information to the user about the action that editres expects of her. Application Widget Tree This area will be used to display the selected application's widget tree. To begin an editres session select the 1mGet Widget Tree 22mmenu item from the command menu. This will change the pointer cursor to cross hair. You should now select the application you wish look at by clicking on any of its windows. If this application understands the editres proto- col then editres will display the application's widget tree in its tree window. If the application does not understand the editres protocol editres will inform you of this fact in the message area after a few seconds delay. Once you have a widget tree you may now select any of the other menu options. The effect of each of these is described below. 1mCOMMANDS0m Get Widget Tree Allows the user to click on any application that speaks the editres protocol and receive its widget tree. Refresh Current Widget Tree Editres only knows about the widgets that exist at the present time. Many applications create and destroy widgets on the fly. Selecting this menu item will cause editres to ask the applica- tion to resend its widget tree, thus updating its information to the new state of the application. For example, xman only creates the widgets for its 4mtopbox24m when it starts up. None of the widgets for the manual page window are created until the user actually clicks on the 4mManual24m 4mPage0m button. If you retrieved xman's widget tree before the the manual page is active, you may wish to refresh the widget tree after the manual page has been displayed. This will allow you to also edit the manual page's resources. Dump Widget Tree to a File For documenting applications it is often useful to be able to dump the entire application widget tree to an ASCII file. This file can then be included in the manual page. When this menu item is selected a popup dialog is activated. Type the name of the file in this dialog, and either select 4mokay24m, or type a car- riage-return. Editres will now dump the widget tree to this file. To cancel the file dialog, select the 4mcancel24m button. Show Resource Box This command will popup a resource box for the current applica- tion. This resource box (described in detail below) will allow the user to see exactly which resources can be set for the wid- get that is currently selected in the widget tree display. Only one widget may be currently selected; if greater or fewer are selected editres will refuse to pop up the resource box and put an error message in the 1mMessage Area22m. Set Resource This command will popup a simple dialog box for setting an arbitrary resource on all selected widgets. You must type in the resource name, as well as the value. You can use the Tab key to switch between the resource name field the resource value field. Quit Exits editres. 1mTREE COMMANDS0m The 1mTree 22mmenu contains several commands that allow operations to be performed on the widget tree. Select Widget in Client This menu item allows you to select any widget in the applica- tion; editres will then highlight the corresponding element the widget tree display. Once this menu item is selected the pointer cursor will again turn to a crosshair, and you must click any pointer button in the widget you wish to have dis- played. Since some widgets are fully obscured by their chil- dren, it is not possible to get to every widget this way, but this mechanism does give very useful feedback between the ele- ments in the widget tree and those in the actual application. Select All Unselect All Invert All These functions allow the user to select, unselect, or invert all widgets in the widget tree. Select Children Select Parents These functions select the immediate parent or children of each of the currently selected widgets. Select Descendants Select Ancestors These functions select all parents or children of each of the currently selected widgets. This is a recursive search. Show Widget Names Show Class Names Show Widget Windows When the tree widget is initially displayed the labels of each widget in the tree correspond to the widget names. These func- tions will cause the label of 1mall 22mwidgets in the tree to be changed to show the class name, IDs, or window associated with each widget in the application. The widget IDs, and windows are shown as hex numbers. In addition there are keyboard accelerators for each of the Tree opera- tions. If the input focus is over an individual widget in the tree, then that operation will only effect that widget. If the input focus is in the Tree background it will have exactly the same effect as the corresponding menu item. The translation entries shown may be applied to any widget in the application. If that widget is a child of the Tree widget, then it will only affect that widget, otherwise it will have the same effect as the commands in the tree menu. Flash Active Widgets This command is the inverse of the 1mSelect Widget in Client 22mcom- mand, it will show the user each widget that is currently selected in the widget tree, by flashing the corresponding wid- get in the application 4mnumFlashes24m (three by default) times in the 4mflashColor24m. 1mKey Option Translation Entry0m space Unselect Select(nothing) w Select Select(widget) s Select Select(all) i Invert Select(invert) c Select Children Select(children) d Select Descendants Select(descendants) p Select Parent Select(parent) a Select Ancestors Select(ancestors) N Show Widget Names Relabel(name) C Show Class Names Relabel(class) I Show Widget IDs Relabel(id) W Show Widget Windows Relabel(window) T Toggle Widget/Class Name Relabel(toggle) Clicking button 1 on a widget adds it to the set of selected widgets. Clicking button 2 on a widget deselects all other wid- gets and then selects just that widget. Clicking button 3 on a widget toggles its label between the widget's instance name the widget's class name. 1mUSING THE RESOURCE BOX0m The resource box contains five different areas. Each of the areas, as they appear on the screen, from top to bottom will be discussed. The Resource Line This area at the top of the resource box shows the current resource name exactly as it would appear if you were to save it to a file or apply it. The Widget Names and Classes This area allows you to select exactly which widgets this resource will apply to. The area contains four lines, the first contains the name of the selected widget and all its ancestors, and the more restrictive dot (1m.22m) separator. The second line contains less specific the Class names of each widget, and well as the less restrictive star (1m*22m) separator. The third line con- tains a set of special buttons called 1mAny Widget 22mwhich will gen- eralize this level to match any widget. The last line contains a set of special buttons called 1mAny Widget Chain 22mwhich will turn the single level into something that matches zero or more lev- els. The initial state of this area is the most restrictive, using the resource names and the dot separator. By selecting the other buttons in this area you can ease the restrictions to allow more and more widgets to match the specification. The extreme case is to select all the 1mAny Widget Chain 22mbuttons, which will match every widget in the application. As you select different buttons the tree display will update to show you exactly which widgets will be effected by the current resource specification. Normal and Constraint Resources The next area allows you to select the name of the normal or constraint resources you wish to set. Some widgets may not have constraint resources, so that area will not appear. Resource Value This next area allows you to enter the resource value. This value should be entered exactly as you would type a line into your resource file. Thus it should contain no unescaped new- lines. There are a few special character sequences for this file: \n - This will be replaced with a newline. \### - Where # is any octal digit. This will be replaced with a single byte that contains this sequence interpreted as an octal number. For example, a value containing a NULL byte can be stored by specifying \000. \ - This will compress to nothing. \\ - This will compress to a single backslash. Command Area This area contains several command buttons, described in this section. Set Save File This button allows the user to modify file that the resources will be saved to. This button will bring up a dialog box that will ask you for a filename; once the filename has been entered, either hit carriage-return or click on the 4mokay24m button. To pop down the dialog box without changing the save file, click the 4mcancel24m button. Save This button will append the 1mresource line 22mdescribed above to the end of the current save file. If no save file has been set the 1mSet Save File 22mdialog box will be popped up to prompt the user for a filename. Apply This button attempts to perform a XtSetValues call on all wid- gets that match the 1mresource line 22mdescribed above. The value specified is applied directly to all matching widgets. This behavior is an attempt to give a dynamic feel to the resource editor. Since this feature allows users to put an application in states it may not be willing to handle, a hook has been pro- vided to allow specific applications to block these SetValues requests (see 1mBlocking Editres Requests 22mbelow). Unfortunately due to design constraints imposed on the widgets by the X Toolkit and the Resource Manager, trying to coerce an inherently static system into dynamic behavior can cause strange results. There is no guarantee that the results of an apply will be the same as what will happen when you save the value and restart the application. This functionality is provided to try to give you a rough feel for what your changes will accomplish, and the results obtained should be considered suspect at best. Having said that, this is one of the neatest features of editres, and I strongly suggest that you play with it, and see what it can do. Save and Apply This button combines the Save and Apply actions described above into one button. Popdown Resource Box This button will remove the resource box from the display. 1mBLOCKING EDITRES REQUESTS0m The editres protocol has been built into the Athena Widget set. This allows all applications that are linked against Xaw to be able to speak to the resource editor. While this provides great flexibility, and is a useful tool, it can quite easily be abused. It is therefore possible for any Xaw application to specify a value for the 1meditresBlock0m resource described below, to keep editres from divulging information about its internals, or to disable the 1mSetValues 22mpart of the protocol. 1meditresBlock (22mClass 1mEditresBlock)0m Specifies which type of blocking this application wishes to impose on the editres protocol. The accepted values are: all Block all requests. setValues Block all SetValues requests. As this is the only editres request that actually modifies the application, this is in effect stating that the application is read- only. none Allow all editres requests. Remember that these resources are set on any Xaw application, 1mnot0m 1meditres22m. They allow individual applications to keep all or some of the requests editres makes from ever succeeding. Of course, editres is also an Xaw application, so it may also be viewed and modified by editres (rather recursive, I know), these commands can be blocked by setting the 1meditresBlock 22mresource on editres itself. 1mRESOURCES0m For 4meditres24m the available application resources are: 1mnumFlashes (22mClass 1mNumFlashes)0m Specifies the number of times the widgets in the application will be flashed when the 1mShow Active Widgets 22mcommand in invoked. 1mflashTime (22mClass 1mFlashTime)0m Amount of time between the flashes described above. 1mflashColor (22mClass 1mflashColor)0m Specifies the color used to flash application widgets. A bright color should be used that will immediately draw your attention to the area being flashed, such as red or yellow. 1msaveResourcesFile (22mClass 1mSaveResourcesFile)0m This is the file the resource line will be append to when the 1mSave 22mbutton activated in the resource box. 1mWIDGETS0m In order to specify resources, it is useful to know the hierarchy of the widgets which compose 4meditres24m. In the notation below, indentation indicates hierarchical structure. The widget class name is given first, followed by the widget instance name. Editres editres Paned paned Box box MenuButton commands SimpleMenu menu SmeBSB sendTree SmeBSB refreshTree SmeBSB dumpTreeToFile SmeLine line SmeBSB getResourceList SmeLine line SmeBSB quit MenuButton treeCommands SimpleMenu menu SmeBSB showClientWidget SmeBSB selectAll SmeBSB unselectAll SmeBSB invertAll SmeLine line SmeBSB selectChildren SmeBSB selectParent SmeBSB selectDescendants SmeBSB selectAncestors SmeLine line SmeBSB showWidgetNames SmeBSB showClassNames SmeBSB showWidgetIDs SmeBSB showWidgetWindows SmeLine line SmeBSB flashActiveWidgets Paned hPane Panner panner Label userMessage Grip grip Porthole porthole Tree tree Toggle . . . TransientShell resourceBox Paned pane Label resourceLabel Form namesAndClasses Toggle dot Toggle star Toggle any Toggle name Toggle class . . . Label namesLabel List namesList Label constraintLabel List constraintList Form valueForm Label valueLabel Text valueText Box commandBox Command setFile Command save Command apply Command saveAndApply Command cancel Grip grip Grip grip 1mENVIRONMENT0m 1mDISPLAY 22mto get the default host and display number. 1mXENVIRONMENT0m to get the name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property. 1mFILES0m 4m/usr/X11R6/lib/X11/app-defaults/Editres0m specifies required resources 1mSEE ALSO0m X(7), xrdb(1), Athena Widget Set 1mRESTRICTIONS0m This is a prototype, there are lots of nifty features I would love to add, but I hope this will give you some ideas about what a resource editor can do. 1mAUTHOR0m Chris D. Peterson, formerly MIT X Consortium FC-CACHE(1) FC-CACHE(1) 1mNAME0m fc-cache, fonts.cache - create an index of FreeType font files in a directory 1mSYNOPSIS0m 1mfc-cache 22m[4mdirectory-name24m ... ] 1mDESCRIPTION0m If directory arguments are not given, 4mfc-cache24m uses each directory in the current font configuration. Each directory is scanned for font files readable by FreeType. A cache is created which contains proper- ties of each font and the associated filename. This cache is used to speed application startup when using the fontconfig library. 1mFILES0m 1mfonts.cache 22mMaps file names to font properties. Read by the font- config library at application startup to locate appro- priate fonts. 1mSEE ALSO0m fontconfig(3) FC-LANG(1) FC-LANG(1) 1mNAME0m fc-lang, fclang.h - create an database of language orthographies 1mSYNOPSIS0m 1mfc-lang 22m[4mlanguage-coverage24m ... ] 1mDESCRIPTION0m 4mFc-lang24m builds the fclang.h file used in the fontconfig library to automatically determine language coverage for fonts which don't contain this information. 1mFILES0m 1mfclang.tmpl.h 22mThe template file in which the tables are inserted 1mSEE ALSO0m fontconfig(3) FC-LIST(1) FC-LIST(1) 1mNAME0m fc-list - list available fonts 1mSYNOPSIS0m 1mfc-list 22m[4mfont-pattern24m] 1mDESCRIPTION0m If font pattern is not given, 4mfc-list24m lists all available faces and styles in the current font configuration. 1mSEE ALSO0m fontconfig(3) FONTCONFIG(3) FONTCONFIG(3) 1mNAME0m fontconfig - Font configuration and customization library 1mSYNOPSIS0m 1m#include 0m 1m#include 0m 1mDESCRIPTION0m 1mFontconfig 22mis a library designed to provide system-wide font configura- tion, customization and application access. 1mFUNCTIONAL OVERVIEW0m Fontconfig contains two essential modules, the configuration module which builds an internal configuration from XML files and the matching module which accepts font patterns and returns the nearest matching font. 1mFONT CONFIGURATION0m The configuration module consists of the FcConfig datatype, libexpat and FcConfigParse which walks over an XML tree and ammends a configura- tion with data found within. From an external perspective, configura- tion of the library consists of generating a valid XML tree and feeding that to FcConfigParse. The only other mechanism provided to applica- tions for changing the running configuration is to add fonts and direc- tories to the list of application-provided font files. The intent is to make font configurations relatively static, and shared by as many applications as possible. It is hoped that this will lead to more stable font selection when passing names from one application to another. XML was chosen as a configuration file format because it provides a format which is easy for external agents to edit while retaining the correct structure and syntax. Font configuration is separate from font matching; applications needing to do their own matching can access the available fonts from the library and perform private matching. The intent is to permit applica- tions to pick and choose appropriate functionality from the library instead of forcing them to choose between this library and a private configuration mechanism. The hope is that this will ensure that con- figuration of fonts for all applications can be centralized in one place. Centralizing font configuration will make simplify and regular- ize font installation and customization. 1mFONT PROPERTIES0m While font patterns may contain essentially any properties, there are some well known properties with associated types. Fontconfig uses some of these properties for font matching and font completion. Others are provided as a convenience for the applications rendering mechanism. Property CPP symbol Type Description ---------- -------------------------------------------- family FC_FAMILY String Font family name style FC_STYLE String Font style. Overrides weight and slant slant FC_SLANT Int Italic, oblique or roman weight FC_WEIGHT Int Light, medium, demibold, bold or black size FC_SIZE Double Point size aspect FC_ASPECT Double Stretches glyphs horizontally before hinting pixelsize FC_PIXEL_SIZE Double Pixel size spacing FC_SPACING Int Proportional, monospace or charcell foundry FC_FOUNDRY String Font foundry name antialias FC_ANTIALIAS Bool Whether glyphs can be antialiased hinting FC_HINTING Bool Whether the rasterizer should use hinting verticallayout FC_VERTICAL_LAYOUT BoolUse vertical layout autohint FC_AUTOHINT Bool Use autohinter instead of normal hinter globaladvance FC_GLOBAL_ADVANCE BoolUse font global advance data file FC_FILE String The filename holding the font index FC_INDEX Int The index of the font within the file ftface FC_FT_FACE FT_Face Use the specified FreeType face object rasterizer FC_RASTERIZER StringWhich rasterizer is in use outline FC_OUTLINE Bool Whether the glyphs are outlines scalable FC_SCALABLE Bool Whether glyphs can be scaled scale FC_SCALE Double Scale factor for point->pixel conversions dpi FC_DPI Double Target dots per inch rgba FC_RGBA Int unknown, rgb, bgr, vrgb, vbgr, none - subpixel geometry minspace FC_MINSPACE Bool Eliminate leading from line spacing charset FC_CHARSET CharSet Unicode chars encoded by the font lang FC_LANG String List of RFC-3066-style languages this font supports 1mFONT MATCHING0m Fontconfig performs matching by measuring the distance from a provided pattern to all of the available fonts in the system. The closest matching font is selected. This ensures that a font will always be returned, but doesn't ensure that it is anything like the requested pattern. Font matching starts with an application constructed pattern. The desired attributes of the resulting font are collected together in an FcPattern object. Each property of the pattern can contain one or more values; these are listed in priority order; matches earlier in the list are considered "closer" than matches later in the list. The initial pattern is modified by applying the list of editing instructions specific to patterns found in the configuration; each con- sists of a match predicate and a set of editing operations. They are executed in the order they appeared in the configuration. Each match causes the associated sequence of editing operations to be applied. After the pattern has been edited, a sequence of default substitutions are performed to canonicalize the set of available properties; this avoids the need for the lower layers to constantly provide default val- ues for various font properties during rendering. The canonical font pattern is finally matched against all available fonts. The distance from the pattern to the font is measured for each of several properties: foundry, charset, family, lang, spacing, pixel- size, style, slant, weight, antialias, rasterizer and outline. This list is in priority order -- results of comparing earlier elements of this list weigh more heavily than later elements. There is one special case to this rule; family names are split into two bindings; strong and weak. Strong family names are given greater precedence in the match than lang elements while weak family names are given lower precedence than lang elements. This permits the document language to drive font selection when any document specified font is unavailable. The pattern representing that font is augmented to include any proper- ties found in the pattern but not found in the font itself; this per- mits the application to pass rendering instructions or any other data through the matching system. Finally, the list of editing instructions specific to fonts found in the configuration are applied to the pat- tern. This modified pattern is returned to the application. The return value contains sufficient information to locate and raster- ize the font, including the file name, pixel size and other rendering data. As none of the information involved pertains to the FreeType library, applications are free to use any rasterization engine or even to take the identified font file and access it directly. The match/edit sequences in the configuration are performed in two passes because there are essentially two different operations necessary -- the first is to modify how fonts are selected; aliasing families and adding suitable defaults. The second is to modify how the selected fonts are rasterized. Those must apply to the selected font, not the original pattern as false matches will often occur. 1mFONT LIST MATCHING0m While many applications want to locate a single font best matching their search criteria, other applications need to build a set of fonts which can be used to present any Unicode data. Fontconfig provides an API to generate a list sorted by the nearness of each font to the pat- tern. Every font in the system is considered, the best matching fonts are placed first. The application then can select whether the remain- ing fonts are unconditionally included in the list, or whether they are included only if they cover portions of Unicode not covered by any of the preceeding fonts. The list resulting from this match is represented by references to the original font patterns and so consumes very little memory. Using a list entry involves creating a pattern which combines the information from the font with the information from the original pattern and exe- cuting the font substitutions. 1mFONT NAMES0m Fontconfig provides a textual representation for patterns that the library can both accept and generate. The representation is in three parts, first a list of family names, second a list of point sizes and finally a list of additional properties: -:=:=... Values in a list are separated with commas. The name needn't include either families or point sizes; they can be elided. In addition, there are symbolic constants that simultaneously indicate both a name and a value. Here are some examples: Times-12 12 point Times Roman Times-12:bold 12 point Times Bold Courier:italic Courier Italic in the default size Monospace:matrix=1 .1 0 1The users preferred monospace font with artificial obliquing 1mLANG TAGS0m Each font in the database contains a list of languages it supports. This is computed by comparing the Unicode coverage of the font with the orthography of each language. Languages are tagged using an RFC-3066 compatible naming and occur in two parts -- the ISO639 language tag followed a hyphen and then by the ISO 3166 country code. The hyphen and country code may be elided. Fontconfig has orthographies for several languages built into the library. No provision has been made for adding new ones aside from rebuilding the library. It currently supports 122 of the 139 languages named in ISO 639-1, 141 of the languages with two-letter codes from ISO 639-2 and another 30 languages with only three-letter codes. 1mDATATYPES0m 1mFcChar80m 1mFcChar160m 1mFcChar320m 1mFcBool 22mThese are primitive datatypes; the FcChar* types hold precisely the number of bits stated (if supported by the C implementation). FcBool holds one of two CPP symbols: FcFalse or FcTrue. 1mFcMatrix0m An FcMatrix holds an affine transformation, usually used to reshape glyphs. A small set of matrix operations are provided to manipulate these. typedef struct _FcMatrix { double xx, xy, yx, yy; } FcMatrix; 1mFcCharSet0m An FcCharSet is an abstract type that holds the set of encoded unicode chars in a font. Operations to build and compare these sets are provided. 1mFcType 22mTags the kind of data stored in an FcValue. 1mFcValue0m An FcValue object holds a single value with one of a number of different types. The 'type' tag indicates which member is valid. typedef struct _FcValue { FcType type; union { const FcChar8 *s; int i; FcBool b; double d; const FcMatrix *m; const FcCharSet *c; } u; } FcValue; type Union member Datatype ------------------------------ FcTypeVoid (none) (none) FcTypeInteger i int FcTypeDouble d double FcTypeString s char * FcTypeBool b b FcTypeMatrix m FcMatrix * FcTypeCharSet c FcCharSet * 1mFcPattern0m holds a set of names with associated value lists; each name refers to a property of a font. FcPatterns are used as inputs to the matching code as well as holding information about spe- cific fonts. Each property can hold one or more values; conven- tionally all of the same type, although the interface doesn't demand that. 1mFcFontSet0m typedef struct _FcFontSet { int nfont; int sfont; FcPattern **fonts; } FcFontSet; An FcFontSet contains a list of FcPatterns. Internally fontcon- fig uses this data structure to hold sets of fonts. Externally, fontconfig returns the results of listing fonts in this format. 'nfont' holds the number of patterns in the 'fonts' array; 'sfont' is used to indicate the size of that array. 1mFcStrSet0m 1mFcStrList 22mFcStrSet holds a list of strings that can be appended to and enumerated. Its unique characteristic is that the enu- meration works even while strings are appended during enumera- tion. FcStrList is used during enumeration to safely and cor- rectly walk the list of strings even while that list is edited in the middle of enumeration. 1mFcObjectSet0m typedef struct _FcObjectSet { int nobject; int sobject; const char **objects; } FcObjectSet; holds a set of names and is used to specify which fields from fonts are placed in the the list of returned patterns when list- ing fonts. 1mFcObjectType0m typedef struct _FcObjectType { const char *object; FcType type; } FcObjectType; marks the type of a pattern element generated when parsing font names. Applications can add new object types so that font names may contain the new elements. 1mFcConstant0m typedef struct _FcConstant { const FcChar8 *name; const char *object; int value; } FcConstant; Provides for symbolic constants for new pattern elements. When 'name' is seen in a font name, an 'object' element is created with value 'value'. 1mFcBlanks0m holds a list of Unicode chars which are expected to be blank; unexpectedly blank chars are assumed to be invalid and are elided from the charset associated with the font. 1mFcFileCache0m holds the per-user cache information for use while loading the font database. This is built automatically for the current con- figuration when that is loaded. Applications must always pass '0' when one is requested. 1mFcConfig0m holds a complete configuration of the library; there is one default configuration, other can be constructed from XML data structures. All public entry points that need global data can take an optional FcConfig* argument; passing 0 uses the default configuration. FcConfig objects hold two sets of fonts, the first contains those specified by the configuration, the second set holds those added by the application at run-time. Inter- faces that need to reference a particulat set use one of the FcSetName enumerated values. 1mFcSetName0m Specifies one of the two sets of fonts available in a configura- tion; FcSetSystem for those fonts specified in the configuration and FcSetApplication which holds fonts provided by the applica- tion. 1mFcResult0m Used as a return type for functions manipulating FcPattern objects. Result code Meaning ------------------------------ FcResultMatch Object exists with the specified ID FcResultNoMatch Object doesn't exist at all FcResultTypeMismatch Object exists, but the type doesn't match FcResultNoId Object exists, but has fewer values than specified 1mFcAtomic0m Used for locking access to config files. Provides a safe way to update configuration files. 1mFUNCTIONS0m 1mFcMatrix0m FcMatrix structures hold an affine transformation in matrix form. Initializes a matrix to the identify transformation. FcMatrix *FcMatrixCopy (const FcMatrix *mat) Allocates a new FcMatrix and copies 'mat' into it. FcBool FcMatrixEqual (const FcMatrix *mat1, const FcMatrix *mat2) Returns FcTrue if 'mat1' and 'mat2' are equal, else FcFalse. void FcMatrixMultiply (FcMatrix *result, const FcMatrix *a, const FcMa- trix *b) Multiplies 'a' and 'b' together, placing the result in 'result'. 'result' may refer to the sam matrix as either 'a' or 'b'. void FcMatrixRotate (FcMatrix *m, double c, double s) If 'c' is cos(angle) and 's' is sin(angle), FcMatrixRotate rotates the matrix by 'angle'. void FcMatrixScale (FcMatrix *m, double sx, double sy) Scales 'm' by 'sx' in the horizontal dimension and 'sy' in the vertical dimension. void FcMatrixShear (FcMatrix *m, double sh, double sv) Shears 'm' by 'sh' in the horizontal direction and 'sv' in the vertical direction. 1mFcCharSet0m An FcCharSet is a boolean array indicating a set of unicode chars. Those associated with a font are marked constant and cannot be edited. FcCharSets may be reference counted internally to reduce memory con- sumption; this may be visible to applications as the result of FcCha- rSetCopy may return it's argument, and that CharSet may remain unmodi- fiable. FcCharSet *FcCharSetCreate (void) Creates an empty FcCharSet object. void FcCharSetDestroy (FcCharSet *fcs) Frees an FcCharSet object. FcBool FcCharSetAddChar (FcCharSet *fcs, FcChar32 ucs4) Adds a single unicode char to the set, returning FcFalse on failure, either as a result of a constant set or from running out of memory. FcCharSet *FcCharSetCopy (FcCharSet *src) Makes a copy of 'src'; note that this may not actually do any- thing more than increment the reference count on 'src'. FcBool FcCharSetEqual (const FcCharSet *a, const FcCharSet *b) Returns whether 'a' and 'b' contain the same set of unicode chars. FcCharSet *FcCharSetIntersect (const FcCharSet *a, const FcCharSet *b) Returns a set including only those chars found in both 'a' and 'b'. FcCharSet *FcCharSetUnion (const FcCharSet *a, const FcCharSet *b); Returns a set including only those chars found in either 'a' or 'b'. FcCharSet *FcCharSetSubtract (const FcCharSet *a, const FcCharSet *b) Returns a set including only those chars found in 'a' but not 'b'. FcBool FcCharSetHasChar (const FcCharSet *fcs, FcChar32 ucs4) Returns whether 'fcs' contains the char 'ucs4'. FcChar32 FcCharSetCount (const FcCharSet *a) Returns the total number of unicode chars in 'a'. FcChar32 FcCharSetIntersectCount (const FcCharSet *a, const FcCharSet *b) Returns the number of chars that are in both 'a' and 'b'. FcChar32 FcCharSetSubtractCount (const FcCharSet *a, const FcCharSet *b) Returns the number of chars that are in 'a' but not in 'b'. FcBool FcCharSetIsSubset (const FcCharSet *a, const FcCharSet *b) Returns whether 'a' is a subset of 'b'. FcChar32 FcCharSetFirstPage (const FcCharSet *a, FcChar32 [FC_CHARSET_MAP_SIZE], FcChar32 *next) Builds an array of bits marking the first page of Unicode cover- age of 'a'. Returns the base of the array. 'next' contains the next page in the font. FcChar32 FcCharSetNextPage (const FcCharSet *a, FcChar32 [FC_CHARSET_MAP_SIZE], FcChar32 *next) Builds an array of bits marking the Unicode coverage of 'a' for page '*next'. Returns the base of the array. 'next' contains the next page in the font. 1mFcValue0m FcValue is a structure containing a type tag and a union of all possi- ble datatypes. The tag is an enum of type 1mFcType 22mand is intended to provide a measure of run-time typechecking, although that depends on careful programming. void FcValueDestroy (FcValue v) Frees any memory referenced by `v'. Values of type FcType- String, FcTypeMatrix and FcTypeCharSet reference memory, the other types do not. FcValue FcValueSave (FcValue v) Returns a copy of `v' duplicating any object referenced by it so that `v' may be safely destroyed without harming the new value. 1mFcPattern0m An FcPattern is an opaque type that holds both patterns to match against the available fonts, as well as the information about each font. FcPattern *FcPatternCreate (void) Creates a pattern with no properties; used to build patterns from scratch. void FcPatternDestroy (FcPattern *p) Destroys a pattern, in the process destroying all related val- ues. FcBool FcPatternEqual (const FcPattern *pa, const FcPattern *pb); Returns whether 'pa' and 'pb' are exactly alike. FcBool FcPatternEqualSubset (const FcPattern *pa, const FcPattern *pb, const FcObjectSet *os) Returns whether 'pa' and 'pb' have exactly the same values for all of the objects in 'os'. FcChar32 FcPatternHash (const FcPattern *p) Returns a 32-bit number which is the same for any two patterns which are exactly alike. FcBool FcPatternAdd (FcPattern *p, const char *object, FcValue value, FcBool append) Adds a single value to the list of values associated with the property named `object'. If `append' is FcTrue, the value is added at the end of any existing list, otherwise it is inserted at the begining. `value' is saved (with FcValueSave) when inserted into the pattern so that the library retains no refer- ence to any application-supplied data structure. FcBool FcPatternAddWeak (FcPattern *p, const char *object, FcValue value, FcBool append) FcPatternAddWeak is essentially the same as FcPatternAdd except that any values added to the list have binding 'weak' instead of 'strong'. FcBool FcPatternAddInteger (FcPattern *p, const char *object, int i) FcBool FcPatternAddDouble (FcPattern *p, const char *object, double d) FcBool FcPatternAddString (FcPattern *p, const char *object, const char *s) FcBool FcPatternAddMatrix (FcPattern *p, const char *object, const FcMatrix *s) FcBool FcPatternAddCharSet (FcPattern *p, const char *object, const FcCharSet *c) FcBool FcPatternAddBool (FcPattern *p, const char *object, FcBool b) These are all convenience functions that insert objects of the specified type into the pattern. Use these in preference to FcPatternAdd as they will provide compile-time typechecking. These all append values to any existing list of values. FcResult FcPatternGet (FcPattern *p, const char *object, int id, FcValue *v) Returns in `v' the `id'th value associated with the property `object'. The value returned is not a copy, but rather refers to the data stored within the pattern directly. Applications must not free this value. FcResult FcPatternGetInteger (FcPattern *p, const char *object, int n, int *i); FcResult FcPatternGetDouble (FcPattern *p, const char *object, int n, double *d); FcResult FcPatternGetString (FcPattern *p, const char *object, int n, char **const s); FcResult FcPatternGetMatrix (FcPattern *p, const char *object, int n, FcMatrix **s); FcResult FcPatternGetCharSet (FcPattern *p, const char *object, int n, FcCharSet **c); FcResult FcPatternGetBool (FcPattern *p, const char *object, int n, FcBool *b); These are convenience functions that call FcPatternGet and ver- ify that the returned data is of the expected type. They return FcResultTypeMismatch if this is not the case. Note that these (like FcPatternGet) do not make a copy of any data structure referenced by the return value. Use these in preference to FcPatternGet to provide compile-time typechecking. FcPattern *FcPatternBuild (FcPattern *orig, ...); FcPattern *FcPatternVaBuild (FcPattern *orig, va_list va) Builds a pattern using a list of objects, types and values. Each value to be entered in the pattern is specified with three arguments: 1. Object name, a string describing the property to be added. 2. Object type, one of the FcType enumerated values 3. Value, not an FcValue, but the raw type as passed to any of the FcPatternAdd functions. Must match the type of the second argument. The argument list is terminated by a null object name, no object type nor value need be passed for this. The values are added to `pattern', if `pattern' is null, a new pattern is created. In either case, the pattern is returned. Example: pattern = FcPatternBuild (0, FC_FAMILY, FtTypeString, "Times", (char *) 0); FcPatternVaBuild is used when the arguments are already in the form of a varargs value. FcBool FcPatternDel (FcPattern *p, const char *object) Deletes all values associated with the property `object', returning whether the property existed or not. void FcPatternPrint (const FcPattern *p) Prints an easily readable version of the pattern to stdout. There is no provision for reparsing data in this format, it's just for diagnostics and debugging. void FcDefaultSubstitute (FcPattern *pattern) Supplies default values for underspecified font patterns: ˇ Patterns without a specified style or weight are set to Medium ˇ Patterns without a specified style or slant are set to Roman ˇ Patterns without a specified pixel size are given one computed from any specified point size (default 12), dpi (default 75) and scale (default 1). FcPattern *FcNameParse (const char *name) Converts 'name' from the standard text format described above into a pattern. FcChar8 *FcNameUnparse (FcPattern *pat) Converts the given pattern into the standard text format described above. The return value is not static, but instead refers to newly allocated memory which should be freed by the caller. 1mFcFontSet0m An FcFontSet simply holds a list of patterns; these are used to return the results of listing available fonts. FcFontSet *FcFontSetCreate (void) Creates an empty font set. void FcFontSetDestroy (FcFontSet *s); Destroys a font set. Note that this destroys any referenced patterns as well. FcBool FcFontSetAdd (FcFontSet *s, FcPattern *font) Adds a pattern to a font set. Note that the pattern is not copied before being inserted into the set. 1mFcObjectSet0m An FcObjectSet holds a list of pattern property names; it is used to indiciate which properties are to be returned in the patterns from FcFontList. FcObjectSet *FcObjectSetCreate (void) Creates an empty set. FcBool FcObjectSetAdd (FcObjectSet *os, const char *object) Adds a proprety name to the set. void FcObjectSetDestroy (FcObjectSet *os) Destroys an object set. FcObjectSet *FcObjectSetBuild (const char *first, ...) FcObjectSet *FcObjectSetVaBuild (const char *first, va_list va) These build an object set from a null-terminated list of prop- erty names. 1mFcObjectType0m Provides for applcation-specified font name object types so that new pattern elements can be generated from font names. FcBool FcNameRegisterObjectTypes (const FcObjectType *types, int ntype) Register 'ntype' new object types. FcBool FcNameUnregisterObjectTypes (const FcObjectType *types, int ntype) Unregister 'ntype' object types. const FcObjectType *FcNameGetObjectType (const char *object) Return the object type for the pattern element named 'object'. 1mFcConstant0m Provides for application-specified symbolic constants for font names. FcBool FcNameRegisterConstants (const FcConstant *consts, int nconsts) Register 'nconsts' new symbolic constants. FcBool FcNameUnregisterConstants (const FcConstant *consts, int ncon- sts) Unregister 'nconsts' symbolic constants. const FcConstant *FcNameGetConstant (FcChar8 *string) Return the FcConstant structure related to symbolic constant 'string'. FcBool FcNameConstant (FcChar8 *string, int *result); Returns whether a symbolic constant with name 'string' is regis- tered, placing the value of the constant in 'result' if present. 1mFcBlanks0m An FcBlanks object holds a list of Unicode chars which are expected to be blank when drawn. When scanning new fonts, any glyphs which are empty and not in this list will be assumed to be broken and not placed in the FcCharSet associated with the font. This provides a signifi- cantly more accurate CharSet for applications. FcBlanks *FcBlanksCreate (void) Creates an empty FcBlanks object. void FcBlanksDestroy (FcBlanks *b) Destroys an FcBlanks object, freeing any associated memory. FcBool FcBlanksAdd (FcBlanks *b, FcChar32 ucs4) Adds a single character to an FcBlanks object, returning FcFalse if this process ran out of memory. FcBool FcBlanksIsMember (FcBlanks *b, FcChar32 ucs4) Returns whether the specified FcBlanks object contains the indi- cated Unicode value. 1mFcConfig0m An FcConfig object holds the internal representation of a configura- tion. There is a default configuration which applications may use by passing 0 to any function using the data within an FcConfig. FcConfig *FcConfigCreate (void) Creates an empty configuration. void FcConfigDestroy (FcConfig *config) Destroys a configuration and any data associated with it. Note that calling this function with the return from FcConfigGetCur- rent will place the library in an indeterminate state. FcBool FcConfigSetCurrent (FcConfig *config) Sets the current default configuration to 'config'. Implicitly calls FcConfigBuildFonts if necessary, returning FcFalse if that call fails. FcConfig *FcConfigGetCurrent (void) Returns the current default configuration. FcBool FcConfigUptoDate (FcConfig *config) Checks all of the files related to 'config' and returns whether the in-memory version is in sync with the disk version. FcBool FcConfigBuildFonts (FcConfig *config) Builds the set of available fonts for the given configuration. Note that any changes to the configuration after this call have indeterminate effects. Returns FcFalse if this operation runs out of memory. FcStrList *FcConfigGetConfigDirs (FcConfig *config) Returns the list of font directories specified in the configura- tion files for 'config'. Does not include any subdirectories. FcStrList *FcConfigGetFontDirs (FcConfig *config) Returns the list of font directories in 'config'. This includes the configured font directories along with any directories below those in the filesystem. FcStrList *FcConfigGetConfigFiles (FcConfig *config) Returns the list of known configuration files used to generate 'config'. Note that this will not include any configuration done with FcConfigParse. char *FcConfigGetCache (FcConfig *config) Returns the name of the file used to store per-user font infor- mation. FcFontSet *FcConfigGetFonts (FcConfig *config, FcSetName set) Returns one of the two sets of fonts from the configuration as specified by 'set'. FcBlanks *FcConfigGetBlanks (FcConfig *config) Returns the FcBlanks object associated with the given configura- tion, if no blanks were present in the configuration, this func- tion will return 0. int FcConfigGetRescanInverval (FcConfig *config) Returns the interval between automatic checks of the configura- tion (in seconds) specified in 'config'. The configuration is checked during a call to FcFontList when this interval has passed since the last check. FcBool FcConfigSetRescanInverval (FcConfig *config, int rescanInterval) Sets the rescan interval; returns FcFalse if an error occurred. FcBool FcConfigAppFontAddFile (FcConfig *config, const char *file) Adds an application-specific font to the configuration. FcBool FcConfigAppFontAddDir (FcConfig *config, const char *dir) Scans the specified directory for fonts, adding each one found to the application-specific set of fonts. void FcConfigAppFontClear (FcConfig *config) Clears the set of application-specific fonts. FcBool FcConfigSubstituteWithPat (FcConfig *config, FcPattern *p, FcPattern *p_pat FcMatchKind kind) Performs the sequence of pattern modification operations, if 'kind' is FcMatchPattern, then those tagged as pattern opera- tions are applied, else if 'kind' is FcMatchFont, those tagged as font operations are applied and p_pat is used for ele- ments with target=pattern. FcBool FcConfigSubstitute (FcConfig *config, FcPattern *p, FcMatchKind kind) Calls FcConfigSubstituteWithPat setting p_pat to NULL. FcPattern *FcFontMatch (FcConfig *config, FcPattern *p, FcResult *result) Returns the font in 'config' most close matching 'p'. This function should be called only after FcConfigSubstitute and FcDefaultSubstitute have been called for 'p'; otherwise the results will not be correct. FcFontSet *FcFontSort (FcConfig *config, FcPattern *p, FcBool trim, FcCharSet **csp, FcResult *result) Returns the list of fonts sorted by closeness to 'p'. If 'trim' is FcTrue, elements in the list which don't include Unicode coverage not provided by earlier elements in the list are elided. The union of Unicode coverage of all of the fonts is returned in 'csp', if 'csp' is not NULL. This function should be called only after FcConfigSubstitute and FcDefaultSubstitute have been called for 'p'; otherwise the results will not be correct. The returned FcFontSet references FcPattern structures which may be shared by the return value from multiple FcFontSort calls, applications must not modify these patterns. Instead, they should be passed, along with 'p' to FcFontRenderPrepare which combines them into a complete pattern. The FcFontSet returned by FcFontSort is destroyed by caling FcFontSet- Destroy. FcPattern *FcFontRenderPrepare (FcConfig *config, FcPattern *pat, FcPattern *font) Creates a new pattern consisting of elements of 'font' not appearing in 'pat', elements of 'pat' not appearing in 'font' and the best matching value from 'pat' for elements appearing in both. The result is passed to FcConfigSubstitute with 'kind' FcMatchFont and then returned. FcFontSet *FcFontList (FcConfig *config, FcPattern *p, FcObjectSet *os) Selects fonts matching 'p', creates patterns from those fonts containing only the objects in 'os' and returns the set of unique such patterns. char *FcConfigFilename (const char *name) Given the specified external entity name, return the associated filename. This provides applications a way to convert various configuration file references into filename form. A null or empty 'name' indicates that the default configuration file should be used; which file this references can be overridden with the FC_CONFIG_FILE environment variable. Next, if the name starts with '~', it refers to a file in the current users home directory. Other- wise if the name doesn't start with '/', it refers to a file in the default configuration directory; the built-in default directory can be overridden with the FC_CONFIG_DIR environment variable. 1mInitialization0m These functions provide some control over how the library is initial- ized. FcConfig *FcInitLoadConfig (void) Loads the default configuration file and returns the resulting configuration. Does not load any font information. FcConfig *FcInitLoadConfigAndFonts (void) Loads the default configuration file and builds information about the available fonts. Returns the resulting configuration. FcBool FcInit (void) Loads the default configuration file and the fonts referenced therein and sets the default configuration to that result. Returns whether this process succeeded or not. If the default configuration has already been loaded, this routine does nothing and returns FcTrue. int FcGetVersion (void) Returns the version number of the library. FcBool FcInitReinitialize (void) Forces the default configuration file to be reloaded and resets the default configuration. FcBool FcInitBringUptoDate (void) Checks the rescan interval in the default configuration, check- ing the configuration if the interval has passed and reloading the configuration if when any changes are detected. 1mFcAtomic0m These functions provide a safe way to update config files, allowing ongoing reading of the old config file while locked for writing and ensuring that a consistent and complete version of the config file is always available. FcAtomic * FcAtomicCreate (const FcChar8 *file) Creates a data structure containing data needed to control access to 'file'. Writing is done to a separate file. Once that file is complete, the original configuration file is atomi- cally replaced so that reading process always see a consistent and complete file without the need to lock for reading. FcBool FcAtomicLock (FcAtomic *atomic) Attempts to lock the file referenced by 'atomic'. Returns FcFalse if the file is locked by another process, else returns FcTrue and leaves the file locked. FcChar8 *FcAtomicNewFile (FcAtomic *atomic) Returns the filename for writing a new version of the file ref- erenced by 'atomic'. FcChar8 *FcAtomicOrigFile (FcAtomic *atomic) Returns the file refernced by 'atomic'. FcBool FcAtomicReplaceOrig (FcAtomic *atomic) Replaces the original file referenced by 'atomic' with the new file. void FcAtomicDeleteNew (FcAtomic *atomic) Deletes the new file. void FcAtomicUnlock (FcAtomic *atomic) Unlocks the file. void FcAtomicDestroy (FcAtomic *atomic) Destroys 'atomic'. 1mFreeType specific functions0m 1m#include 0m While the fontconfig library doesn't insist that FreeType be used as the rasterization mechanism for fonts, it does provide some convenience functions. FT_UInt FcFreeTypeCharIndex (FT_Face face, FcChar32 ucs4) Maps a Unicode char to a glyph index. This function uses infor- mation from several possible underlying encoding tables to work around broken fonts. As a result, this function isn't designed to be used in performance sensitive areas; results from this function are intended to be cached by higher level functions. FcCharSet *FcFreeTypeCharSet (FT_Face face, FcBlanks *blanks) Scans a FreeType face and returns the set of encoded Unicode chars. This scans several encoding tables to build as complete a list as possible. If 'blanks' is not 0, the glyphs in the font are examined and any blank glyphs not in 'blanks' are not placed in the returned FcCharSet. FcPattern *FcFreeTypeQuery (const char *file, int id, FcBlanks *blanks, int *count) Constructs a pattern representing the 'id'th font in 'file'. The number of fonts in 'file' is returned in 'count'. 1mXML specific functions0m FcBool FcConfigParseAndLoad (FcConfig *config, const FcChar8 *file, FcBool complain) Walks the configuration in 'file' and constructs the internal representation in 'config'. Any include files referenced from within 'file' will be loaded with FcConfigLoad and also parsed. If 'complain' is FcFalse, no warning will be displayed if 'file' does not exist. 1mFile and Directory routines0m FcBool FcFileScan (FcFontSet *set, FcStrSet *dirs, FcFileCache *cache, FcBlanks *blanks, const char *file, FcBool force) Scans a single file and adds all fonts found to 'set'. If 'force' is FcTrue, then the file is scanned even if associated information is found in 'cache'. If 'file' is a directory, it is added to 'dirs'. FcBool FcDirScan (FcFontSet *set, FcStrSet *dirs, FcFileCache *cache, FcBlanks *blanks, const char *dir, FcBool force) Scans an entire directory and adds all fonts found to 'set'. If 'force' is FcTrue, then the directory and all files within it are scanned even if information is present in the per-directory cache file or 'cache'. Any subdirectories found are added to 'dirs'. FcBool FcDirSave (FcFontSet *set, FcStrSet *dirs, const char *dir) Creates the per-directory cache file for 'dir' and populates it with the fonts in 'set' and subdirectories in 'dirs'. FcBool FcDirCacheValid (const FcChar8 *cache_file) Returns FcTrue if 'cache_file' is no older than the directory containing it, else FcFalse. 1mFcStrSet and FcStrList0m A data structure for enumerating strings, used to list directories while scanning the configuration as directories are added while scan- ning. FcStrSet *FcStrSetCreate (void) Create an empty set. FcBool FcStrSetMember (FcStrSet *set, const FcChar8 *s) Returns whether 's' is a member of 'set'. FcBool FcStrSetAdd (FcStrSet *set, const FcChar8 *s) Adds a copy of 's' to 'set'. FcBool FcStrSetAddFilename (FcStrSet *set, const FcChar8 *s) Adds a copy 's' to 'set', The copy is created with FcStrCopy- Filename so that leading '~' values are replaced with the value of the HOME environment variable. FcBool FcStrSetDel (FcStrSet *set, const FcChar8 *s) Removes 's' from 'set', returning FcTrue if 's' was a member else FcFalse. void FcStrSetDestroy (FcStrSet *set) Destroys 'set'. FcStrList *FcStrListCreate (FcStrSet *set) Creates an enumerator to list the strings in 'set'. FcChar8 *FcStrListNext (FcStrList *list) Returns the next string in 'set'. void FcStrListDone (FcStrList *list) Destroys the enumerator 'list'. 1mString utilities0m int FcUtf8ToUcs4 (FcChar8 *src, FcChar32 *dst, int len) Converts the next Unicode char from 'src' into 'dst' and returns the number of bytes containing the char. 'src' nust be at least 'len' bytes long. int FcUcs4ToUtf8 (FcChar32 src, FcChar8 dst[FC_UTF8_MAX_LEN]) Converts the Unicode char from 'src' into 'dst' and returns the number of bytes needed to encode the char. FcBool FcUtf8Len (FcChar8 *src, int len, int *nchar, int *wchar) Counts the number of Unicode chars in 'len' bytes of 'src'. Places that count in 'nchar'. 'wchar' contains 1, 2 or 4 depending on the number of bytes needed to hold the largest uni- code char counted. The return value indicates whether 'src' is a well-formed UTF8 string. int FcUtf16ToUcs4 (FcChar8 *src, FcEndian endian, FcChar32 *dst, int len) Converts the next Unicode char from 'src' into 'dst' and returns the number of bytes containing the char. 'src' must be at least 'len' bytes long. Bytes of 'src' are combined into 16-bit units according to 'endian'. FcBool FcUtf16Len (FcChar8 *src, FcEndian endian, int len, int *nchar, int *wchar) Counts the number of Unicode chars in 'len' bytes of 'src'. Bytes of 'src' are combined into 16-bit units according to 'endian'. Places that count in 'nchar'. 'wchar' contains 1, 2 or 4 depending on the number of bytes needed to hold the largest unicode char counted. The return value indicates whether 'string' is a well-formed UTF16 string. FcChar8 *FcStrCopy (const FcChar8 *s) Allocates memory, copies 's' and returns the resulting buffer. Yes, this is 'strdup', but that function isn't available on every platform. FcChar8 *FcStrCopyFilename (const FcChar8 *s) Just like FcStrCopy except that it converts any leading '~' characters in 's' to the value of the HOME environment variable. int FcStrCmpIgnoreCase (const char *s1, const char *s2) Returns the usual <0, 0, >0 result of comparing 's1' and 's2'. This test is case-insensitive in the ASCII range and will oper- ate properly with UTF8 encoded strings, although it does not check for well formed strings. FcChar8 *FcStrDirname (const FcChar8 *file) Returns the directory containing 'file'. FcChar8 *FcStrBasename (const FcChar8 *file) Returns the filename of 'file' stripped of any leading directory names. 1mCONFIGURATION FILE FORMAT0m Configuration files for fontconfig are stored in XML format; this for- mat makes external configuration tools easier to write and ensures that they will generate syntactically correct configuration files. As XML files are plain text, they can also be manipulated by the expert user using a text editor. The fontconfig document type definition resides in the external entity "fonts.dtd"; this is normally stored in the default font configuration directory (/etc/fonts). Each configuration file should contain the following structure: ... 1m0m This is the top level element for a font configuration and can contain , , , and elements in any order. 1m0m This element contains a directory name which will be scanned for font files to include in the set of available fonts. 1m0m This element contains a file name for the per-user cache of font infor- mation. If it starts with '~', it refers to a file in the users home directory. This file is used to hold information about fonts that isn't present in the per-directory cache files. It is automatically maintained by the fontconfig library. The default for this file is ``~/.fonts.cache-'', where is the font configuration file version number (currently 1). 1m0m This element contains the name of an additional configuration file. When the XML datatype is traversed by FcConfigParse, the contents of the file will also be incorporated into the configuration by passing the filename to FcConfigLoadAndParse. If 'ignore_missing' is set to "yes" instead of the default "no", a missing file will elicit no warn- ing message from the library. 1m0m This element provides a place to consolodate additional configuration information. can contain and elements in any order. 1m0m Fonts often include "broken" glyphs which appear in the encoding but are drawn as blanks on the screen. Within the element, place each Unicode characters which is supposed to be blank in an ele- ment. Characters outside of this set which are drawn as blank will be elided from the set of characters supported by the font. 0m The element holds an element which indicates the default interval between automatic checks for font configuration changes. Fontconfig will validate all of the configuration files and directories and automatically rebuild the internal datastructures when this inter- val passes. 1m0m This element holds first a (possibly empty) list of elements and then a (possibly empty) list of elements. Patterns which match all of the tests are subjected to all the edits. If 'target' is set to "font" instead of the default "pattern", then this element applies to the font name resulting from a match rather than a font pattern to be matched. 1m0m This element contains a single value which is compared with the pattern property "property" (substitute any of the property names seen above). 'compare' can be one of "eq", "not_eq", "less", "less_eq", "more", or "more_eq". 'qual' may either be the default, "any", in which case the match succeeds if any value associated with the property matches the test value, or "all", in which case all of the values associated with the property must match the test value. 1m0m This element contains a list of expression elements (any of the value or operator elements). The expression elements are evaluated at run- time and modify the property "property". The modification depends on whether "property" was matched by one of the associated ele- ments, if so, the modification may affect the first matched value. Any values inserted into the property are given the indicated binding. 'mode' is one of: Mode Operation with match Operation without match -------------------------------------------------- "assign" Replace matching value Replace all values "assign_replace" Replace all values Replace all values "prepend" Insert before matching value Insert at head of list "prepend_first" Insert at head of listInsert at head of list "append" Append after matching value Append at end of list "append_last" Append at end of listAppend at end of list 1m0m 1m0m 1m0m 1m0m These elements hold a single value of the indicated type. ele- ments hold either true or false. 1m0m This element holds the four elements of an affine transforma- tion. 1m0m Holds a property name. Evaluates to the first value from the property of the font, not the pattern. 1m0m Holds the name of a constant; these are always integers and serve as symbolic names for common font values: Constant Property CPP symbol ------------------------------ light weight FC_WEIGHT_LIGHT medium weight FC_WEIGHT_MEDIUM demibold weight FC_WEIGHT_DEMIBOLD bold weight FC_WEIGHT_BOLD black weight FC_WEIGHT_BLACK roman slant FC_SLANT_ROMAN italic slant FC_SLANT_ITALIC oblique slant FC_SLANT_OBLIQUE proportional spacing FC_PROPORTIONAL mono spacing FC_MONO charcell spacing FC_CHARCELL unknown rgba FC_RGBA_UNKNOWN rgb rgba FC_RGBA_RGB bgr rgba FC_RGBA_BGR vrgb rgba FC_RGBA_VRGB vbgr rgba FC_RGBA_VBGR none rgba FC_RGBA_NONE 1m0m 1m0m 1m0m 1m0m 1m0m 1m0m These elements perform the specified operation on a list of expression elements. and are boolean, not bitwise. 1m0m 1m0m 1m0m 1m0m 1m0m 1m0m These elements compare two values, producing a boolean result. 1m0m Inverts the boolean sense of its one expression element 1m0m This element takes three expression elements; if the value of the first is true, it produces the value of the second, otherwise it produces the value of the third. 1m0m Alias elements provide a shorthand notation for the set of common match operations needed to substitute one font family for another. They con- tain a element followed by optional , and elements. Fonts matching the element are edited to prepend the list of ed families before the matching , append the able familys after the matching and append the families to the end of the family list. 1m0m Holds a single font family name 1m0m 1m0m 1m0m These hold a list of elements to be used by the ele- ment. 1mEXAMPLE CONFIGURATION FILE0m 1mSystem configuration file0m This is an example of a system-wide configuration file /usr/X11R6/lib/X11/fonts/truetype /usr/X11R6/lib/X11/fonts/Type1 mono monospace sans serif monospace sans ~/.fonts.conf Times Times New Roman serif Helvetica Verdana sans Courier Courier New monospace serif Times New Roman sans Verdana monospace Andale Mono 1mUser configuration file0m This is an example of a per-user configuration file that lives in ~/.fonts.conf ~/misc/fonts rgb 1mFILES0m 1mfonts.conf 22mcontains configuration information for the fontconfig library consisting of directories to look at for font information as well as instructions on editing program specified font patterns before attempting to match the available fonts. It is in xml format. 1mfonts.dtd 22mis a DTD that describes the format of the configuration files. 1mlocal.conf 22mis sourced by the default system-wide fonts.conf file. Note that the normal 'make install' procedure for XFree86 is to replace any existing fonts.conf file with the new version. Place any local cus- tomizations in local.conf which this file references. 1m~/.fonts.conf 22mis the conventional location for per-user font configura- tion, although the actual location is specified in the global fonts.conf file. 1m~/.fonts.cache-* 22mis the conventional repository of font information that isn't found in the per-directory caches. This file is automati- cally maintained by fontconfig. 1mAUTHOR0m Keith Packard, member of the XFree86 Project, Inc. FSLSFONTS(1) FSLSFONTS(1) 1mNAME0m fslsfonts - list fonts served by X font server 1mSYNOPSIS0m 1mfslsfonts 22m[-options ...] [-fn pattern] 1mDESCRIPTION0m 4mFslsfonts24m lists the fonts that match the given 4mpattern24m. The wildcard character "*" may be used to match any sequence of characters (includ- ing none), and "?" to match any single character. If no pattern is given, "*" is assumed. The "*" and "?" characters must be quoted to prevent them from being expanded by the shell. 1mOPTIONS0m 1m-server 4m22mhost24m1m:4m22mport0m This option specifies the X font server to contact. 1m-l 22mLists some attributes of the font on one line in addition to its name. 1m-ll 22mLists font properties in addition to 1m-l 22moutput. 1m-lll 22mSupported for compatibility with 4mxlsfonts24m, but output is the same as for 1m-ll22m. 1m-m 22mThis option indicates that long listings should also print the minimum and maximum bounds of each font. 1m-C 22mThis option indicates that listings should use multiple col- umns. This is the same as 1m-n 022m. 1m-1 22mThis option indicates that listings should use a single column. This is the same as 1m-n 122m. 1m-w 4m22mwidth0m This option specifies the width in characters that should be used in figuring out how many columns to print. The default is 79. 1m-n 4m22mcolumns0m This option specifies the number of columns to use in display- ing the output. The default is 0, which will attempt to fit as many columns of font names into the number of character speci- fied by 1m-w 4m22mwidth24m. 1m-u 22mThis option indicates that the output should be left unsorted. 1mSEE ALSO0m xfs(1), showfont(1), xlsfonts(1) 1mENVIRONMENT0m 1mFONTSERVER0m to get the default host and port to use. 1mBUGS0m Doing ``fslsfonts -l'' can tie up your server for a very long time. This is really a bug with single-threaded non-preemptable servers, not with this program. 1mAUTHOR0m Dave Lemke, Network Computing Devices, Inc FSTOBDF(1) FSTOBDF(1) 1mNAME0m fstobdf - generate BDF font from X font server 1mSYNOPSIS0m 1mfstobdf 22m[ 1m-server 4m22mserver24m ] 1m-fn 4m22mfontname0m 1mDESCRIPTION0m The 4mfstobdf24m program reads a font from a font server and prints a BDF file on the standard output that may be used to recreate the font. This is useful in testing servers, debugging font metrics, and repro- ducing lost BDF files. 1mOPTIONS0m 1m-server 4m22mservername0m This option specifies the server from which the font should be read. 1m-fn 4m22mfontname0m This option specifies the font for which a BDF file should be generated. 1mENVIRONMENT0m 1mFONTSERVER0m default server to use 1mSEE ALSO0m xfs(1), bdftopcf(1), fslsfonts(1) 1mAUTHOR0m Olaf Brandt, Network Computing Devices Dave Lemke, Network Computing Devices Jim Fulton, MIT X Consortium gccmakedep(1) gccmakedep(1) 1mNAME0m gccmakedep - create dependencies in makefiles using 'gcc -M' 1mSYNOPSIS0m 1mgccmakedep 22m[ 1m-s4m22mseparator24m ] [ 1m-f4m22mmakefile24m ] [ 1m-a 22m] [ -- 4moptions24m -- ] 4msourcefile24m ... 1mDESCRIPTION0m The 1mgccmakedep 22mprogram calls 'gcc -M' to output 4mmakefile24m rules describ- ing the dependencies of each 4msourcefile24m, so that 1mmake22m(1) knows which object files must be recompiled when a dependency has changed. By default, 1mgccmakedep 22mplaces its output in the file named 4mmakefile24m if it exists, otherwise 4mMakefile.24m An alternate makefile may be specified with the 1m-f 22moption. It first searches the makefile for a line begin- ning with # DO NOT DELETE or one provided with the 1m-s 22moption, as a delimiter for the dependency output. If it finds it, it will delete everything following this up to the end of the makefile and put the output after this line. If it doesn't find it, the program will append the string to the makefile and place the output after that. 1mEXAMPLE0m Normally, 1mgccmakedep 22mwill be used in a makefile target so that typing 'make depend' will bring the dependencies up to date for the makefile. For example, SRCS = file1.c file2.c ... CFLAGS = -O -DHACK -I../foobar -xyz depend: gccmakedep -- $(CFLAGS) -- $(SRCS) 1mOPTIONS0m The program will ignore any option that it does not understand, so you may use the same arguments that you would for 1mgcc22m(1), including 1m-D 22mand 1m-U 22moptions to define and undefine symbols and 1m-I 22mto set the include path. 1m-a 22mAppend the dependencies to the file instead of replacing exist- ing dependencies. 1m-f4m22mmakefile0m Filename. This allows you to specify an alternate makefile in which 1mgccmakedep 22mcan place its output. Specifying "-" as the file name (that is, 1m-f-22m) sends the output to standard output instead of modifying an existing file. 1m-s4m22mstring0m Starting string delimiter. This option permits you to specify a different string for 1mgccmakedep 22mto look for in the makefile. The default is "# DO NOT DELETE". 1m-- 4m22moptions24m 1m--0m If 1mgccmakedep 22mencounters a double hyphen (--) in the argument list, then any unrecognized arguments following it will be silently ignored. A second double hyphen terminates this spe- cial treatment. In this way, 1mgccmakedep 22mcan be made to safely ignore esoteric compiler arguments that might normally be found in a CFLAGS 1mmake 22mmacro (see the 1mEXAMPLE 22msection above). 1m-D22m, 1m-I22m, and 1m-U 22moptions appearing between the pair of double hyphens are still processed normally. 1mSEE ALSO0m 1mgcc22m(1), 1mmake22m(1), 1mmakedepend22m(1). 1mAUTHOR0m 1mgccmakedep 22mwas written by the XFree86 Project based on code supplied by Hongjiu Lu. Colin Watson wrote this manual page, originally for the Debian Project, based partly on the manual page for 1mmakedepend22m(1). GLXGEARS(1) GLXGEARS(1) 1mNAME0m glxgears - GLX version of the infamous "gears" GL demo. 1mSYNOPSIS0m 1mglxgears 22m[-info] [-display 4mdisplayname24m] 1mDESCRIPTION0m 4mglxgears24m is a GLX demo that draws three rotating gears, and prints out framerate information to stdout. Command line options include: 1m-info 22mPrint out GL implementation information before running the demo. 1m-display 4m22mdisplayname0m Specify the display to query. 1mENVIRONMENT0m 1mDISPLAY 22mTo get the default host, display number, and screen. 1mSEE ALSO0m glxinfo(1) 1mAUTHOR0m Ported to straight GLX by Brian Paul. GLXINFO(1) GLXINFO(1) 1mNAME0m glxinfo - display info about a GLX extension and OpenGL renderer. 1mSYNOPSIS0m 1mglxinfo 22m[-t] [-v] [-b] [-display 4mdisplayname24m] 1mDESCRIPTION0m 4mglxinfo24m lists information about the GLX extension, OpenGL capable visu- als, and the OpenGL renderer on an X server. The GLX and renderer info includes the version and extension attributes. The visual info lists the GLX visual attributes available for each OpenGL capable visual (e.g. whether the visual is double buffered, the component sizes, Z- buffering depth, etc). Command line options include: 1m-t 22mBy default the visual info is presented in a concise 80 charac- ter wide tabular format. The -t option directs glxinfo to pro- duce a wider, more readable tabular format. 1m-v 22mDirects glxinfo to generate a verbose format output style for the visual list similar to the info of xdpyinfo. 1m-b 22mPrint the ID of the "best" visual on screen 0. 1m-l 22mPrint interesting OpenGL limits. 1m-i 22mUse indirect rendering connection only. 1m-display 4m22mdisplayname0m Specify the display to query. 1mENVIRONMENT0m 1mDISPLAY 22mTo get the default host, display number, and screen. 1mSEE ALSO0m xdpyinfo(1) 1mAUTHOR0m Brian Paul Modifications for XFree86 added by Mark Paton ICEAUTH(1) ICEAUTH(1) 1mNAME0m iceauth - ICE authority file utility 1mSYNOPSIS0m 1miceauth 22m[ 1m-f 4m22mauthfile24m ] [ 1m-vqib 22m] [ 4mcommand24m 4marg24m 4m...24m ] 1mDESCRIPTION0m The 4miceauth24m program is used to edit and display the authorization information used in connecting with ICE. This program is usually used to extract authorization records from one machine and merge them in on another (as is the case when using remote logins or granting access to other users). Commands (described below) may be entered interactively, on the 4miceauth24m command line, or in scripts. 1mAUTHOR0m Ralph Mor, X Consortium ICO(1) ICO(1) 1mNAME0m ico - animate an icosahedron or other polyhedron 1mSYNOPSIS0m 1mico 22m[-display display] [-geometry geometry] [-r] [-d pattern] [-i] [-dbl] [-faces] [-noedges] [-sleep n] [-obj object] [-objhelp] [-colors color-list] 1mDESCRIPTION0m 4mIco24m displays a wire-frame rotating polyhedron, with hidden lines removed, or a solid-fill polyhedron with hidden faces removed. There are a number of different polyhedra available; adding a new polyhedron to the program is quite simple. 1mOPTIONS0m 1m-r 22mDisplay on the root window instead of creating a new window. 1m-d pattern0m Specify a bit pattern for drawing dashed lines for wire frames. 1m-i 22mUse inverted colors for wire frames. 1m-dbl 22mUse double buffering on the display. This works for either wire frame or solid fill drawings. For solid fill drawings, using this switch results in substantially smoother movement. Note that this requires twice as many bit planes as without double buffering. Since some colors are typically allocated by other programs, most eight-bit-plane displays will probably be limited to eight colors when using double buffering. 1m-faces 22mDraw filled faces instead of wire frames. 1m-noedges0m Don't draw the wire frames. Typically used only when -faces is used. 1m-sleep 4m22mn0m Sleep n seconds between each move of the object. 1m-obj 4m22mobject0m Specify what object to draw. If no object is specified, an icosahedron is drawn. 1m-objhelp0m Print out a list of the available objects, along with informa- tion about each object. 1m-colors 4m22mcolor24m 4mcolor24m 4m...0m Specify what colors should be used to draw the filled faces of the object. If less colors than faces are given, the colors are reused. 1mPROGRAM TREMINATION0m Pressing "q" will close a window. If compiled with threads support, the program will stop only when all threads terminate. You can also close an animation window using the ICCCM 4mdelete24m message (depending on your window manager, you will have a decoration button or menu to send such message). 1mADDING POLYHEDRA0m If you have the source to ico, it is very easy to add more polyhedra. Each polyhedron is defined in an include file by the name of objXXX.h, where XXX is something related to the name of the polyhedron. The for- mat of the include file is defined in the file polyinfo.h. Look at the file objcube.h to see what the exact format of an objXXX.h file should be, then create your objXXX.h file in that format. After making the new objXXX.h file (or copying in a new one from else- where), simply do a 'make depend'. This will recreate the file allobjs.h, which lists all of the objXXX.h files. Doing a 'make' after this will rebuild ico with the new object information. 1mSEE ALSO0m X(7) 1mBUGS0m Pyramids and tetrahedrons with filled faces do not display correctly. A separate color cell is allocated for each name in the -colors list, even when the same name may be specified twice. Color allocation fails in TrueColor displays and option 4m-faces24m does not work well. 1mCOPYRIGHT0m Copyright 1994 X Consortium See 4mX(7)24m for a full statement of rights and permissions. IMAKE(1) IMAKE(1) 1mNAME0m imake - C preprocessor interface to the make utility 1mSYNOPSIS0m 1mimake 22m[ 1m-D4m22mdefine24m ] [ 1m-I4m22mdir24m ] [ 1m-U4m22mdefine24m ] [ 1m-T4m22mtemplate24m ] [ 1m-f 4m22mfilename0m ] [ 1m-C 4m22mfilename24m ] [ 1m-s 4m22mfilename24m ] [ 1m-e 22m] [ 1m-v 22m] 1mDESCRIPTION0m 4mImake24m is used to generate 4mMakefiles24m from a template, a set of 4mcpp24m macro functions, and a per-directory input file called an 4mImakefile24m. This allows machine dependencies (such as compiler options, alternate com- mand names, and special 4mmake24m rules) to be kept separate from the descriptions of the various items to be built. 1mOPTIONS0m The following command line options may be passed to 4mimake24m: 1m-D4m22mdefine0m This option is passed directly to 4mcpp24m. It is typically used to set directory-specific variables. For example, the X Window System uses this flag to set 4mTOPDIR24m to the name of the direc- tory containing the top of the core distribution and 4mCURDIR24m to the name of the current directory, relative to the top. 1m-I4m22mdirectory0m This option is passed directly to 4mcpp24m. It is typically used to indicate the directory in which the 4mimake24m template and configu- ration files may be found. 1m-U4m22mdefine0m This option is passed directly to 4mcpp24m. It is typically used to unset variables when debugging 4mimake24m configuration files. 1m-T4m22mtemplate0m This option specifies the name of the master template file (which is usually located in the directory specified with 4m-I24m) used by 4mcpp24m. The default is 4mImake.tmpl24m. 1m-f 4m22mfilename0m This option specifies the name of the per-directory input file. The default is 4mImakefile24m. 1m-C 4m22mfilename0m This option specifies the name of the .c file that is con- structed in the current directory. The default is 4mImakefile.c24m. 1m-s 4m22mfilename0m This option specifies the name of the 4mmake24m description file to be generated but 4mmake24m should not be invoked. If the 4mfilename0m is a dash (-), the output is written to 4mstdout24m. The default is to generate, but not execute, a 4mMakefile24m. 1m-e 22mThis option indicates the 4mimake24m should execute the generated 4mMakefile24m. The default is to leave this to the user. 1m-v 22mThis option indicates that 4mimake24m should print the 4mcpp24m command line that it is using to generate the 4mMakefile24m. 1m-k 22mThis option indicates that 4mimake24m should not remove the tempo- rary .c file that it constructs. This is for debugging pur- poses. 1mHOW IT WORKS0m 4mImake24m invokes 4mcpp24m with any 4m-I24m or 4m-D24m flags passed on the command line and passes the name of a file containing the following 3 lines: #define IMAKE_TEMPLATE "Imake.tmpl" #define INCLUDE_IMAKEFILE #include IMAKE_TEMPLATE where 4mImake.tmpl24m and 4mImakefile24m may be overridden by the 4m-T24m and 4m-f24m com- mand options, respectively. The IMAKE_TEMPLATE typically reads in a file containing machine-depen- dent parameters (specified as 4mcpp24m symbols), a site-specific parameters file, a file defining variables, a file containing 4mcpp24m macro functions for generating 4mmake24m rules, and finally the 4mImakefile24m (specified by INCLUDE_IMAKEFILE) in the current directory. The 4mImakefile24m uses the macro functions to indicate what targets should be built; 4mimake24m takes care of generating the appropriate rules. 4mImake24m configuration files contain two types of variables, imake vari- ables and make variables. The imake variables are interpreted by cpp when 4mimake24m is run. By convention they are mixed case. The make vari- ables are written into the 4mMakefile24m for later interpretation by 4mmake.0m By convention make variables are upper case. The rules file (usually named 4mImake.rules24m in the configuration direc- tory) contains a variety of 4mcpp24m macro functions that are configured according to the current platform. 4mImake24m replaces any occurrences of the string ``@@'' with a newline to allow macros that generate more than one line of 4mmake24m rules. For example, the macro #define program_target(program, objlist) @@\ program: objlist @@\ $(CC) -o $@ objlist $(LDFLAGS) when called with 4mprogram_target(foo,24m 4mfoo1.o24m 4mfoo2.o)24m will expand to foo: foo1.o foo2.o $(CC) -o $@ foo1.o foo2.o $(LDFLAGS) 4mImake24m also replaces any occurrences of the word ``XCOMM'' with the character ``#'' to permit placing comments in the Makefile without causing ``invalid directive'' errors from the preprocessor. Some complex 4mimake24m macros require generated 4mmake24m variables local to each invocation of the macro, often because their value depends on parameters passed to the macro. Such variables can be created by using an 4mimake24m variable of the form 1mXVARdef4m22mn24m, where 4mn24m is a single digit. A unique 4mmake24m variable will be substituted. Later occurrences of the variable 1mXVARuse4m22mn24m will be replaced by the variable created by the cor- responding 1mXVARdef4m22mn24m. On systems whose 4mcpp24m reduces multiple tabs and spaces to a single space, 4mimake24m attempts to put back any necessary tabs (4mmake24m is very picky about the difference between tabs and spaces). For this reason, colons (:) in command lines must be preceded by a backslash (\). 1mUSE WITH THE X WINDOW SYSTEM0m The X Window System uses 4mimake24m extensively, for both full builds within the source tree and external software. As mentioned above, two special variables, 4mTOPDIR24m and 4mCURDIR,24m are set to make referencing files using relative path names easier. For example, the following command is gen- erated automatically to build the 4mMakefile24m in the directory 4mlib/X/0m (relative to the top of the sources): % ../.././config/imake -I../.././config \ -DTOPDIR=../../. -DCURDIR=./lib/X When building X programs outside the source tree, a special symbol 4mUse-0m 4mInstalled24m is defined and 4mTOPDIR24m and 4mCURDIR24m are omitted. If the config- uration files have been properly installed, the script 4mxmkmf24m(1) may be used. 1mINPUT FILES0m Here is a summary of the files read by 4mimake24m as used by X. The inden- tation shows what files include what other files. Imake.tmpl generic variables site.def site-specific, BeforeVendorCF defined *.cf machine-specific *Lib.rules shared library rules site.def site-specific, AfterVendorCF defined Imake.rules rules Project.tmpl X-specific variables *Lib.tmpl shared library variables Imakefile Library.tmpl library rules Server.tmpl server rules Threads.tmpl multi-threaded rules Note that 4msite.def24m gets included twice, once before the 4m*.cf24m file and once after. Although most site customizations should be specified after the 4m*.cf24m file, some, such as the choice of compiler, need to be specified before, because other variable settings may depend on them. The first time 4msite.def24m is included, the variable BeforeVendorCF is defined, and the second time, the variable AfterVendorCF is defined. All code in 4msite.def24m should be inside an #ifdef for one of these sym- bols. 1mFILES0m Imakefile.c temporary input file for cpp /tmp/Imf.XXXXXX temporary Makefile for -s /tmp/IIf.XXXXXX temporary Imakefile if specified Imake- file uses # comments __cpp__ default C preprocessor 1mSEE ALSO0m make(1), xmkmf(1) S. I. Feldman, 4mMake24m 4m--24m 4mA24m 4mProgram24m 4mfor24m 4mMaintaining24m 4mComputer24m 4mPrograms0m 1mENVIRONMENT VARIABLES0m The following environment variables may be set, however their use is not recommended as they introduce dependencies that are not readily apparent when 4mimake24m is run: 1mIMAKEINCLUDE0m If defined, this specifies a ``-I'' include argument to pass to the C preprocessor. E.g., ``-I/usr/X11/config''. 1mIMAKECPP0m If defined, this should be a valid path to a preprocessor program. E.g., ``/usr/local/cpp''. By default, 4mimake24m will use cc -E or __cpp__, depending on the OS specific configuration. 1mIMAKEMAKE0m If defined, this should be a valid path to a make program, such as ``/usr/local/make''. By default, 4mimake24m will use whatever 4mmake0m program is found using 4mexecvp(3).24m This variable is only used if the ``-e'' option is specified. 1mAUTHOR0m Todd Brunhoff, Tektronix and MIT Project Athena; Jim Fulton, MIT X Con- sortium KBD_MODE(1) KBD_MODE(1) 1mNAME0m kbd_mode - recover the Sun console keyboard 1mSYNOPSIS0m 1mkbd_mode 22m[ -a -e -n -u ] 1mDESCRIPTION0m 4mKbd_mode24m resets the Sun console keyboard to a rational state. 1mOPTIONS0m The following options are supported, see 4mkb(4S)24m for details: 1m-a 22mCauses ASCII to be reported. 1m-e 22mCauses 4mFirm_events24m to be reported. 1m-n 22mCauses up/down key codes to be reported. 1m-u 22mCauses undecoded keyboard values to be reported. 1mSEE ALSO0m kb(4S) LBXPROXY(1) LBXPROXY(1) 1mNAME0m lbxproxy - Low BandWidth X proxy 1mSYNOPSIS0m 1mlbxproxy [:] [option]0m 1mDESCRIPTION0m Applications that would like to take advantage of the Low Bandwidth extension to X (LBX) must make their connections to an lbxproxy. These applications need to know nothing about LBX, they simply connect to the lbxproxy as if were a regular server. The lbxproxy accepts client con- nections, multiplexes them over a single connection to the X server, and performs various optimizations on the X protocol to make it faster over low bandwidth and/or high latency connections. With regard to authentication/authorization, lbxproxy simply passes along to the server the credentials presented by the client. Since X clients will connect to lbxproxy, it is important that the user's .Xau- thority file contain entries with valid keys associated with the net- work ID of the proxy. lbxproxy does not get involved with how these entries are added to the .Xauthority file. The user is responsible for setting it up. The lbxproxy program has various options, all of which are optional. If 1m: 22mis specified, the proxy will use the given display port when listening for connections. The display port is an offset from port 6000, identical to the way in which regular X display connections are specified. If no port is specified on the command line option, lbxproxy will default to port 63. If the port number that the proxy tries to listen on is in use, the proxy will attempt to use another port number. If the proxy is not using the Proxy Manager and the default port number cannot be used, the port number that is used will be written to stderr. The other command line options that can be specified are: 1m-help 22mPrints a brief help message about the command line options. 1m-display 4m22mdpy0m Specifies the address of the X server supporting the LBX exten- sion. If this option is not specified, the display is obtained by the DISPLAY environment variable. 1m-motion 4m22mcount0m A limited number of pointer motion events are allowed to be in flight between the server and the proxy at any given time. The maximum number of motion events that can be in flight is set with this option; the default is 8. 1m-maxservers 4m22mnumber0m The default behavior of lbxproxy is to manage a single server. However, lbxproxy can manage more than one server. The default maximum number of servers is 20. The number of servers can be overridden by setting the environment variable LBX- PROXY_MAXSERVERS to the desired number. The order of prece- dence from highest to lowest: command line, environment vari- able, default number. 1m-[terminate|reset]0m The default behavior of lbxproxy is to continue running as usual when it's last client exits. The 1m-terminate 22moption will cause lbxproxy to exit when the last client exits. The 1m-reset0m option will cause lbxproxy to reset itself when the last client exits. Resetting causes lbxproxy to clean up it's state and reconnect to the server. 1m-reconnect0m The default behavior of lbxproxy is to exit when its connection to the server is broken. The 1m-reconnect 22moption will cause lbx- proxy to just reset instead (see 1m-reset 22mabove) and attempt to reconnect to the server. 1m-I 22mCauses all remaining arguments to be ignored. 1m-nolbx 22mDisables all LBX optimizations. 1m-nocomp 22mDisables stream compression. 1m-nodelta0m Disables delta request substitutions. 1m-notags 22mDisables usage of tags. 1m-nogfx 22mDisables reencoding of graphics requests (not including image related requests). 1m-noimage0m Disables image compression. 1m-nosquish0m Disables squishing of X events. 1m-nointernsc0m Disables short circuiting of InternAtom requests. 1m-noatomsfile0m Disables reading of the atoms control file. See the section on "Atom Control" for more details. 1m-atomsfile 4m22mfile0m Overrides the default AtomControl file. See the section on "Atom Control" for more details. 1m-nowinattr0m Disables GetWindowAttributes/GetGeometry grouping into one round trip. 1m-nograbcmap0m Disables colormap grabbing. 1m-norgbfile0m Disables color name to RGB resolution in proxy. 1m-rgbfile 4m22mpath0m Specifies an alternate RGB database for color name to RGB reso- lution. 1m-tagcachesize0m Set the size of the proxy's tag cache (in bytes). 1m-zlevel 4m22mlevel0m Set the Zlib compression level (used for stream compression). default is 6 1 = worst compression, fastest 9 = best compression, slowest 1m-compstats0m Report stream compression statistics every time the proxy resets or receives a SIGHUP signal. 1m-nozeropad0m Don't zero out unused pad bytes in X requests, replies, and events. 1m-cheaterrors0m Allows cheating on X protocol for the sake of improved perfor- mance. The X protocol guarantees that any replies, events or errors generated by a previous request will be sent before those of a later request. This puts substantial restrictions on when lbxproxy can short circuit a request. The -cheaterrors option allows lbxproxy to violate X protocol rules with respect to errors. Use at your own risk. 1m-cheatevents0m The -cheatevents option allows lbxproxy to violate X protocol rules with respect to events as well as errors. Use at your own risk. 1mATOM CONTROL0m At startup, lbxproxy "pre-interns" a configurable list of atoms. This allows lbxproxy to intern a group of atoms in a single round trip and immediately store the results in its cache. While running, lbxproxy uses heuristics to decide when to delay sending window property data to the server. The heuristics depend on the size of the data, the name of the property, and whether a window manager is running through the same lbxproxy. Atom control is specified in the "AtomControl" file, set up during installation of lbxproxy, with command line overrides. The file is a simple text file. There are three forms of lines: com- ments, length control, and name control. Lines starting with a '!' are treated as comments. A line of the form z 4mlength0m specifies the minimum length in bytes before property data will be delayed. A line of the form 4moptions24m 4matomname0m controls the given atom, where 4moptions24m is any combination of the fol- lowing characters: 'i' means the atom should be pre-interned; and 'w' means data for properties with this name should be delayed only if a window manager is also running through the same lbxproxy. 1mBUGS0m When the authorization protocol XDM-AUTHORIZATION-1 is used: A client must be on the same host as lbxproxy for the client to be authorized to connect to the server. If a client is not on the same host as lbxproxy, the client will not be authorized to connect to the server. LIBXRX(1) LIBXRX(1) 1mNAME0m libxrx - RX Netscape Navigator Plug-in 1mDESCRIPTION0m The 1mRX Plug-in 22mmay be used with Netscape Navigator (3.0 or later) to interpret documents in the RX MIME type format and start remote appli- cations. The 1mRX Plug-in 22mreads an RX document, from which it gets the list of services the application wants to use. Based on this information, the 1mRX Plug-in 22msets the various requested services, including creating authorization keys if your X server supports the SECURITY extension. It then passes the relevant data, such as the X display name, to the application through an HTTP GET request of the associated CGI script. The Web server then executes the CGI script to start the application. The client runs on the web server host connected to your X server. In addition when the RX document is used within the EMBED tag (a Netscape extension to HTML), the 1mRX Plug-in 22muses the XC-APPGROUP extension, if it is supported by your X server, to cause the remote application to be embedded within the browser page from which it was launched. 1mINSTALLATION0m To install the 1mRX Plug-in 22mso that Netscape Navigator can use it, find the file named libxrx.so.6.3 or libxrx.sl.6.3 (or similar, depending on your platform) in /lib (e.g. /usr/X11R6.4/lib) and copy it to either /usr/local/lib/netscape/plugins or $HOME/.netscape/plugins. Do not install the symlinks libxrx.so or libxrx.sl; they would confuse Netscape. If you have configured Netscape Navigator to use the RX helper program (1mxrx22m), you must reconfigure it. Generally you simply need to remove or comment out the line you may have previously added in your mailcap file to use the RX helper program. Otherwise the plug-in will not be enabled. (The usual comment character for mailcap is ``#''.) If you are already running Netscape Navigator, you need to exit and restart it after copying the plug-in library so the new plug-in will be found. Once this is done you can check that Navigator has successfully loaded the plug-in by checking the ``About Plug-ins'' page from the Help menu. This should show something like: RX Plug-in File name: /usr/local/lib/netscape/plugins/libxrx.sl.6.3 X Remote Activation Plug-in Mime Type Description Suffixes Enabled application/x-rx X Remote Activation Plug-in xrx Yes Once correctly configured, Netscape Navigator will activate the 1mRX0m 1mPlug-in 22mwhenever you retrieve any document of the MIME type 4mapplica-0m 4mtion/x-rx24m. 1mRESOURCES0m The 1mRX Plug-in 22mlooks for resources associated with the widget 1mnetscape.Navigator (22mclass 1mNetscape.TopLevelShell) 22mand understands the following resource names and classes: 1mxrxHasFirewallProxy (22mclass 1mXrxHasFirewallProxy)0m Specifies whether an X server firewall proxy (see xfwp) is run- ning and should be used. Default is ``False.'' The X firewall proxy uses the X Security Extension and this extension will only allow clients to connect to the X server if host-based authentication is turned on. See 1mxfwp(1) 22mfor more information. 1mxrxInternalWebServers (22mclass 1mXrxInternalWebServers)0m The web servers for which the X server firewall proxy should not be used (only relevant when 1mxrxHasFirewallProxy 22mis ``True''). Its value is a comma separated list of mask/value pairs to be used to filter internal web servers, based on their address. The mask part specifies which segments of the address are to be considered and the value part specifies what the result should match. For instance the following list: 255.255.255.0/198.112.45.0, 255.255.255.0/198.112.46.0 matches the address sets: 198.112.45.* and 198.112.46.*. More precisely, the test is (address & mask) == value. 1mxrxFastWebServers (22mclass 1mXrxFastWebServers)0m The web servers for which LBX should not be used. The resource value is a list of address mask/value pairs, as previously described. 1mxrxTrustedWebServers (22mclass 1mXrxTrustedWebServers)0m The web servers from which remote applications should be run as trusted clients. The default is to run remote applications as untrusted clients. The resource value is a list of address mask/value pairs, as previously described. 1mENVIRONMENT0m If the RX document requests X-UI-LBX service and the default X server does not advertise the LBX extension, the 4mRX24m 4mPlug-in24m will look for the environment variable ``XREALDISPLAY'' to get a second address for your X server and look for the LBX extension there. When running your browser through 4mlbxproxy24m you will need to set XREALDISPLAY to the actual address of your server if you wish remote applications to be able to use LBX across the Internet. If the RX document requests XPRINT service, 4mRX24m 4mPlug-in24m looks for the variable ``XPRINTER'' to get the printer name and X Print server address to use. If the server address is not specified as part of XPRINTER, 4mRX24m 4mPlug-in24m uses the first one specified through the variable ``XPSERVERLIST'' when it is set. When it is not 4mRX24m 4mPlug-in24m then tries to use the video server as the print server. If the printer name is not specified via XPRINTER, 4mRX24m 4mPlug-in24m looks for it in the variables ``PDPRINTER'', then ``LPDEST'', and finally ``PRINTER'', Finally, if you are using a firewall proxy, 4mRX24m 4mPlug-in24m will look for ``PROXY_MANAGER'' to get the address of your proxy manager (see proxym- ngr). When not specified it will use ":6500" as the default. 1mKNOWN BUG0m When an authorization key is created for a remote application to use the X Print service, the 1mRX Plug-in 22mhas to create the key with an infi- nite timeout since nobody knows when the application will actually con- nect to the X Print server. It then revokes the key when its instance is destroyed (that is when you go to another page). However, if the Plug-in does not get destroyed properly, which happens when Netscape Navigator dies unexpectedly, the print authorization key will never get revoked. 1mSEE ALSO0m xrx (1), xfwp (1), lbxproxy (1), proxymngr (1), The RX Document speci- fication 1mAUTHORS0m Arnaud Le Hors and Kaleb Keithley, X Consortium LISTRES(1) LISTRES(1) 1mNAME0m listres - list resources in widgets 1mSYNOPSIS0m 1mlistres 22m[-option ...] 1mDESCRIPTION0m The 4mlistres24m program generates a list of a widget's resource database. The class in which each resource is first defined, the instance and class name, and the type of each resource is listed. If no specific widgets or the 4m-all24m switch are given, a two-column list of widget names and their class hierarchies is printed. 1mOPTIONS0m 4mListres24m accepts all of the standard toolkit command line options along with those listed below: 1m-all 22mThis option indicates that 4mlistres24m should print information for all known widgets and objects. 1m-nosuper0m This option indicates that resources that are inherited from a superclass should not be listed. This is useful for determin- ing which resources are new to a subclass. 1m-variable0m This option indicates that widgets should be identified by the names of the class record variables rather than the class name given in the variable. This is useful for distinguishing sub- classes that have the same class name as their superclasses. 1m-top 4m22mname0m This option specifies the name of the widget to be treated as the top of the hierarchy. Case is not significant, and the name may match either the class variable name or the class name. The default is ``core''. 1m-format 4m22mprintf-string0m This option specifies the 4mprintf24m-style format string to be used to print out the name, instance, class, and type of each resource. 1mX DEFAULTS0m To be written. 1mSEE ALSO0m X(7), xrdb(1), appropriate widget documents 1mBUGS0m On operating systems that do not support dynamic linking of run-time routines, this program must have all of its known widgets compiled in. The sources provide several tools for automating this process for vari- ous widget sets. 1mCOPYRIGHT0m Copyright 1994 X Consortium See 4mX(7)24m for a full statement of rights and permissions. 1mAUTHOR0m Jim Fulton, MIT X Consortium LNDIR(1) LNDIR(1) 1mNAME0m lndir - create a shadow directory of symbolic links to another direc- tory tree 1mSYNOPSIS0m 1mlndir 22m[ 4moptions24m ] 4mfromdir24m [ 4mtodir24m ] 1mDESCRIPTION0m The 4mlndir24m program makes a shadow copy 4mtodir24m of a directory tree 4mfromdir,24m except that the shadow is not populated with real files but instead with symbolic links pointing at the real files in the 4mfromdir0m directory tree. This is usually useful for maintaining source code for different machine architectures. You create a shadow directory con- taining links to the real source, which you will have usually mounted from a remote machine. You can build in the shadow tree, and the object files will be in the shadow directory, while the source files in the shadow directory are just symlinks to the real files. This scheme has the advantage that if you update the source, you need not propagate the change to the other architectures by hand, since all source in all shadow directories are symlinks to the real thing: just cd to the shadow directory and recompile away. The 4mtodir24m argument is optional and defaults to the current directory. The 4mfromdir24m argument may be relative (e.g., ../src) and is relative to 4mtodir24m (not the current directory). If you add files, simply run 4mlndir24m again. New files will be silently added. Old files will be checked that they have the correct link. Deleting files is a more painful problem; the symlinks will just point into never-never land. 1mOPTIONS0m -silent Normally 4mlndir24m outputs the name of each subdirectory as it descends into it. The 1m-silent 22moption suppresses these status messages. 1m-silent 22mmay be abbreviated to 1m-s22m. -ignorelinks If a file in 4mfromdir24m is a symbolic link, 4mlndir24m will make the same link in 4mtodir24m rather than making a link back to the (sym- bolic link) entry in 4mfromdir.24m The 1m-ignorelinks 22moption changes this behavior. The link created in 4mtodir24m will point back to the corresponding (symbolic link) file in 4mfromdir24m. If the link is to a directory, this is almost certainly the wrong thing. The 1m-ignorelinks 22moption may be abbreviated to 1m-i22m. -withsymdirs If a file in 4mfromdir24m is a symbolic link to a directory and the 1m-withsymdirs 22moption is specified, 4mlndir24m will shadow the direc- tory tree the symbolic link points to, whether or not the 1m-ignorelinks 22mis also specified. The 1m-withsymdirs 22moption may be abbreviated to 1m-d22m. -clean 4mlndir24m will remove dangling symbolic links and empty directories in the shadow tree. The 1m-clean 22moption may be abbreviated to 1m-c22m. -cleanonly 4mlndir24m will do the cleaning phase only, not creating the shadow tree. The 4mtodir24m argument may be provided, and defaults to the current directory when not provided. -withrevinfo 4mlndir24m will normally not shadow any BitKeeper, RCS, SCCS, CVS, CVS.adm and .svn subdirectories, nor any .cvsignore and .gitig- nore files. This option causes these directories and files to be treated as any other, rather than ignored. 1m-withrevinfo 22mmay be shortened to 1m-r22m. -noexceptions By default, 4mlndir24m does not shadow files or directories whose name is .DS_Store, or ._.DS_Store, or starts with '.#', or ends in '~'. This option, which may be abbreviated to 1m-E22m, causes such files to also be shadowed. -except This option adds 4mname24m to an initially empty list of filenames in 4mfromdir24m that are not to be shadowed. 1m-except 22mmay be specified as 1m-e22m. This option may be repeated as many times as necessary. 1mDIAGNOSTICS0m The program displays the name of each subdirectory it enters, followed by a colon. The 1m-silent 22moption suppresses these messages. A warning message is displayed if the symbolic link cannot be created. The usual problem is that a regular file of the same name already exists. If the link already exists but doesn't point to the correct file, the program prints the link name and the location to which it does point. LUIT(1) LUIT(1) 1mNAME0m luit - Locale and ISO 2022 support for Unicode terminals 1mSYNOPSIS0m 1mluit 22m[ 4moptions24m ] [ 1m-- 22m] [ 4mprogram24m [ 4margs24m ] ] 1mDESCRIPTION0m 1mLuit 22mis a filter that can be run between an arbitrary application and a UTF-8 terminal emulator. It will convert application output from the locale's encoding into UTF-8, and convert terminal input from UTF-8 into the locale's encoding. An application may also request switching to a different output encod- ing using ISO 2022 and ISO 6429 escape sequences. Use of this feature is discouraged: multilingual applications should be modified to directly generate UTF-8 instead. 1mLuit 22mis usually invoked transparently by the terminal emulator. For information about running 1mluit 22mfrom the command line, see EXAMPLES below. 1mOPTIONS0m 1m-h 22mDisplay some summary help and quit. 1m-list 22mList the supported charsets and encodings, then quit. 1m-v 22mBe verbose. 1m-c 22mFunction as a simple converter from standard input to standard output. 1m-x 22mExit as soon as the child dies. This may cause 1mluit 22mto loose data at the end of the child's output. 1m-argv0 4m22mname0m Set the child's name (as passed in argv[0]). 1m-encoding 4m22mencoding0m Set up 1mluit 22mto use 4mencoding24m rather than the current locale's encoding. 1m+oss 22mDisable interpretation of single shifts in application output. 1m+ols 22mDisable interpretation of locking shifts in application output. 1m+osl 22mDisable interpretation of character set selection sequences in application output. 1m+ot 22mDisable interpretation of all sequences and pass all sequences in application output to the terminal unchanged. This may lead to interesting results. 1m-k7 22mGenerate seven-bit characters for keyboard input. 1m+kss 22mDisable generation of single-shifts for keyboard input. 1m+kssgr 22mUse GL codes after a single shift for keyboard input. By default, GR codes are generated after a single shift when gener- ating eight-bit keyboard input. 1m-kls 22mGenerate locking shifts (SO/SI) for keyboard input. 1m-gl 4m22mgn24m Set the initial assignment of GL. The argument should be one of 1mg022m, 1mg122m, 1mg2 22mor 1mg322m. The default depends on the locale, but is usually 1mg022m. 1m-gr 4m22mgk24m Set the initial assignment of GR. The default depends on the locale, and is usually 1mg2 22mexcept for EUC locales, where it is 1mg122m. 1m-g0 4m22mcharset0m Set the charset initially selected in G0. The default depends on the locale, but is usually 1mASCII22m. 1m-g1 4m22mcharset0m Set the charset initially selected in G1. The default depends on the locale. 1m-g2 4m22mcharset0m Set the charset initially selected in G2. The default depends on the locale. 1m-g3 4m22mcharset0m Set the charset initially selected in G3. The default depends on the locale. 1m-ilog 4m22mfilename0m Log into 4mfilename24m all the bytes received from the child. 1m-olog 4m22mfilename0m Log into 4mfilename24m all the bytes sent to the terminal emulator. 1m-- 22mEnd of options. 1mEXAMPLES0m The most typical use of 1mluit 22mis to adapt an instance of 1mXTerm 22mto the locale's encoding. Current versions of 1mXTerm 22minvoke 1mluit 22mautomatically when it is needed. If you are using an older release of 1mXTerm22m, or a different terminal emulator, you may invoke 1mluit 22mmanually: $ xterm -u8 -e luit If you are running in a UTF-8 locale but need to access a remote machine that doesn't support UTF-8, 1mluit 22mcan adapt the remote output to your terminal: $ LC_ALL=fr_FR luit ssh legacy-machine 1mLuit 22mis also useful with applications that hard-wire an encoding that is different from the one normally used on the system or want to use legacy escape sequences for multilingual output. In particular, ver- sions of 1mEmacs 22mthat do not speak UTF-8 well can use 1mluit 22mfor multilin- gual output: $ luit -encoding 'ISO 8859-1' emacs -nw And then, in 1mEmacs22m, M-x set-terminal-coding-system RET iso-2022-8bit-ss2 RET 1mFILES0m 1m/usr/X11R6/lib/X11/fonts/encodings/encodings.dir0m The system-wide encodings directory. 1m/usr/X11R6/lib/X11/locale/locale.alias0m The file mapping locales to locale encodings. 1mSECURITY0m On systems with SVR4 (``Unix-98'') ptys (Linux version 2.2 and later, SVR4), 1mluit 22mshould be run as the invoking user. On systems without SVR4 (``Unix-98'') ptys (notably BSD variants), run- ning 1mluit 22mas an ordinary user will leave the tty world-writable; this is a security hole, and luit will generate a warning (but still accept to run). A possible solution is to make 1mluit 22msuid root; 1mluit 22mshould drop privileges sufficiently early to make this safe. However, the startup code has not been exhaustively audited, and the author takes no responsibility for any resulting security issues. 1mLuit 22mwill refuse to run if it is installed setuid and cannot safely drop privileges. 1mBUGS0m None of this complexity should be necessary. Stateless UTF-8 through- out the system is the way to go. Charsets with a non-trivial intermediary byte are not yet supported. Selecting alternate sets of control characters is not supported and will never be. 1mSEE ALSO0m xterm(1), unicode(7), utf-8(7), charsets(7). 4mCharacter24m 4mCode24m 4mStructure0m 4mand24m 4mExtension24m 4mTechniques24m 4m(ISO24m 4m2022,24m 4mECMA-35).24m 4mControl24m 4mFunctions24m 4mfor0m 4mCoded24m 4mCharacter24m 4mSets24m 4m(ISO24m 4m6429,24m 4mECMA-48).0m 1mAUTHOR0m Luit was written by Juliusz Chroboczek for the XFree86 project. MAKEG(1) MAKEG(1) 1mNAME0m makeg - make a debuggable executable 1mSYNOPSIS0m 1mmakeg 22m[ 4mmake-options24m 4m...24m ] [ 4mtargets24m 4m...24m ] 1mDESCRIPTION0m The 4mmakeg24m script runs 4mmake,24m passing it variable settings to create a debuggable target when used with a Makefile generated by 4mimake.24m For example, it arranges for the C compiler to be called with the 1m-g0m option. 1mENVIRONMENT0m 1mMAKE 22mThe 4mmake24m program to use. Default ``make''. 1mGDB 22mSet to a non-null value if using the 4mgdb24m debugger on Solaris 2, which requires additional debugging options to be passed to the compiler. 1mSEE ALSO0m 4mmake24m 4m(1),24m 4mimake24m 4m(1)0m MAKEPSRES(1) MAKEPSRES(1) 1mNAME0m makepsres - Build PostScript resource database file. 1mSYNOPSIS0m 1mmakepsres 22m[ 4moptions24m ] 4mdirectory24m 4m...0m 1mDESCRIPTION0m 1mmakepsres 22mcreates PostScript language resource database files. Resource database files can be used to specify the location of resources that are used by the font selection panel and other Adobe software. For a complete description of the resource location facili- ties in the Display PostScript system, see Appendix A and Appendix B of "Display PostScript Toolkit for X" in 4mProgramming24m 4mthe24m 4mDisplay24m 4mPost-0m 4mScript24m 4mSystem24m 4mwith24m 4mX.0m 1mmakepsres 22mcreates a resource database file named 4mPSres.upr24m that con- tains all the resources in all the 4mdirectory24m path names specified on the command line. If the list of directories contains 1m- , makepsres 22mreads from 4mstdin0m and expects a list of directories separated by space, tab, or new- line. If the list of directories is empty, it is taken to be the current directory. If all specified directories have a common initial prefix, 1mmakepsres0m extracts it as a directory prefix in the new resource database file. 1mmakepsres 22mnormally acts recursively; it looks for resource files in subdirectories of any specified directory. This behavior can be over- ridden with the command line option 1m-nr.0m 1mmakepsres 22muses existing resource database files to assist in identify- ing files. By default, 1mmakepsres 22mcreates a new resource database file containing all of the following that apply: Resource files found in the directories on the command line. Resource files pointed to by the resource database files in the directories on the command line. Resource entries found in the input resource database files. These entries are copied if the files they specify still exist and are located in directories not specified on the command line. If you run 1mmakepsres 22min discard mode (with the 1m-d 22moption), it does not copy resource entries from the input resource database files. In that case, the output file consists only of entries from the directories on the command line. The input resource database files are only used to assist in identifying files. If you run 1mmakepsres 22min keep mode (with the 1m-k 22moption), it includes in the output file all resource entries in the input resource database files, even entries for files that no longer exist or are located in directories specified on the command line. 1mmakepsres 22muses various heuristics to identify files. A file that is of a private resource type or that does not conform to the standard format for a resource file must be specified in one of the following ways: By running 1mmakepsres 22min interactive mode By preloading the file into a resource database file used for input By beginning the file with the following line: %!PS-Adobe-3.0 Resource- 1mOPTIONS0m 1m-o 4m22mfilename0m Writes the output to the specified filename. The construction "1m-o -22m" writes to stdout. If the 1m-o 22moption is not specified, 1mmakepsres 22mcreates a 4mPSres.upr24m file in the current directory and writes the output to that file. 1m-f 4m22mfilename0m Uses information from the specified file to assist in resource typing. The file must be in resource database file format. Multiple 1m-f 22moptions may be specified. The construction "1m-f -22m" uses 4mstdin24m as an input file and may not be used if "1m-22m" is speci- fied as a directory on the command line. 1m-dir 4m22mdirname0m Specifies that 4mdirname24m is a directory. Needed only in rare cases when 4mdirname24m is the same as a command-line option such as 1m-nb.0m 1m-d 22mSpecifies discard mode. The resulting output file consists solely of entries from the directories on the command line. 1m-e 22mMarks the resulting 4mPSres.upr24m file as exclusive. This option makes the resource location library run more quickly since it does not have to look for other resource database files. It becomes necessary, however, to run 1mmakepsres 22mwhenever new resources are added to the directory, even if the resources come with their own resource database file. 1m-i 22mSpecifies interactive mode. In interactive mode, you will be queried for the resource type of any encountered file that 1mmakepsres 22mcannot identify. If 1m-i 22mis not specified, 1mmakepsres0m assumes an unidentifiable file is not a resource file. 1m-k 22mSpecifies keep mode. 1m-nb 22mIf the output file already exists, do not back it up. 1m-nr 22mSpecifies nonrecursive mode. 1mmakepsres 22mnormally acts recur- sively: it looks for resource files in subdirectories of any specified directory. If 1m-nr 22mis used, 1mmakepsres 22mdoes not look in subdirectories for resource files. 1m-p 22mSpecifies no directory prefix. If 1m-p 22mis used, 1mmakepsres 22mdoes not try to find a common directory prefix among the specified directories. 1m-q 22mQuiet mode: ignores unidentifiable files instead of warning about them. 1m-s 22mSpecifies strict mode. If 1m-s 22mis used, 1mmakepsres 22mterminates with an error if it encounters a file it cannot identify. 1mEXAMPLES0m 1mmakepsres .0m Creates a resource database file that contains all the resources in the current directory. 1mmakepsres -i -o local.upr /usr/local/lib/ps/fonts0m Runs 1mmakepsres 22min interactive mode and creates a resource data- base file named 4mlocal.upr,24m which contains all the resources in the directory 4m/usr/local/lib/ps/fonts.0m 1mSEE ALSO0m 4mProgramming24m 4mthe24m 4mDisplay24m 4mPostScript24m 4mSystem24m 4mwith24m 4mX24m (Addison-Wesley Pub- lishing Company, Inc., 1993). 1mAUTHOR0m Adobe Systems Incorporated 1mNOTES0m PostScript and Display PostScript are trademarks of Adobe Systems Incorporated which may be registered in certain jurisdictions. Copyright (c) 1989-1994 Adobe Systems Incorporated. All rights reserved. MAKESTRS(1) MAKESTRS(1) 1mNAME0m makestrs - makes string table C source and header(s) 1mSYNOPSIS0m 1mmakestrs [-f source] [-abioptions ...]0m 1mDESCRIPTION0m The 4mmakestrs24m command creates string table C source files and headers. If 4m-f24m 4msource24m is not specified 4mmakestrs24m will read from 4mstdin.24m The C source file is always written to 4mstdout.24m 4mmakestrs24m creates one or more C header files as specified in the source file. The following options may be specified: 4m-sparcabi,24m 4m-intelabi,24m 4m-functionabi,24m 4m-arrayperabi,24m and 4m-defaultabi.0m 4m-sparcabi24m is used on SPARC platforms conforming to the SPARC Compliance Definition, i.e. SVR4/Solaris. 4m-intelabi24m is used on Intel platforms conforming to the System V Appli- cation Binary Interface, i.e. SVR4. 4m-earlyR6abi24m may be used in addition to 4m-intelabi24m for situations where the vendor wishes to maintain binary compatibility between X11R6 pub- lic-patch 11 (and earlier) and X11R6 public-patch 12 (and later). 4m-functionabi24m generates a functional abi to the string table. This mech- anism imposes a severe performance penalty and it's recommended that you not use it. 4m-arrayperabi24m results in a separate array for each string. This is the default behavior if makestrs was compiled with -DARRAYPERSTR (it almost never is). 4m-defaultabi24m forces the generation of the "normal" string table even if makestrs was compiled with -DARRAYPERSTR. Since makestrs is almost never compiled with -DARRAYPERSTR this is the default behavior if no abioptions are specified. 1mSYNTAX0m The syntax for string-list file is (items in square brackets are optional): #prefix #feature #externref #externdef [] [#ctempl ] #file #table [#htempl] [#table ... #table ...] [#file ...] In words you may have one or more #file directives. Each #file may have one or more #table directives. The #prefix directive determines the string that makestr will prefix to each definition. The #feature directive determines the string that makestr will use for the feature-test macro, e.g. X[TM]STRINGDEFINES. The #externref directive determines the string that makestr will use for the extern clause, typically this will be "extern" but Motif wants it to be "externalref" The #externdef directive determines the string that makestr will use for the declaration, typically this will be the null string (note that makestrs requires a trailing space in this case, i.e. "#externdef "), and Motif will use "externaldef(_xmstrings). The #ctmpl directive determines the name of the file used as a template for the C source file that is generated Each #file directive will result in a corresponding header file by that name containing the appropriate definitions as specified by command line options. A single C source file containing the declara- tions for the definitions in all the headers will be printed to stdout. The #htmpl directive determines the name of the file used as a template for the C header file that is generated. Each #table directive will be processed in accordance with the ABI. On most platforms all tables will be catenated into a single table with the name of the first table for that file. To conform to the Intel ABI separate tables will be generated with the names indicated. The template files specified by the #ctmpl and #htmpl directives are processed by copying line for line from the template file to the appro- priate output file. The line containing the string 4m<<>>24m is not copied to the output file. The appropriate data is then copied to the output file and then the remainder of the tem- plate file is copied to the output file. 1mBUGS0m makestrs is not very forgiving of syntax errors. Sometimes you need a trailing space after # directives, other times they will mess you up. No warning messages are emitted. 1mSEE ALSO0m SPARC Compliance Definition 2.2., SPARC International Inc., 535 Middle- field Road, Suite 210, Menlo Park, CA 94025 System V Application Binary Interface, Third Edition, ISBN 0-13-100439-5 UNIX Press, PTR Prentice Hall, 113 Sylvan Avenue, Engle- wood Cliffs, NJ 07632 System V Application Binary Interface, Third Edition, Intel386 Archi- tecture Processor Supplement ISBN 0-13-104670-5 UNIX Press, PTR Pren- tice Hall, 113 Sylvan Avenue, Englewood Cliffs, NJ 07632 System V Application Binary Interface, Third Edition, SPARC Architec- ture Processor Supplement ISBN 0-13-104696-9 UNIX Press, PTR Prentice Hall, 113 Sylvan Avenue, Englewood Cliffs, NJ 07632 MERGELIB(1) MERGELIB(1) 1mNAME0m mergelib - merge one library into another 1mSYNOPSIS0m 1mmergelib 4m22mto-library24m 4mfrom-library24m [4mobject-filename-prefix24m] 1mDESCRIPTION0m The 4mmergelib24m program merges objects from one library into another. The names of object files in 4mfrom-library24m will be prefixed by 4mobject-file-0m 4mname-prefix24m ("_" by default) to avoid name clashes. The merged library will be left in 4mto-library24m. 1mAUTHOR0m Jim Fulton wrote the 4mmergelib24m program for the X Consortium. Colin Watson wrote this manual page, originally for the Debian Project. MAKEDEPEND(1) MAKEDEPEND(1) 1mNAME0m makedepend - create dependencies in makefiles 1mSYNOPSIS0m 1mmakedepend 22m[ 1m-D4m22mname24m1m=4m22mdef24m ] [ 1m-D4m22mname24m ] [ 1m-I4m22mincludedir24m ] [ 1m-Y4m22mincludedir24m ] [ 1m-a 22m] [ 1m-f4m22mmakefile24m ] [ 1m-include 4m22mfile24m ] [ 1m-o4m22mobjsuffix24m ] [ 1m-p4m22mobjprefix24m ] [ 1m-s4m22mstring24m ] [ 1m-w4m22mwidth24m ] [ 1m-v 22m] [ 1m-m 22m] [ -- 4motheroptions24m -- ] 4msource-0m 4mfile24m ... 1mDESCRIPTION0m The 1mmakedepend 22mprogram reads each 4msourcefile24m in sequence and parses it like a C-preprocessor, processing all 4m#include,24m 4m#define,24m 4m#undef,0m 4m#ifdef,24m 4m#ifndef,24m 4m#endif,24m 4m#if,24m 4m#elif24m and 4m#else24m directives so that it can correctly tell which 4m#include,24m directives would be used in a compila- tion. Any 4m#include,24m directives can reference files having other 4m#include24m directives, and parsing will occur in these files as well. Every file that a 4msourcefile24m includes, directly or indirectly, is what 1mmakedepend 22mcalls a 4mdependency.24m These dependencies are then written to a 4mmakefile24m in such a way that 1mmake(1) 22mwill know which object files must be recompiled when a dependency has changed. By default, 1mmakedepend 22mplaces its output in the file named 4mmakefile24m if it exists, otherwise 4mMakefile.24m An alternate makefile may be specified with the 1m-f 22moption. It first searches the makefile for the line # DO NOT DELETE THIS LINE -- make depend depends on it. or one provided with the 1m-s 22moption, as a delimiter for the dependency output. If it finds it, it will delete everything following this to the end of the makefile and put the output after this line. If it doesn't find it, the program will append the string to the end of the makefile and place the output following that. For each 4msourcefile0m appearing on the command line, 1mmakedepend 22mputs lines in the makefile of the form sourcefile.o: dfile ... Where 4msourcefile.o24m is the name from the command line with its suffix replaced with ``.o'', and 4mdfile24m is a dependency discovered in a 4m#include24m directive while parsing 4msourcefile24m or one of the files it included. 1mEXAMPLE0m Normally, 1mmakedepend 22mwill be used in a makefile target so that typing ``make depend'' will bring the dependencies up to date for the make- file. For example, SRCS = file1.c file2.c ... CFLAGS = -O -DHACK -I../foobar -xyz depend: makedepend -- $(CFLAGS) -- $(SRCS) 1mOPTIONS0m The program will ignore any option that it does not understand so that you may use the same arguments that you would for 1mcc(1).0m 1m-D4m22mname24m1m=4m22mdef24m or 1m-D4m22mname0m Define. This places a definition for 4mname24m in 1mmakedepend's 22msymbol table. Without 4m=def24m the symbol becomes defined as ``1''. 1m-I4m22mincludedir0m Include directory. This option tells 1mmakedepend 22mto prepend 4mincludedir24m to its list of directories to search when it encounters a 4m#include24m directive. By default, 1mmakedepend 22monly searches the standard include directories (usually /usr/include and possibly a compiler-dependent directory). 1m-Y4m22mincludedir0m Replace all of the standard include directories with the single specified include directory; you can omit the 4mincludedir24m to simply prevent searching the standard include directories. 1m-a 22mAppend the dependencies to the end of the file instead of replac- ing them. 1m-f4m22mmakefile0m Filename. This allows you to specify an alternate makefile in which 1mmakedepend 22mcan place its output. Specifying ``-'' as the file name (i.e., 1m-f-22m) sends the output to standard output instead of modifying an existing file. 1m-include 4m22mfile0m Process file as input, and include all the resulting output before processing the regular input file. This has the same affect as if the specified file is an include statement that appears before the very first line of the regular input file. 1m-o4m22mobjsuffix0m Object file suffix. Some systems may have object files whose suf- fix is something other than ``.o''. This option allows you to specify another suffix, such as ``.b'' with 4m-o.b24m or ``:obj'' with 4m-o:obj24m and so forth. 1m-p4m22mobjprefix0m Object file prefix. The prefix is prepended to the name of the object file. This is usually used to designate a different direc- tory for the object file. The default is the empty string. 1m-s4m22mstring0m Starting string delimiter. This option permits you to specify a different string for 1mmakedepend 22mto look for in the makefile. 1m-w4m22mwidth0m Line width. Normally, 1mmakedepend 22mwill ensure that every output line that it writes will be no wider than 78 characters for the sake of readability. This option enables you to change this width. 1m-v 22mVerbose operation. This option causes 1mmakedepend 22mto emit the list of files included by each input file. 1m-m 22mWarn about multiple inclusion. This option causes 1mmakedepend 22mto produce a warning if any input file includes another file more than once. In previous versions of 1mmakedepend 22mthis was the default behavior; the default has been changed to better match the behavior of the C compiler, which does not consider multiple inclusion to be an error. This option is provided for backward compatibility, and to aid in debugging problems related to multi- ple inclusion. 1m-- 4m22moptions24m 1m--0m If 1mmakedepend 22mencounters a double hyphen (--) in the argument list, then any unrecognized argument following it will be silently ignored; a second double hyphen terminates this special treatment. In this way, 1mmakedepend 22mcan be made to safely ignore esoteric com- piler arguments that might normally be found in a CFLAGS 1mmake0m macro (see the 1mEXAMPLE 22msection above). All options that 1mmakede-0m 1mpend 22mrecognizes and appear between the pair of double hyphens are processed normally. 1mALGORITHM0m The approach used in this program enables it to run an order of magni- tude faster than any other ``dependency generator'' I have ever seen. Central to this performance are two assumptions: that all files com- piled by a single makefile will be compiled with roughly the same 4m-I0m and 4m-D24m options; and that most files in a single directory will include largely the same files. Given these assumptions, 1mmakedepend 22mexpects to be called once for each makefile, with all source files that are maintained by the makefile appearing on the command line. It parses each source and include file exactly once, maintaining an internal symbol table for each. Thus, the first file on the command line will take an amount of time proportional to the amount of time that a normal C preprocessor takes. But on sub- sequent files, if it encounters an include file that it has already parsed, it does not parse it again. For example, imagine you are compiling two files, 4mfile1.c24m and 4mfile2.c,0m they each include the header file 4mheader.h,24m and the file 4mheader.h24m in turn includes the files 4mdef1.h24m and 4mdef2.h.24m When you run the command makedepend file1.c file2.c 1mmakedepend 22mwill parse 4mfile1.c24m and consequently, 4mheader.h24m and then 4mdef1.h24m and 4mdef2.h.24m It then decides that the dependencies for this file are file1.o: header.h def1.h def2.h But when the program parses 4mfile2.c24m and discovers that it, too, includes 4mheader.h,24m it does not parse the file, but simply adds 4mheader.h,24m 4mdef1.h24m and 4mdef2.h24m to the list of dependencies for 4mfile2.o.0m 1mSEE ALSO0m cc(1), make(1) 1mBUGS0m 1mmakedepend 22mparses, but does not currently evaluate, the SVR4 #predi- cate(token-list) preprocessor expression; such expressions are simply assumed to be true. This may cause the wrong 4m#include24m directives to be evaluated. Imagine you are parsing two files, say 4mfile1.c24m and 4mfile2.c,24m each includes the file 4mdef.h.24m The list of files that 4mdef.h24m includes might truly be different when 4mdef.h24m is included by 4mfile1.c24m than when it is included by 4mfile2.c.24m But once 1mmakedepend 22marrives at a list of depen- dencies for a file, it is cast in concrete. 1mAUTHOR0m Todd Brunhoff, Tektronix, Inc. and MIT Project Athena MKCFM(1) MKCFM(1) 1mNAME0m mkcfm - create summaries of font metric files in CID font directories 1mSYNOPSIS0m 1mmkcfm 22m[4mCID-font-directory-name24m] 1mDESCRIPTION0m There is usually only one CID font directory on the X font path. It is usually called 4m/usr/X11R6/lib/X11/fonts/CID24m. If you do not specify an argument, 4mmkcfm24m will try to go through the subdirectories of that directory, and create one summary of font metric files for each CIDFont (character descriptions) file and each CMap (Character Maps) file it finds. The summaries of font metric files are put in the existing CFM subdirectory. The CFM subdirectories are created when CID-keyed fonts are installed. If you specify a CID font directory as an argument, 4mmkcfm24m will try to go through the subdirectories of that directory, and create one summary of font metric files for each CIDFont file and each CMap file it finds. 4mmkcfm24m will calculate the summaries of the font metric files stored in AFM subdirectories of the CID font directory. Those summaries are needed by the rasterizer of CID-keyed fonts to speed up the response to X font calls. If those files do not exist, CID rasterizer will have to go through usually large font metric files, and calculate the summaries itself each time the font is called. You will notice a substantial wait on a call to a large CID-keyed font. 1mFILES0m 1m.afm files 22mEach CID-keyed font file is supposed to have a font met- ric file (.afm file). 4mmkcfm24m creates summary files (.cfm files) of those font metric files. 4mmkcfm24m should be run whenever a change is made to the files stored in the subdirectories of the CID font directory. For example, it should be run when new CID fonts are installed. 1m.cfm files 22mSummaries of font metric (.afm) files created by 4mmkcfm24m. 1mSEE ALSO0m The rasterizer for CID-keyed fonts in the directory 4mxc/lib/font/Type124m. MKDIRHIER(1) MKDIRHIER(1) 1mNAME0m mkdirhier - makes a directory hierarchy 1mSYNOPSIS0m 1mmkdirhier 22mdirectory ... 1mDESCRIPTION0m The 4mmkdirhier24m command creates the specified directories. Unlike 4mmkdir0m if any of the parent directories of the specified directory do not exist, it creates them as well. 1mSEE ALSO0m mkdir(1) MKFONTDIR(1) MKFONTDIR(1) 1mNAME0m mkfontdir - create an index of X font files in a directory 1mSYNOPSIS0m 1mmkfontdir 22m[1m-n22m] [1m-x 4m22msuffix24m] [1m-r22m] [1m-p 4m22mprefix24m] [1m-e 4m22mencoding-directory-0m 4mname24m] ... [1m--22m] [4mdirectory-name24m ... ] 1mDESCRIPTION0m For each directory argument, 4mmkfontdir24m reads all of the font files in the directory searching for properties named "FONT", or (failing that) the name of the file stripped of its suffix. These are converted to lower case and used as font names, and, along with the name of the font file, are written out to the file "fonts.dir" in the directory. The X server and font server use "fonts.dir" to find font files. The kinds of font files read by 4mmkfontdir24m depend on configuration parameters, but typically include PCF (suffix ".pcf"), SNF (suffix ".snf") and BDF (suffix ".bdf"). If a font exists in multiple formats, 4mmkfontdir24m will first choose PCF, then SNF and finally BDF. The first line of fonts.dir gives the number of fonts in the file. The remaining lines list the fonts themselves, one per line, in two fields. First is the name of the font file, followed by a space and the name of the font. 1mSCALABLE FONTS0m Because scalable font files do not usually include the X font name, the file "fonts.scale" can be used to name the scalable fonts in the direc- tory. The fonts listed in it are copied to fonts.dir by 4mmkfontdir24m. "fonts.scale" has the same format as the "fonts.dir" file. 1mFONT NAME ALIASES0m The file "fonts.alias", which can be put in any directory of the font- path, is used to map new names to existing fonts, and should be edited by hand. The format is two white-space separated columns, the first containing aliases and the second containing font-name patterns. Lines beginning with "!" are comment lines and are ignored. If neither the alias nor the value specifies the size fields of the font name, this is a scalable alias. A font name of any size that matches this alias will be mapped to the same size of the font that the alias resolves to. When a font alias is used, the name it references is searched for in the normal manner, looking through each font directory in turn. This means that the aliases need not mention fonts in the same directory as the alias file. To embed white space in either name, simply enclose it in double-quote marks; to embed double-quote marks (or any other character), precede them with back-slash: "magic-alias with spaces" "\"font name\" with quotes" regular-alias fixed If the string "FILE_NAMES_ALIASES" stands alone on a line, each file- name in the directory (stripped of its suffix) will be used as an alias for that font. 1mENCODING FILES0m The option 1m-e 22mcan be used to specify a directory with encoding files. Every such directory is scanned for encoding files, the list of which is then written to an "encodings.dir" file in every font directory. The "encodings.dir" file is used by the server to find encoding infor- mation. The "encodings.dir" file has the same format as "fonts.dir". It maps encoding names (strings of the form 1mCHARSET_REGISTRY4m22m-24m1mCHARSET_ENCODING 22m) to encoding file names. 1mOPTIONS0m The following options are supported: 1m-e 22mSpecify a directory containing encoding files. The 1m-e 22moption may be specified multiple times, and all the specified directo- ries will be read. The order of the entries is significant, as encodings found in earlier directories override those in later ones; encoding files in the same directory are discriminated by preferring compressed versions. 1m-n 22mdo not scan for fonts, do not write font directory files. This option is useful when generating encoding directories only. 1m-p 22mSpecify a prefix that is prepended to the encoding file path names when they are written to the "encodings.dir" file. The prefix is prepended as-is. If a `/' is required between the prefix and the path names, it must be supplied explicitly as part of the prefix. 1m-r 22mKeep non-absolute encoding directories in their relative form when writing the "encodings.dir" file. The default is to con- vert relative encoding directories to absolute directories by prepending the current directory. The positioning of this options is significant, as this option only applies to subse- quent 1m-e 22moptions. 1m-x 4m22msuffix0m Ignore fonts files of type 4msuffix24m. 1m-- 22mEnd options. 1mFILES0m 1mfonts.dir 22mList of fonts in the directory and the files they are stored in. Created by 4mmkfontdir24m. Read by the X server and font server each time the font path is set (see xset(1)). 1mfonts.scale 22mList of scalable fonts in the directory. Contents are copied to fonts.dir by 4mmkfontdir24m. 1mfonts.alias 22mList of font name aliases. Read by the X server and font server each time the font path is set (see xset(1)). 1mencodings.dir 22mList of known encodings and the files they are stored in. Created by 4mmkfontdir24m. Read by the X server and font server each time a font with an unknown charset is opened. 1mSEE ALSO0m X(7), Xserver(1), xfs(1), xset(1) MKFONTSCALE(1) MKFONTSCALE(1) 1mNAME0m mkfontscale - create an index of scalable font files for X 1mSYNOPSIS0m 1mmkfontscale 22m[ 1m-b 22m] [ 1m-s 22m] [ 1m-o 4m22mfilename24m ] [ 1m-x 4m22msuffix24m ] [ 1m-a 4m22mencoding24m ] ... [ 1m-f 4m22mfuzz24m ] [ 1m-l 22m] [ 1m-e 4m22mdirectory24m ] [ 1m-p 4m22mprefix24m ] [ 1m-r 4m22mprefix24m ] [ 1m-n 4m22mprefix24m ] [ 1m-- 22m] [ 4mdirectory24m ] ... 1mDESCRIPTION0m For each directory argument, 4mmkfontscale24m reads all of the scalable font files in the directory. For every font file found, an X11 font name (XLFD) is generated, and is written together with the file name to a file 1mfonts.scale 22min the directory. The resulting 1mfonts.scale 22mfile should be checked and possibly manually edited before being used as input for the 1mmkfontdir22m(1) program. 1mOPTIONS0m 1m-b 22mread bitmap fonts. By default, bitmap fonts are ignored. 1m-s 22mignore scalable fonts. By default, scalable fonts are read. If 1m-b 22mis set, this flag has the side effect of enabling the reading of 1mfonts.scale 22mfiles. 1m-o 4m22mfilename24m send program output to 4mfile-0m 4mname24m; default is 1mfonts.scale 22mif bitmap fonts are not being read, and 1mfonts.dir 22mif they are. If 4mfilename24m is relative, it is cre- ated in the directory being processed. If it is the special value 1m-22m, output is written to standard output. 1m-x 4m22msuffix0m exclude all files with the specified 4msuffix0m 1m-a 4m22mencoding0m add 4mencoding24m to the list of encodings searched for. 1m-f 4m22mfuzz0m set the fraction of characters that may be missing in large encodings to 4mfuzz24m percent. Defaults to 2%. 1m-l 22mWrite 1mfonts.dir 22mfiles suitable for implementations that cannot reencode legacy fonts (BDF and PCF). By default, it is assumed that the implementation can reencode Unicode-encoded legacy fonts. 1m-e 22mspecifies a directory with encoding files. Every such directory is scanned for encoding files, the list of which is then written to an "encodings.dir" file in every font directory. 1m-p 22mSpecifies a prefix that is prepended to the encoding file path names when they are written to the "encodings.dir" file. The prefix is prepended litterally: if a `/' is required between the prefix and the path names, it must be supplied explicitly as part of the prefix. 1m-r 22mKeep non-absolute encoding directories in their relative form when writing the "encodings.dir" file. The default is to con- vert relative encoding directories to absolute directories by prepending the current directory. The positioning of this options is significant, as this option only applies to subse- quent 1m-n 22mdo not scan for fonts, do not write font directory files. This option is useful when generating encoding directories only. 1m-- 22mend of options. 1mSEE ALSO0m X(7), Xserver(1), mkfontdir(1), ttmkfdir(1), xfs(1), xset(1) 1mNOTES0m The format of the 1mfonts.scale22m, 1mfonts.dir 22mand 1mencodings.dir 22mfiles is documented in the mkfontdir(1) manual page. 1mMkfontscale 22mwill overwrite any 1mfonts.scale 22mfile even if it has been hand-edited. 1mmkfontscale -b -s -l 22mis equivalent to 1mmkfontdir22m. 1mAUTHOR0m 1mMkfontscale 22mwas written by Juliusz Chroboczek for the XFree86 project. The functionality of this program was inspired by the 1mttmkfdir 22mutility by Joerg Pommnitz. mkhtmlindex(1) mkhtmlindex(1) 1mNAME0m mkhtmlindex - generate index files for HTML man pages 1mSYNOPSIS0m 1mmkhtmlindex 4m22mhtmlmandir0m 1mDESCRIPTION0m The 4mmkhtmlindex24m program generates index files for a directory of HTML- formatted manual pages. It searches for files whose names are of the form "name.1.html", and outputs index files "manindex1.html", "manin- dex.2.html", and so on, one for each manual volume. Empty index files will be removed. Names and descriptions are found by scanning the first 4m

24m section of each page. 1mOPTIONS0m 4mmkhtmlindex24m takes only one argument: the directory to process. 1mNOTES0m This utility is currently rather specific to XFree86. In particular, the format of the index files it outputs is not configurable, nor is the HTML formatting it expects of manual pages. 1mAUTHOR0m David Dawes wrote the 4mmkhtmlindex24m program for XFree86. Colin Watson wrote this manual page, originally for the Debian Project. OCLOCK(1) OCLOCK(1) 1mNAME0m oclock - round X clock 1mSYNOPSIS0m 1moclock 22m[-option ... ] 1mDESCRIPTION0m 4mOclock24m simply displays the current time on an analog display. 1mOPTIONS0m 1m-fg 4m22mcolor0m choose a different color for the both hands and the jewel of the clock 1m-bg 4m22mcolor0m choose a different color for the background. 1m-jewel 4m22mcolor0m choose a different color for the jewel on the clock. 1m-minute 4m22mcolor0m choose a different color for the minute hand of the clock. 1m-hour 4m22mcolor0m choose a different color for the hour hand of the clock. 1m-backing 4m22m{24m 4mWhenMapped24m 4mAlways24m 4mNotUseful24m 4m}0m selects an appropriate level of backing store. 1m-geometry 4m22mgeometry0m define the initial window geometry; see 4mX(7)24m. 1m-display 4m22mdisplay0m specify the display to use; see 4mX(7)24m. 1m-bd 4m22mcolor0m choose a different color for the window border. 1m-bw 4m22mwidth0m choose a different width for the window border. As the Clock widget changes its border around quite a bit, this is most use- fully set to zero. 1m-shape 22mcauses the clock to use the Shape extension to create an oval window. This is the default unless the shapeWindow resource is set to false. 1m-noshape0m causes the clock to not reshape itself and ancestors to exactly fit the outline of the clock. 1m-transparent0m causes the clock to consist only of the jewel, the hands, and the border. 1mCOLORS0m If you would like your clock to be viewable in color, include the fol- lowing in the #ifdef COLOR section you read with xrdb: *customization: -color This will cause oclock to pick up the colors in the app-defaults color customization file: /usr/X11R6/lib/X11/app-defaults/Clock-color. Below are the default colors: Clock*Background: grey Clock*BorderColor: light blue Clock*hour: yellow Clock*jewel: yellow Clock*minute: yellow 1mSEE ALSO0m X(7), X Toolkit documentation 1mAUTHOR0m Keith Packard, MIT X Consortium PROXYMNGR(1) PROXYMNGR(1) 1mNAME0m proxymngr - proxy manager service 1mSYNOPSIS0m 1mproxymngr 22m[1m-config 4m22mfilename24m] [1m-timeout 4m22mseconds24m] [1m-retries 4m22m#24m] [1m-verbose22m] 1mDESCRIPTION0m The proxy manager (proxymngr) is responsible for resolving requests from xfindproxy (and other similar clients), starting new proxies when appropriate, and keeping track of all of the available proxy services. The proxy manager strives to reuse existing proxies whenever possible. There are two types of proxies that the proxy manager deals with, 4mman-0m 4maged24m and 4munmanaged24m proxies. A 4mmanaged24m proxy is a proxy that is started ``on demand'' by the proxy manager. An 4munmanaged24m proxy, on the other hand, is started either at system boot time, or manually by a system administrator. The proxy manager is made aware of its existence, but no attempt is made by the proxy manager to start unmanaged proxies. The command line options that can be specified to 1mproxymngr 22mare: 1m-config 22mUsed to override the default proxymngr config file. See below for more details about the config file. 1m-timeout0m Sets the number of seconds between attempts made by the proxy manager to find an unmanaged proxy. The default is 10. 1m-retries0m Sets the maximum number of retries made by the proxy manager to find an an unmanaged proxy. The default is 3. 1m-verbose0m Causes various debugging and tracing records to be displayed as requests are received and proxies are started. 1mProxy Manager Config File0m The proxy manager maintains a local configuration file describing the proxy services available. This configuration file is installed in 4m/usr/X11R6/lib/X11/proxymngr/pmconfig24m during the installation of prox- ymngr. The location of the configuration file can be overwritten using the 1m-config 22mcommand line option. Aside from lines starting with an exclamation point for comments, each line of the configuration file describes either an unmanaged or managed proxy service. For unmanaged proxies, the format is: unmanaged service-name is the name of the unmanaged proxy service, and must not contain any spaces, for example ``XFWP''. service-name is case insen- sitive. proxy-address is the network address of the unmanaged proxy. The for- mat of the address is specific to the service-name. For example, for the ``XFWP'' service, the proxy-address might be ``fire- wall.x.org:100''. If there is more than one entry in the config file with the same unman- aged service-name, the proxy manager will try to use the proxies in the order presented in the config file. For managed proxies, the format is: managed service-name is the name of the managed proxy service, and must not contain any spaces, for example ``LBX''. service-name is case insensi- tive. command-to-start-proxy is the command executed by the proxy manager to start a new instance of the proxy. If command-to-start-proxy contains spaces, the complete command should be surrounded by single quotes. If desired, command-to-start-proxy can be used to start a proxy on a remote machine. The specifics of the remote execution method used to do this is not specified here. 1mEXAMPLE0m Here is a sample configuration file: ! proxy manager config file ! ! Each line has the format: ! managed ! or ! unmanaged ! lbx managed /usr/X11R6/bin/lbxproxy ! ! substitute site-specific info xfwp unmanaged firewall:4444 1mPROXY MANAGER DETAILS0m When the proxy manager gets a request from xfindproxy (or another simi- lar client), its course of action will depend on the service-name in question. For a managed proxy service, the proxy manager will find out if any of the already running proxies for this service can handle a new request. If not, the proxy manager will attempt to start up a new instance of the proxy (using the command-to-start-proxy found in the config file). If that fails, an error will be returned to the caller. For an unmanaged proxy service, the proxy manager will look in the con- fig file to find all unmanaged proxies for this service. If there is more than one entry in the config file with the same unmanaged service- name, the proxy manager will try to use the proxies in the order pre- sented in the config file. If none of the unmanaged proxies can sat- isfy the request, the proxy manager will timeout for a configurable amount of time (specified by 1m-timeout 22mor default of 10) and reattempt to find an unmanaged proxy willing to satisfy the request. The number of retries can be specified by the 1m-retries 22margument, or a default of 3 will be used. If the retries fail, the proxy manager has no choice but to return an error to the caller (since the proxy manager can not start unmanaged proxy services). 1mBUGS0m proxy manager listen port should be configurable. 1m-timeout 22mand 1m-retries 22mis not implemented in proxymngr. proxymngr does not utilize the ``options'' and ``host'' fields in the proxy management protocol GetProxyAddr request. 1mSEE ALSO0m xfindproxy (1), xfwp (1), Proxy Management Protocol spec V1.0 1mAUTHOR0m Ralph Mor, X Consortium PSWRAP(1) PSWRAP(1) 1mNAME0m pswrap - creates C procedures from segments of PostScript language code 1mSYNOPSIS0m 1mpswrap 22m[ 1m-apr 22m] [ 1m-o 4m22moutputCfile24m ] [ 1m-h 4m22moutputHfile24m ] [ 1m-s 4m22mmaxstring24m ] 4minputfile0m 1mDESCRIPTION0m 1mpswrap 22mreads input from 4minputfile24m and creates C-callable procedures, known as wraps, that send PostScript language code to the PostScript interpreter. 4minputfile24m contains segments of PostScript language code wrapped with a C-like procedure syntax. Wraps are the most efficient way for an application to communicate with the PostScript interpreter. For complete documentation of 1mpswrap 22mand the language it accepts, see "pswrap Reference Manual" in 4mProgramming0m 4mthe24m 4mDisplay24m 4mPostScript24m 4mSystem24m 4mwith24m 4mX.0m 1mOPTIONS0m 4minputfile0m A file that contains one or more wrap definitions. 1mpswrap0m transforms the definitions in 4minputfile24m into C procedures. If no input file is specified, the standard input (which can be redirected from a file or pipe) is used. The input file can include text other than wrap definitions. 1mpswrap 22mconverts wrap definitions to C procedures and passes the other text through unchanged. Therefore, it is possible to intersperse C-language source code with wrap definitions in the input file. 4mNote:24m Although C code is allowed in a pswrap input file, it is not allowed within a wrap body. In particular, no CPP macros (for example, #define) are allowed inside a wrap. 1m-a 22mGenerates ANSI C procedure prototypes for procedure definitions in 4moutputCfile24m and, optionally, 4moutputHfile.24m The 1m-a 22moption allows compilers that recognize the ANSI C standard to do more complete type checking of parameters. The 1m-a 22moption also causes 1mpswrap 22mto generate const declarations. 4mNote:24m ANSI C procedure prototype syntax is not recognized by most non-ANSI C compilers, including many compilers based on the Portable C Compiler. Use the 1m-a 22moption only in conjunction with a compiler that conforms to the ANSI C Standard. 1m-f 4m22mspecialHFile0m Adds a #include to the generated source file for a special header file. 1m-h 4m22moutputHFile0m Generates a header file that contains extern declarations for non-static wraps. This file can be used in #include statements in modules that use wraps. If the 1m-a 22moption is specified, the declarations in the header file are ANSI C procedure prototypes. If the 1m-h 22moption is omitted, a header file is not produced. 1m-o 4m22moutputCFile0m Specifies the file to which the generated wraps and passed- through text are written. If omitted, the standard output is used. If the 1m-a 22moption is also specified, the procedure definitions generated by 1mpswrap 22mare in ANSI C procedure prototype syntax. 1m-p 22mSpecifies that strings passed by wraps are padded so that each data object begins on a long-word (4-byte) boundary. This option allows wraps to run on architectures that restrict data alignment to 4-byte boundaries and improves performance on some other architectures. 1m-r 22mGenerates reentrant code for wraps shared by more than one process (as in shared libraries). Reentrant code can be called recursively or by more than one thread. The 1m-r 22moption causes 1mpswrap 22mto generate extra code, so use it only when necessary. 1m-s 4m22mmaxstring0m Sets the maximum allowable length of a PostScript string object or hexadecimal string object in the wrap body input. A syntax error is reported if a string is not terminated with ) or > within 4mmaxstring24m characters. 4mmaxstring24m cannot be set lower than 80; the default is 200. 1mSEE ALSO0m 4mProgramming24m 4mthe24m 4mDisplay24m 4mPostScript24m 4mSystem24m 4mwith24m 4mX24m (Addison-Wesley Publishing Company, Inc., 1993). 1mAUTHOR0m Adobe Systems Incorporated 1mNOTES0m PostScript and Display PostScript are trademarks of Adobe Systems Incorporated which may be registered in certain jurisdictions. Copyright (c) 1988-1994 Adobe Systems Incorporated. All rights reserved. RESIZE(1) RESIZE(1) 1mNAME0m resize - set TERMCAP and terminal settings to current xterm window size 1mSYNOPSIS0m 1mresize 22m[ 1m-u 22m| 1m-c 22m] [ 1m-s 22m[ 4mrow24m 4mcol24m ] ] 1mDESCRIPTION0m 4mResize24m prints a shell command for setting the TERM and TERMCAP environment variables to indicate the current size of 4mxterm24m window from which the command is run. For this output to take effect, 4mresize24m must either be evaluated as part of the command line (usually done with a shell alias or function) or else redirected to a file which can then be read in. From the C shell (usually known as 4m/bin/csh24m), the following alias could be defined in the user's 4m.cshrc24m: % alias rs 'set noglob; eval `resize`' After resizing the window, the user would type: % rs Users of versions of the Bourne shell (usually known as 4m/bin/sh24m) that don't have command functions will need to send the output to a temporary file and the read it back in with the ``.'' command: $ resize > /tmp/out $ . /tmp/out 1mOPTIONS0m The following options may be used with 4mresize24m: 1m-u 22mThis option indicates that Bourne shell commands should be generated even if the user's current shell isn't 4m/bin/sh24m. 1m-c 22mThis option indicates that C shell commands should be generated even if the user's current shell isn't 4m/bin/csh24m. 1m-s 22m[4mrows24m 4mcolumns24m] This option indicates that Sun console escape sequences will be used instead of the VT100-style 4mxterm24m escape codes. If 4mrows0m and 4mcolumns24m are given, 4mresize24m will ask the 4mxterm24m to resize itself. However, the window manager may choose to disallow the change. Note that the Sun console escape sequences are recognized by XFree86 4mxterm24m and by 4mdtterm24m. The 4mresize24m program may be installed as 4msunsize24m, which causes makes it assume the 1m-s0m option. The 4mrows24m and 4mcolumns24m arguments must appear last; though they are normally associated with the 1m-s 22moption, they are parsed separately. 1mFILES0m /etc/termcap for the base termcap entry to modify. ~/.cshrc user's alias for the command. 1mSEE ALSO0m csh(1), tset(1), xterm(1) 1mAUTHORS0m Mark Vandevoorde (MIT-Athena), Edward Moy (Berkeley) Copyright (c) 1984, 1985 by X Consortium See 4mX24m(7) for a complete copyright notice. REVPATH(1) REVPATH(1) 1mNAME0m revpath - generate a relative path that can be used to undo a change- directory 1mSYNOPSIS0m 1mrevpath 4m22mpath0m 1mDESCRIPTION0m The 4mrevpath24m program prints out a relative path that is the ``reverse'' or ``inverse'' of 4mpath24m. Start with two directories 4mtop24m and 4mbottom24m, with the latter below the former, and 4mpath24m is the location of 4mbottom0m relative to 4mtop24m. The output of 4mrevpath24m is the location of 4mtop24m relative to 4mbottom24m. The resulting path contains a trailing `/' character when the result is non-trivial. If 4mpath24m is equivalent to `.', the resulting output is empty. If 4mpath24m is invalid in some way (e.g., doesn't represent the path to a subdirectory) the output is also empty and no error messages are ever generated. 1mDIAGNOSTICS0m There are no diagnostics. Error conditions are silently ignored, and the exit status is always 0. 1mBUGS0m It isn't possible to reverse arbitrary relative paths. If any path element between the two end points of 4mpath24m is a symbolic link, the results will probably be incorrect. RSTART(1) RSTART(1) 1mNAME0m rstart - a sample implementation of a Remote Start client 1mSYNOPSIS0m 1mrstart 22m[-c 4mcontext24m] [-g] [-l 4musername24m] [-v] 4mhostname24m 4mcommand24m 4margs24m 4m...0m 1mDESCRIPTION0m 4mRstart24m is a simple implementation of a Remote Start client as defined in "A Flexible Remote Execution Protocol Based on 1mrsh22m". It uses 4mrsh24m as its underlying remote execution mechanism. 1mOPTIONS0m 1m-c 4m22mcontext0m This option specifies the 4mcontext24m in which the command is to be run. A 4mcontext24m specifies a general environment the program is to be run in. The details of this environment are host- specific; the intent is that the client need not know how the environment must be configured. If omitted, the context defaults to 1mX22m. This should be suitable for running X programs from the host's "usual" X installation. 1m-g 22mInterprets 4mcommand24m as a 4mgeneric24m 4mcommand24m, as discussed in the protocol document. This is intended to allow common applications to be invoked without knowing what they are called on the remote system. Currently, the only generic commands defined are 1mTerminal22m, 1mLoadMonitor22m, 1mListContexts22m, and 1mListGenericCommands22m. 1m-l 4m22musername0m This option is passed to the underlying 4mrsh24m; it requests that the command be run as the specified user. 1m-v 22mThis option requests that 4mrstart24m be verbose in its operation. Without this option, 4mrstart24m discards output from the remote's 4mrstart24m helper, and directs the 4mrstart24m helper to detach the program from the 4mrsh24m connection used to start it. With this option, responses from the helper are displayed and the resulting program is not detached from the connection. 1mNOTES0m This is a trivial implementation. Far more sophisticated implementations are possible and should be developed. Error handling is nonexistent. Without 1m-v22m, error reports from the remote are discarded silently. With 1m-v22m, error reports are displayed. The $DISPLAY environment variable is passed. If it starts with a colon, the local hostname is prepended. The local domain name should be appended to unqualified host names, but isn't. The $SESSION_MANAGER environment variable should be passed, but isn't. X11 authority information is passed for the current display. ICE authority information should be passed, but isn't. It isn't completely clear how 4mrstart24m should select what ICE authority information to pass. Even without 1m-v22m, the sample 4mrstart24m helper will leave a shell waiting for the program to complete. This causes no real harm and consumes relatively few resources, but if it is undesirable it can be avoided by explicitly specifying the "exec" command to the shell, eg rstart somehost exec xterm This is obviously dependent on the command interpreter being used on the remote system; the example given will work for the Bourne and C shells. 1mSEE ALSO0m rstartd(1), rsh(1), A Flexible Remote Execution Protocol Based on 1mrsh0m 1mAUTHOR0m Jordan Brown, Quarterdeck Office Systems RSTARTD(1) RSTARTD(1) 1mNAME0m rstartd - a sample implementation of a Remote Start rsh helper 1mSYNOPSIS0m 1mrstartd0m 1mrstartd.real 22m[-c 4mconfigfilename24m] 1mDESCRIPTION0m 4mRstartd24m is an implementation of a Remote Start "helper" as defined in "A Flexible Remote Execution Protocol Based on 1mrsh22m". This document describes the peculiarities of 4mrstartd24m and how it is configured. 1mOPTIONS0m 1m-c 4m22mconfigfilename0m This option specifies the "global" configuration file that 4mrstartd24m is to read. Normally, 4mrstartd24m is a shell script that invokes 4mrstartd.real24m with the 1m-c 22mswitch, allowing local configuration of the location of the configuration file. If 4mrstartd.real24m is started without the -c option, it reads 4m/usr/X11R6/lib/X11/rstart/config24m. 1mINSTALLATION0m It is critical to successful interoperation of the Remote Start protocol that 4mrstartd24m be installed in a directory which is in the "default" search path, so that default rsh requests and the ilk will be able to find it. 1mCONFIGURATION AND OPERATION0m 4mRstartd24m is by design highly configurable. One would like things like configuration file locations to be fixed, so that users and administrators can find them without searching, but reality is that no two vendors will agree on where things should go, and nobody thinks the original location is "right". Thus, 4mrstartd24m allows one to relocate 1mall0m of its files and directories. 4mRstartd24m has a hierarchy of configuration files which are executed in order when a request is made. They are: global config per-user ("local") config global per-context config per-user ("local") per-context config config from request As you might guess from the presence of "config from request", all of the config files are in the format of an 4mrstart24m request. 4mRstartd0m defines a few additional keywords with the INTERNAL- prefix for specifying its configuration. 4mRstartd24m starts by reading and executing the global config file. This file will normally specify the locations of the other configuration files and any systemwide defaults. 4mRstartd24m will then read the user's local config file, default name $HOME/.rstart. 4mRstartd24m will then start interpreting the request. Presumably one of the first lines in the request will be a CONTEXT line. The context name is converted to lower case. 4mRstartd24m will read the global config file for that context, default name /usr/X11R6/lib/X11/rstart/contexts/, if any. It will then read the user's config file for that context, default name $HOME/.rstart.contexts/, if any. (If neither of these exists, 4mrstartd24m aborts with a Failure message.) 4mRstartd24m will finish interpreting the request, and execute the program specified. This allows the system administrator and the user a large degree of control over the operation of 4mrstartd24m. The administrator has final say, because the global config file doesn't need to specify a per-user config file. If it does, however, the user can override anything from the global file, and can even completely replace the global context config files. The config files have a somewhat more flexible format than requests do; they are allowed to contain blank lines and lines beginning with "#" are comments and ignored. (#s in the middle of lines are data, not comment markers.) Any commands run are provided a few useful pieces of information in environment variables. The exact names are configurable, but the supplied defaults are: $RSTART_CONTEXT the name of the context $RSTART_GLOBAL_CONTEXTS the global contexts directory $RSTART_LOCAL_CONTEXTS the local contexts directory $RSTART_GLOBAL_COMMANDS the global generic commands directory $RSTART_LOCAL_COMMANDS the local generic commands directory $RSTART_{GLOBAL,LOCAL}_CONTEXTS should contain one special file, @List, which contains a list of the contexts in that directory in the format specified for ListContexts. The supplied version of ListContexts will cat both the global and local copies of @List. Generic commands are searched for in several places: (defaults) per-user per-context directory ($HOME/.rstart.commands/) global per-context directory (/usr/X11R6/lib/X11/rstart/commands/) per-user all-contexts directory ($HOME/.rstart.commands) global all-contexts directory (/usr/X11R6/lib/X11/rstart/commands) (Yes, this means you can't have an all-contexts generic command with the same name as a context. It didn't seem like a big deal.) Each of these directories should have a file called @List that gives the names and descriptions of the commands in that directory in the format specified for ListGenericCommands. 1mCONFIGURATION KEYWORDS0m There are several "special" 4mrstart24m keywords defined for 4mrstartd0m configuration. Unless otherwise specified, there are no defaults; related features are disabled in this case. 1mINTERNAL-REGISTRIES name ...0m Gives a space-separated list of "MISC" registries that this system understands. (Registries other than this are accepted but generate a Warning.) 1mINTERNAL-LOCAL-DEFAULT relative_filename0m Gives the name ($HOME relative) of the per-user config file. 1mINTERNAL-GLOBAL-CONTEXTS absolute_directory_name0m Gives the name of the system-wide contexts directory. 1mINTERNAL-LOCAL-CONTEXTS relative_directory_name0m Gives the name ($HOME relative) of the per-user contexts directory. 1mINTERNAL-GLOBAL-COMMANDS absolute_directory_name0m Gives the name of the system-wide generic commands directory. 1mINTERNAL-LOCAL-COMMANDS relative_directory_name0m Gives the name ($HOME relative) of the per-user generic commands directory. 1mINTERNAL-VARIABLE-PREFIX prefix0m Gives the prefix for the configuration environment variables 4mrstartd24m passes to its kids. 1mINTERNAL-AUTH-PROGRAM authscheme program argv[0] argv[1] ...0m Specifies the program to run to set up authentication for the specified authentication scheme. "program argv[0] ..." gives the program to run and its arguments, in the same form as the EXEC keyword. 1mINTERNAL-AUTH-INPUT authscheme0m Specifies the data to be given to the authorization program as its standard input. Each argument is passed as a single line. $n, where n is a number, is replaced by the n'th argument to the "AUTH authscheme arg1 arg2 ..." line. 1mINTERNAL-PRINT arbitrary text0m Prints its arguments as a Debug message. Mostly for 4mrstartd0m debugging, but could be used to debug config files. 1mNOTES0m When using the C shell, or any other shell which runs a script every time the shell is started, the script may get run several times. In the worst case, the script may get run 1mthree 22mtimes: By rsh, to run 4mrstartd0m By 4mrstartd24m, to run the specified command By the command, eg 4mxterm0m 4mrstartd24m currently limits lines, both from config files and requests, to BUFSIZ bytes. DETACH is implemented by redirecting file descriptors 0,1, and 2 to /dev/null and forking before executing the program. CMD is implemented by invoking $SHELL (default /bin/sh) with "-c" and the specified command as arguments. POSIX-UMASK is implemented in the obvious way. The authorization programs are run in the same context as the target program - same environment variables, path, etc. Long term this might be a problem. In the X context, GENERIC-CMD Terminal runs xterm. In the OpenWindows context, GENERIC-CMD Terminal runs cmdtool. In the X context, GENERIC-CMD LoadMonitor runs xload. In the OpenWindows context, GENERIC-CMD LoadMonitor runs perfmeter. 1mGENERIC-CMD ListContexts 22mlists the contents of @List in both the system-wide and per-user contexts directories. It is available in all contexts. 1mGENERIC-CMD ListGenericCommands 22mlists the contents of @List in the system-wide and per-user commands directories, including the per- context subdirectories for the current context. It is available in all contexts. 1mCONTEXT None 22mis not implemented. 1mCONTEXT Default 22mis really dull. For installation ease, the "contexts" directory in the distribution contains a file "@Aliases" which lists a context name and aliases for that context. This file is used to make symlinks in the contexts and commands directories. All 1mMISC 22mvalues are passed unmodified as environment variables. One can mistreat 4mrstartd24m in any number of ways, resulting in anything from stupid behavior to core dumps. Other than by explicitly running programs I don't think it can write or delete any files, but there's no guarantee of that. The important thing is that (a) it probably won't do anything REALLY stupid and (b) it runs with the user's permissions, so it can't do anything catastrophic. @List files need not be complete; contexts or commands which are dull or which need not or should not be advertised need not be listed. In particular, per-user @List files should not list things which are in the system-wide @List files. In the future, perhaps ListContexts and ListGenericCommands will automatically suppress lines from the system- wide files when there are per-user replacements for those lines. Error handling is OK to weak. In particular, no attempt is made to properly report errors on the exec itself. (Perversely, exec errors could be reliably reported when detaching, but not when passing the stdin/out socket to the app.) If compiled with -DODT1_DISPLAY_HACK, 4mrstartd24m will work around a bug in SCO ODT version 1. (1.1?) (The bug is that the X clients are all compiled with a bad library that doesn't know how to look host names up using DNS. The fix is to look up a host name in $DISPLAY and substitute an IP address.) This is a trivial example of an incompatibility that 4mrstart24m can hide. 1mSEE ALSO0m rstart(1), rsh(1), A Flexible Remote Execution Protocol Based on 1mrsh0m 1mAUTHOR0m Jordan Brown, Quarterdeck Office Systems SESSREG(1) SESSREG(1) 1mNAME0m sessreg - manage utmp/wtmp entries for non-init clients 1mSYNOPSIS0m 1msessreg 22m[-w 4mwtmp-file24m] [-u 4mutmp-file24m] [-l 4mline-name24m] [-h 4mhost-name24m] [-s 4mslot-number24m] [-x 4mXservers-file24m] [-t 4mttys-file24m] [-a] [-d] 4muser-name0m 1mDESCRIPTION0m 4mSessreg24m is a simple program for managing utmp/wtmp entries for xdm sessions. System V has a better interface to /etc/utmp than BSD; it dynamically allocates entries in the file, instead of writing them at fixed positions indexed by position in /etc/ttys. To manage BSD-style utmp files, 4msessreg24m has two strategies. In conjunction with xdm, the -x option counts the number of lines in /etc/ttys and then adds to that the number of the line in the Xservers file which specifies the display. The display name must be specified as the "line-name" using the -l option. This sum is used as the "slot- number" in /etc/utmp that this entry will be written at. In the more general case, the -s option specifies the slot-number directly. If for some strange reason your system uses a file other that /etc/ttys to manage init, the -t option can direct 4msessreg24m to look elsewhere for a count of terminal sessions. Conversely, System V managers will not ever need to use these options (-x, -s and -t). To make the program easier to document and explain, 4msessreg24m accepts the BSD-specific flags in the System V environment and ignores them. BSD and Linux also have a host-name field in the utmp file which doesn't exist in System V. This option is also ignored by the System V version of 4msessreg24m. 1mUSAGE0m In Xstartup, place a call like: sessreg -a -l $DISPLAY -x /usr/X11R6/lib/xdm/Xservers $USER and in Xreset: sessreg -d -l $DISPLAY -x /usr/X11R6/lib/xdm/Xservers $USER 1mOPTIONS0m 1m-w 4m22mwtmp-file0m This specifies an alternate wtmp file, instead of /usr/adm/wtmp for BSD or /etc/wtmp for sysV. The special name "none" disables writing records to /usr/adm/wtmp. 1m-u 4m22mutmp-file0m This specifies an alternate utmp file, instead of "/etc/utmp". The special name "none" disables writing records to /etc/utmp. 1m-l 4m22mline-name0m This describes the "line" name of the entry. For terminal sessions, this is the final pathname segment of the terminal device filename (e.g. ttyd0). For X sessions, it should probably be the local display name given to the users session (e.g. :0). If none is specified, the terminal name will be determined with ttyname(3) and stripped of leading components. 1m-h 4m22mhost-name0m This is set for BSD hosts to indicate that the session was initiated from a remote host. In typical xdm usage, this options is not used. 1m-s 4m22mslot-number0m Each potential session has a unique slot number in BSD systems, most are identified by the position of the 4mline-name24m in the /etc/ttys file. This option overrides the default position determined with ttyslot(3). This option is inappropriate for use with xdm, the -x option is more useful. 1m-x 4m22mXservers-file0m As X sessions are one-per-display, and each display is entered in this file, this options sets the 4mslot-number24m to be the number of lines in the 4mttys-file24m plus the index into this file that the 4mline-name24m is found. 1m-t 4m22mttys-file0m This specifies an alternate file which the 4m-x24m option will use to count the number of terminal sessions on a host. 1m-a 22mThis session should be added to utmp/wtmp. 1m-d 22mThis session should be deleted from utmp/wtmp. One of -a/-d must be specified. 1mSEE ALSO0m xdm(1) 1mAUTHOR0m Keith Packard, MIT X Consortium SETXKBMAP(1) SETXKBMAP(1) 1mNAME0m setxkbmap - set the keyboard using the X Keyboard Extension 1mSYNOPSIS0m 1msetxkbmap [ 4m22margs24m 1m] [ 4m22mlayout24m 1m[ 4m22mvariant24m 1m[ 4m22moption24m 4m...24m 1m] ] ]0m 1mDESCRIPTION0m The 1msetxkbmap 22mcommand maps the keyboard to use the layout determined by the options specified on the command line. An XKB keymap is constructed from a number of components which are compiled only as needed. The source for all of the components can be found in 4m/usr/X11R6/lib/X11/xkb24m. 1mOPTIONS0m 1m-help 22mPrints a message describing the valid input to 4msetxkbmap24m. 1m-compat 4m22mname0m Specifies the name of the compatibility map component used to construct a keyboard layout. 1m-config 4m22mfile0m Specifies the name of an XKB configuration file which describes the keyboard to be used. 1m-display 4m22mdisplay0m Specifies the display to be updated with the new keyboard layout. 1m-geometry 4m22mname0m Specifies the name of the geometry component used to construct a keyboard layout. 1m-keymap 4m22mname0m Specifies the name of the keymap description used to construct a keyboard layout. 1m-layout 4m22mname0m Specifies the name of the layout used to determine the components which make up the keyboard description. Only one layout may be specified on the command line. 1m-model 4m22mname0m Specifies the name of the keyboard model used to determine the components which make up the keyboard description. Only one model may be specified on the command line. 1m-option 4m22mname0m Specifies the name of an option to determine the components which make up the keyboard description; multiple options may be specified, one per 4m-option24m flag. Note that 1msetxkbmap0m summarize options specified in the command line with options was set before (saved in root window properties). If you want only specified options will be set use the 4m-option24m flag with an empty argument first. 1m-print 22mWith this option the 1msetxkbmap 22mjust prints component names in a format acceptable by an 1mxkbcomp 22m(an XKB keymap compiler) and exits. The option can be used for tests instead of a verbose option and in case when one need to run both the 1msetxkbmap 22mand the 1mxkbcomp 22min chain (see below). 1m-rules 4m22mfile0m Specifies the name of the rules file used to resolve the request layout and model to a set of component names. 1m-symbols 4m22mname0m Specifies the name of the symbols component used to construct a keyboard layout. 1m-synch 22mForce synchronization for X requests. 1m-types 4m22mname0m Specifies the name of the types component used to construct a keyboard layout. 1m-variant 4m22mname0m Specifies which variant of the keyboard layout should be used to determine the components which make up the keyboard description. Only one variant may be specified on the command line. 1mUSING WITH xkbcomp0m If you have an Xserver and a client shell running on different computers and XKB configuration files sets on those machines are different you can get problems specifying a keyboard map by model, layout, options names. The thing is the 1msetxkbcomp 22mconverts these names to names of XKB configuration files according to files that are on the client side computer. Then it sends the file names to the server where the 1mxkbcomp 22mhas to compose a complete keyboard map using files which the server has. Thus if the sets of files differ significantly the names that the 1msetxkbmap 22mgenerates can be unacceptable on the server side. You can solve this problem running the 1mxkbcomp 22mon the client side too. With the 4m-print24m option 1msetxkbmap0m just prints the files names in an appropriate format to its stdout and this output can be piped directly to the 1mxkbcomp 22minput. For example, a command 1msetxkbmap us -print | xkbcomp - $DISPLAY0m makes both step on the same (client) machine and loads a keyboard map into the server. 1mFILES0m 4m/usr/X11R6/lib/X11/xkb0m SHOWFONT(1) SHOWFONT(1) 1mNAME0m showfont - font dumper for X font server 1mSYNOPSIS0m 1mshowfont 22m[ 4m-options24m ... ] 1m-fn 4m22mpattern0m 1mDESCRIPTION0m 4mShowfont24m displays data about a font that matches the given 4mpattern24m. The information shown includes font information, font properties, character metrics, and character bitmaps. The wildcard character "*" can be used to match any sequence of characters (including none) in the font name, and "?" can be used to match any single character. The "*" and "?" characters must be quoted to prevent them from being expanded by the shell. If no pattern is given, "*" is assumed. 1mOPTIONS0m 1m-server 4m22mhost24m1m:4m22mport0m The X font server to contact. 1m-fn 4m22mname0m The font to display. 1m-lsb 22mThe bit order of the font should be requested as LSBFirst (least significant bit first). 1m-msb 22mThe bit order of the font should be requested as MSBFirst (most significant bit first). 1m-LSB 22mThe byte order of the font should be requested as LSBFirst (least significant byte first). 1m-MSB 22mThe byte order of the font should be requested as MSBFirst (most significant byte first). 1m-ext22m[1ments_only22m] Only the character extents should be displayed, but not the bitmaps. 1m-start 4m22mchar0m The start of the range of the characters to display (4mchar24m is a number). 1m-end 4m22mchar0m The end of the range of the characters to display (4mchar24m is a number). 1m-unit 4m22mn24m The scanline unit of the font (8, 16, 32, or 64). 1m-pad 4m22mn24m The scanpad unit of the font (8, 16, 32, or 64). 1m-b22m[1mitmap_pad22m] 4mn0m The bitmap padding unit of the font (0, 1, or 2, where 0 is ImageRectMin, 1 is ImageRectMaxWidth and 2 is ImageRectMax). 1m-noprops0m Do not show the font properties. 1mSEE ALSO0m xfs(1), fslsfonts(1), xlsfonts(1) 1mENVIRONMENT0m 1mFONTSERVER0m the default X font server to contact. 1mCOPYRIGHT0m Copyright 1991, Network Computing Devices, Inc. See 4mX24m(1) for a full statement of rights and permissions. 1mAUTHOR0m Dave Lemke, Network Computing Devices, Inc. SHOWRGB(1) SHOWRGB(1) 1mNAME0m showrgb - uncompile an rgb color-name database 1mSYNOPSIS0m 1mshowrgb 22m[ 4mdatabase24m ] 1mDESCRIPTION0m The 4mshowrgb24m program reads an rgb color-name database compiled for use with the dbm database routines and converts it back to source form, printing the result to standard output. The default database is the one that X was built with, and may be overridden on the command line. Specify the database name without the 4m.pag24m or 4m.dir24m suffix. 1mFILES0m 4m/usr/X11R6/lib/X11/rgb0m default database. XSM(1) XSM(1) 1mNAME0m smproxy - Session Manager Proxy 1mSYNOPSIS0m 1msmproxy 22m[-clientId id] [-restore saveFile] 1mOPTIONS0m 1m-clientId 4m22mid0m Specifies the session ID used by 4msmproxy24m in the previous session. 1m-restore 4m22msaveFile0m Specifies the file used by 4msmproxy24m to save state in the previous session. 1mDESCRIPTION0m 4msmproxy24m allows X applications that do not support X11R6 session management to participate in an X11R6 session. In order for 4msmproxy24m to act as a proxy for an X application, one of the following must be true: - The application maps a top level window containing the 1mWM_CLIENT_LEADER 22mproperty. This property provides a pointer to the client leader window which contains the 1mWM_CLASS22m, 1mWM_NAME22m, 1mWM_COMMAND22m, and 1mWM_CLIENT_MACHINE 22mproperties. or ... - The application maps a top level window which does not contain the 1mWM_CLIENT_LEADER 22mproperty. However, this top level window contains the 1mWM_CLASS22m, 1mWM_NAME22m, 1mWM_COMMAND22m, and 1mWM_CLIENT_MACHINE 22mproperties. An application that support the 1mWM_SAVE_YOURSELF 22mprotocol will receive a 1mWM_SAVE_YOURSELF 22mclient message each time the session manager issues a checkpoint or shutdown. This allows the application to save state. If an application does not support the 1mWM_SAVE_YOURSELF 22mprotocol, then the proxy will provide enough information to the session manager to restart the application (using 1mWM_COMMAND22m), but no state will be restored. 1mSEE ALSO0m xsm(1) 1mAUTHOR0m Ralph Mor, X Consortium STARTX(1) STARTX(1) 1mNAME0m startx - initialize an X session 1mSYNOPSIS0m 1mstartx 22m[ [ 4mclient24m ] 4moptions24m ... ] [ 1m-- 22m[ 4mserver24m ] 4moptions24m ... ] 1mDESCRIPTION0m The 4mstartx24m script is a front end to 4mxinit24m that provides a somewhat nicer user interface for running a single session of the X Window System. It is often run with no arguments. Arguments immediately following the 4mstartx24m command are used to start a client in the same manner as 4mxinit24m(1). The special argument '--' marks the end of client arguments and the beginning of server options. It may be convenient to specify server options with startx to change on a per-session basis the default color depth, the server's notion of the number of dots-per-inch the display device presents, or take advantage of a different server layout, as permitted by the 4mXFree8624m(1) server and specified in the 4mXF86Config24m(5) file. Some examples of specifying server arguments follow; consult the manual page for your X server to determine which arguments are legal. startx -- -depth 16 startx -- -dpi 100 startx -- -layout Multihead To determine the client to run, 4mstartx24m first looks for a file called 4m.xinitrc24m in the user's home directory. If that is not found, it uses the file 4mxinitrc24m in the 4mxinit24m library directory. If command line client options are given, they override this behavior and revert to the 4mxinit24m(1) behavior. To determine the server to run, 4mstartx24m first looks for a file called 4m.xserverrc24m in the user's home directory. If that is not found, it uses the file 4mxserverrc24m in the 4mxinit24m library directory. If command line server options are given, they override this behavior and revert to the 4mxinit24m(1) behavior. Users rarely need to provide a 4m.xserverrc24m file. See the 4mxinit24m(1) manual page for more details on the arguments. The system-wide 4mxinitrc24m and 4mxserverrc24m files are found in the 4m/usr/X11R6/lib/X11/xinit24m directory. The 4m.xinitrc24m is typically a shell script which starts many clients according to the user's preference. When this shell script exits, 4mstartx24m kills the server and performs any other session shutdown needed. Most of the clients started by 4m.xinitrc24m should be run in the background. The last client should run in the foreground; when it exits, the session will exit. People often choose a session manager, window manager, or 4mxterm24m as the ''magic'' client. 1mEXAMPLE0m Below is a sample 4m.xinitrc24m that starts several applications and leaves the window manager running as the ''last'' application. Assuming that the window manager has been configured properly, the user then chooses the ''Exit'' menu item to shut down X. xrdb -load $HOME/.Xresources xsetroot -solid gray & xbiff -geometry -430+5 & oclock -geometry 75x75-0-0 & xload -geometry -80-0 & xterm -geometry +0+60 -ls & xterm -geometry +0-100 & xconsole -geometry -0+0 -fn 5x7 & exec twm 1mENVIRONMENT VARIABLES0m DISPLAY This variable gets set to the name of the display to which clients should connect. Note that this gets 4mset24m, not read. XAUTHORITY This variable, if not already defined, gets set to 4m$(HOME)/.Xauthority24m. This is to prevent the X server, if not given the 4m-auth0m argument, from automatically setting up insecure host-based authentication for the local host. See the 4mXserver24m(1) and 4mXsecurity24m(7) manual pages for more information on X client/server authentication. 1mFILES0m 4m$(HOME)/.xinitrc24m Client to run. Typically a shell script which runs many programs in the background. 4m$(HOME)/.xserverrc24m Server to run. The default is 4mX24m. 4m/usr/X11R6/lib/X11/xinit/xinitrc0m Client to run if the user has no 4m.xinitrc0m file. 4m/usr/X11R6/lib/X11/xinit/xserverrc0m Server to run if the user has no 4m.xserverrc0m file. 1mSEE ALSO0m 4mxinit24m(1), 4mXserver24m(1), 4mXFree8624m(1) SXPM(1) SXPM(1) 1mNAME0m sxpm - Show an XPM (X PixMap) file and/or convert XPM 1 or 2 files to XPM 3. 1mSYNOPSIS0m 1msxpm 22m[1m-d 22mdisplayname] [1m-g 22mgeometry] [1m-hints22m] [1m-icon 22mfilename] [1m-plaid |0m filename | -] [1m-o 22mfilename | 1m-o 22m-] [1m-pcmap22m] [1m-closecolors22m] [1m-nod22m] [1m-nom22m] [1m-mono | -grey4 | -grey | -color22m] [1m-sc 22msymbol color] [1m-sp 22msymbol pixel] [1m-cp 22mcolor pixel] [1m-rgb 22mfilename] [1m-v22m] 1mDESCRIPTION0m The 4msxpm24m program can be used to view any XPM (version 1, 2, or 3) file and/or to convert a file from XPM1 or XPM2 to XPM version 3. If 4msxpm24m is run with any dummy option specified, the usage is displayed. If no geometry is specified, the show window will have the size of the read pixmap. Pressing the key Q in the window will quit the program. 1mOPTIONS0m 1m-d 4m22mdisplay0m Specifies the display to connect to. 1m-g 4m22mgeom24m Window geometry (default is pixmap's size). 1m-hints 22mSet ResizeInc for window. 1m-icon 4m22mfilename0m Set icon to pixmap created from the file 4mfilename24m. 1m-plaid 22mShow the plaid pixmap which is stored as data1m.0m 4mfilename0m Read from the file 4mfilename24m and from standard input if 4mfilename0m is '-'. If no input is specified sxpm reads from standard input. 1m-o 4m22mfilename0m Write to the file 4mfilename24m (overwrite if it already exists) and to standard output if 4mfilename24m is '-'. 1m-mono 22mUse the colors specified for a monochrome visual. 1m-grey4 22mUse the colors specified for a 4 color greyscale visual. 1m-grey 22mUse the colors specified for a greyscale visual. 1m-color 22mUse the colors specified for a color visual. 1m-pcmap 22mUse a private colormap. 1m-closecolors0m Try to use "close colors" before reverting to other visuals. 1m-nod 22mDo not display the pixmap in a window. (Useful when using as converter) 1m-nom 22mDo not use the clipmask if there is any. 1m-sc 4m22msymbol24m 4mcolorname0m Override default color to 4msymbol24m to 4mcolorname24m. 1m-sp 4m22msymbol24m 4mpixelvalue0m Override default color to 4msymbol24m to 4mpixelvalue24m. 1m-cp 4m22mcolorname24m 4mpixelvalue0m Override default color to 4mcolorname24m to 4mpixelvalue24m. 1m-rgb 4m22mfilename0m Search color names in the file 4mfilename24m and write them out instead of the rgb values. 1m-v 22mVerbose - to print out extensions (stderr). 1mKNOWN BUGS0m Some window managers may not accept a pixmap which is not a bitmap as icon because this does not respect ICCCM, many of the well known ones will accept it though. 1mAUTHOR0m Arnaud Le Hors (lehors@sophia.inria.fr) Bull Research France Copyright (C) 1989-95 by Groupe Bull. TESTPLUGIN(1) TESTPLUGIN(1) 1mNAME0m testplugin - a Netscape Plug-in test bed utility 1mSYNOPSIS0m 1mtestplugin 22msrc=4murl24m [width=4mwidth24m] [height=4mheight24m] [4mname24m=4mvalue24m] ... 1mDESCRIPTION0m This program is designed to provide a means for testing Netscape Navigator UNIX plug-ins. It exercises the plug-in in a way close (I hope) to how Navigator does, and because it is a standalone program it allows you to run it through debugger and to use various program analysis tools. The line-mode browser 1mwww22m, must be in your 1mPATH 22mto be able to use testplugin successfully. 1mARGUMENTS0m 1msrc=4m22murl24m This argument specifies the source document to use. It should be of the MIME type your plug-in is expecting since unlike within Netscape, no type checking is done and the document is simply streamed to the plug-in. 1m[width=4m22mwidth24m1m] [height=4m22mheight24m1m]0m These options allow to specify the plug-in window size. 1m[4m22mname24m1m=4m22mvalue24m1m]...0m In addition to the arguments described above, any other argument can be specified and will be passed uninterpreted to the plug-in (through the NPP_New method). 1mCURRENT LIMITATIONS0m I've not implemented all of the "Netscape Methods", but only the ones I've needed so far. Also the "Plug-in Methods" are not called in every possible manner so it does not provide a 100% testing coverage. 1mSEE ALSO0m www(1), Netscape Navigator Documentation 1mAUTHOR0m Arnaud Le Hors, X Consortium TEXTEROIDS(1) TEXTEROIDS(1) 1mNAME0m texteroids - test your mousing skills on spinning text 1mSYNOPSIS0m 1mtexteroids 22m[ 1m-display 4m22mname24m ][ 1m-fn 4m22mfont24m ][ 1m-size 4m22msize24m ][ 4mtext_string24m ] 1mDESCRIPTION0m 1mtexteroids 22mspins the specified text string in a window. If you click on the text with the mouse, the string splits up into individual letters, each of which you may then click on. 1mOPTIONS0m 1m-display 4m22mname0m specifies the display on which to open a connection to the Display PostScript System. If no display is specified, the DISPLAY environment variable is used. 1m-fn 4m22mfont0m specifies the name of the PostScript language font software to use. The default is Times-Italic. 1m-size 4m22msize0m specifies the size, in points, of the text. The default is 36. 1m-debug 22mspecifies debugging mode. In debugging mode, all PostScript code sent to the server is printed out. 4mtext_string0m specifies the text to display. If the text has spaces it must be enclosed in quotation marks. The default text string is "Adobe". 1mAUTHOR0m Adobe Systems Incorporated 1mNOTES0m PostScript and Display PostScript are trademarks of Adobe Systems Incorporated which may be registered in certain jurisdictions. Copyright (c) 1990-1994 Adobe Systems Incorporated. All rights reserved. TWM(1) TWM(1) 1mNAME0m twm - Tab Window Manager for the X Window System 1mSYNTAX0m 1mtwm 22m[ 1m-display 4m22mdpy24m ] [ 1m-s 22m] [ 1m-f 4m22minitfile24m ] [ 1m-v 22m] 1mDESCRIPTION0m 4mTwm24m is a window manager for the X Window System. It provides titlebars, shaped windows, several forms of icon management, user- defined macro functions, click-to-type and pointer-driven keyboard focus, and user-specified key and pointer button bindings. This program is usually started by the user's session manager or startup script. When used from 4mxdm(1)24m or 4mxinit(1)24m without a session manager, 4mtwm24m is frequently executed in the foreground as the last client. When run this way, exiting 4mtwm24m causes the session to be terminated (i.e., logged out). By default, application windows are surrounded by a ``frame'' with a titlebar at the top and a special border around the window. The titlebar contains the window's name, a rectangle that is lit when the window is receiving keyboard input, and function boxes known as ``titlebuttons'' at the left and right edges of the titlebar. Pressing pointer Button1 (usually the left-most button unless it has been changed with 4mxmodmap24m) on a titlebutton will invoke the function associated with the button. In the default interface, windows are iconified by clicking (pressing and then immediately releasing) the left titlebutton (which looks like a Dot). Conversely, windows are deiconified by clicking in the associated icon or entry in the icon manager (see description of the variable 1mShowIconManager 22mand of the function 1mf.showiconmgr22m). Windows are resized by pressing the right titlebutton (which resembles a group of nested squares), dragging the pointer over edge that is to be moved, and releasing the pointer when the outline of the window is the desired size. Similarly, windows are moved by pressing in the title or highlight region, dragging a window outline to the new location, and then releasing when the outline is in the desired position. Just clicking in the title or highlight region raises the window without moving it. When new windows are created, 4mtwm24m will honor any size and location information requested by the user (usually through 4m-geometry24m command line argument or resources for the individual applications). Otherwise, an outline of the window's default size, its titlebar, and lines dividing the window into a 3x3 grid that track the pointer are displayed. Clicking pointer Button1 will position the window at the current position and give it the default size. Pressing pointer Button2 (usually the middle pointer button) and dragging the outline will give the window its current position but allow the sides to be resized as described above. Clicking pointer Button3 (usually the right pointer button) will give the window its current position but attempt to make it long enough to touch the bottom the screen. 1mOPTIONS0m 4mTwm24m accepts the following command line options: 1m-display 4m22mdpy0m This option specifies the X server to use. 1m-s 22mThis option indicates that only the default screen (as specified by 1m-display 22mor by the 1mDISPLAY 22menvironment variable) should be managed. By default, 4mtwm24m will attempt to manage all screens on the display. 1m-f 4m22mfilename0m This option specifies the name of the startup file to use. By default, 4mtwm24m will look in the user's home directory for files named 4m.twmrc.num24m (where 4mnum24m is a screen number) or 4m.twmrc24m. 1m-v 22mThis option indicates that 4mtwm24m should print error messages whenever an unexpected X Error event is received. This can be useful when debugging applications but can be distracting in regular use. 1mCUSTOMIZATION0m Much of 4mtwm24m's appearance and behavior can be controlled by providing a startup file in one of the following locations (searched in order for each screen being managed when 4mtwm24m begins): 1m$HOME/.twmrc.4m22mscreennumber0m The 4mscreennumber24m is a small positive number (e.g. 0, 1, etc.) representing the screen number (e.g. the last number in the DISPLAY environment variable 4mhost:displaynum.screennum24m) that would be used to contact that screen of the display. This is intended for displays with multiple screens of differing visual types. 1m$HOME/.twmrc0m This is the usual name for an individual user's startup file. 1m/usr/X11R6/lib/X11/twm/system.twmrc0m If neither of the preceding files are found, 4mtwm24m will look in this file for a default configuration. This is often tailored by the site administrator to provide convenient menus or familiar bindings for novice users. If no startup files are found, 4mtwm24m will use the built-in defaults described above. The only resource used by 4mtwm24m is 4mbitmapFilePath24m for a colon-separated list of directories to search when looking for bitmap files (for more information, see the 4mAthena24m 4mWidgets24m manual and 4mxrdb(1)24m). 4mTwm24m startup files are logically broken up into three types of specifications: 4mVariables24m, 4mBindings24m, 4mMenus24m. The 4mVariables24m section must come first and is used to describe the fonts, colors, cursors, border widths, icon and window placement, highlighting, autoraising, layout of titles, warping, use of the icon manager. The 4mBindings0m section usually comes second and is used to specify the functions that should be to be invoked when keyboard and pointer buttons are pressed in windows, icons, titles, and frames. The 4mMenus24m section gives any user-defined menus (containing functions to be invoked or commands to be executed). Variable names and keywords are case-insensitive. Strings must be surrounded by double quote characters (e.g. "blue") and are case- sensitive. A pound sign (#) outside of a string causes the remainder of the line in which the character appears to be treated as a comment. 1mVARIABLES0m Many of the aspects of 4mtwm24m's user interface are controlled by variables that may be set in the user's startup file. Some of the options are enabled or disabled simply by the presence of a particular keyword. Other options require keywords, numbers, strings, or lists of all of these. Lists are surrounded by braces and are usually separated by whitespace or a newline. For example: 1mAutoRaise 22m{ "emacs" "XTerm" "Xmh" } or 1mAutoRaise0m { "emacs" "XTerm" "Xmh" } When a variable containing a list of strings representing windows is searched (e.g. to determine whether or not to enable autoraise as shown above), a string must be an exact, case-sensitive match to the window's name (given by the WM_NAME window property), resource name or class name (both given by the WM_CLASS window property). The preceding example would enable autoraise on windows named ``emacs'' as well as any 4mxterm24m (since they are of class ``XTerm'') or xmh windows (which are of class ``Xmh''). String arguments that are interpreted as filenames (see the 1mPixmaps22m, 1mCursors22m, and 1mIconDirectory 22mbelow) will prepend the user's directory (specified by the 1mHOME 22menvironment variable) if the first character is a tilde (~). If, instead, the first character is a colon (:), the name is assumed to refer to one of the internal bitmaps that are used to create the default titlebars symbols: 1m:xlogo 22mor 1m:delete 22m(both refer to the X logo), 1m:dot 22mor 1m:iconify 22m(both refer to the dot), 1m:resize 22m(the nested squares used by the resize button), 1m:menu 22m(a page with lines), and 1m:question 22m(the question mark used for non-existent bitmap files). The following variables may be specified at the top of a 4mtwm24m startup file. Lists of Window name prefix strings are indicated by 4mwin-list24m. Optional arguments are shown in square brackets: 1mAutoRaise 22m{ 4mwin-list24m } This variable specifies a list of windows that should automatically be raised whenever the pointer enters the window. This action can be interactively enabled or disabled on individual windows using the function 1mf.autoraise22m. 1mAutoRelativeResize0m This variable indicates that dragging out a window size (either when initially sizing the window with pointer Button2 or when resizing it) should not wait until the pointer has crossed the window edges. Instead, moving the pointer automatically causes the nearest edge or edges to move by the same amount. This allows the resizing of windows that extend off the edge of the screen. If the pointer is in the center of the window, or if the resize is begun by pressing a titlebutton, 4mtwm24m will still wait for the pointer to cross a window edge (to prevent accidents). This option is particularly useful for people who like the press-drag-release method of sweeping out window sizes. 1mBorderColor 4m22mstring24m [{ 4mwincolorlist24m }] This variable specifies the default color of the border to be placed around all non-iconified windows, and may only be given within a 1mColor22m, 1mGrayscale 22mor 1mMonochrome 22mlist. The optional 4mwincolorlist24m specifies a list of window and color name pairs for specifying particular border colors for different types of windows. For example: 1mBorderColor 22m"gray50" { "XTerm" "red" "xmh" "green" } The default is "black". 1mBorderTileBackground 4m22mstring24m [{ 4mwincolorlist24m }] This variable specifies the default background color in the gray pattern used in unhighlighted borders (only if 1mNoHighlight0m hasn't been set), and may only be given within a 1mColor22m, 1mGrayscale 22mor 1mMonochrome 22mlist. The optional 4mwincolorlist24m allows per-window colors to be specified. The default is "white". 1mBorderTileForeground 4m22mstring24m [{ 4mwincolorlist24m }] This variable specifies the default foreground color in the gray pattern used in unhighlighted borders (only if 1mNoHighlight0m hasn't been set), and may only be given within a 1mColor22m, 1mGrayscale 22mor 1mMonochrome 22mlist. The optional 4mwincolorlist24m allows per-window colors to be specified. The default is "black". 1mBorderWidth 4m22mpixels0m This variable specifies the width in pixels of the border surrounding all client window frames if 1mClientBorderWidth 22mhas not been specified. This value is also used to set the border size of windows created by 4mtwm24m (such as the icon manager). The default is 2. 1mButtonIndent 4m22mpixels0m This variable specifies the amount by which titlebuttons should be indented on all sides. Positive values cause the buttons to be smaller than the window text and highlight area so that they stand out. Setting this and the 1mTitleButtonBorderWidth0m variables to 0 makes titlebuttons be as tall and wide as possible. The default is 1. 1mClientBorderWidth0m This variable indicates that border width of a window's frame should be set to the initial border width of the window, rather than to the value of 1mBorderWidth22m. 1mColor 22m{ 4mcolors-list24m } This variable specifies a list of color assignments to be made if the default display is capable of displaying more than simple black and white. The 4mcolors-list24m is made up of the following color variables and their values: 1mDefaultBackground22m, 1mDefaultForeground22m, 1mMenuBackground22m, 1mMenuForeground22m, 1mMenuTitleBackground22m, 1mMenuTitleForeground22m, 1mMenuShadowColor22m, 1mMenuBorderColor22m, 1mPointerForeground22m, and 1mPointerBackground22m. The following color variables may also be given a list of window and color name pairs to allow per-window colors to be specified (see 1mBorderColor 22mfor details): 1mBorderColor22m, 1mIconManagerHighlight22m, 1mBorderTitleBackground22m, 1mBorderTitleForeground22m, 1mTitleBackground22m, 1mTitleForeground22m, 1mIconBackground22m, 1mIconForeground22m, 1mIconBorderColor22m, 1mIconManagerBackground22m, and 1mIconManagerForeground22m. For example: 1mColor0m { MenuBackground "gray50" MenuForeground "blue" BorderColor "red" { "XTerm" "yellow" } TitleForeground "yellow" TitleBackground "blue" } All of these color variables may also be specified for the 1mMonochrome 22mvariable, allowing the same initialization file to be used on both color and monochrome displays. 1mConstrainedMoveTime 4m22mmilliseconds0m This variable specifies the length of time between button clicks needed to begin a constrained move operation. Double clicking within this amount of time when invoking 1mf.move 22mwill cause the window to be moved only in a horizontal or vertical direction. Setting this value to 0 will disable constrained moves. The default is 400 milliseconds. 1mCursors 22m{ 4mcursor-list24m } This variable specifies the glyphs that 4mtwm24m should use for various pointer cursors. Each cursor may be defined either from the 1mcursor 22mfont or from two bitmap files. Shapes from the 1mcursor 22mfont may be specified directly as: 4mcursorname24m "4mstring24m" where 4mcursorname24m is one of the cursor names listed below, and 4mstring24m is the name of a glyph as found in the file 4m/usr/X11R6/include/X11/cursorfont.h24m (without the ``XC_'' prefix). If the cursor is to be defined from bitmap files, the following syntax is used instead: 4mcursorname24m "4mimage24m" "4mmask24m" The 4mimage24m and 4mmask24m strings specify the names of files containing the glyph image and mask in 4mbitmap(1)24m form. The bitmap files are located in the same manner as icon bitmap files. The following example shows the default cursor definitions: 1mCursors0m { Frame "top_left_arrow" Title "top_left_arrow" Icon "top_left_arrow" IconMgr "top_left_arrow" Move "fleur" Resize "fleur" Menu "sb_left_arrow" Button "hand2" Wait "watch" Select "dot" Destroy "pirate" } 1mDecorateTransients0m This variable indicates that transient windows (those containing a WM_TRANSIENT_FOR property) should have titlebars. By default, transients are not reparented. 1mDefaultBackground 4m22mstring0m This variable specifies the background color to be used for sizing and information windows. The default is "white". 1mDefaultForeground 4m22mstring0m This variable specifies the foreground color to be used for sizing and information windows. The default is "black". 1mDontIconifyByUnmapping 22m{ 4mwin-list24m } This variable specifies a list of windows that should not be iconified by simply unmapping the window (as would be the case if 1mIconifyByUnmapping 22mhad been set). This is frequently used to force some windows to be treated as icons while other windows are handled by the icon manager. 1mDontMoveOff0m This variable indicates that windows should not be allowed to be moved off the screen. It can be overridden by the 1mf.forcemove 22mfunction. 1mDontSqueezeTitle 22m[{ 4mwin-list24m }] This variable indicates that titlebars should not be squeezed to their minimum size as described under 1mSqueezeTitle 22mbelow. If the optional window list is supplied, only those windows will be prevented from being squeezed. 1mForceIcons0m This variable indicates that icon pixmaps specified in the 1mIcons 22mvariable should override any client-supplied pixmaps. 1mFramePadding 4m22mpixels0m This variable specifies the distance between the titlebar decorations (the button and text) and the window frame. The default is 2 pixels. 1mGrayscale 22m{ 4mcolors24m } This variable specifies a list of color assignments that should be made if the screen has a GrayScale default visual. See the description of 1mColors22m. 1mIconBackground 4m22mstring24m [{ 4mwin-list24m }] This variable specifies the background color of icons, and may only be specified inside of a 1mColor22m, 1mGrayscale 22mor 1mMonochrome0m list. The optional 4mwin-list24m is a list of window names and colors so that per-window colors may be specified. See the 1mBorderColor 22mvariable for a complete description of the 4mwin-0m 4mlist24m. The default is "white". 1mIconBorderColor 4m22mstring24m [{ 4mwin-list24m }] This variable specifies the color of the border used for icon windows, and may only be specified inside of a 1mColor22m, 1mGrayscale0m or 1mMonochrome 22mlist. The optional 4mwin-list24m is a list of window names and colors so that per-window colors may be specified. See the 1mBorderColor 22mvariable for a complete description of the 4mwin-list24m. The default is "black". 1mIconBorderWidth 4m22mpixels0m This variable specifies the width in pixels of the border surrounding icon windows. The default is 2. 1mIconMaxWidth 4m22mpixels0m This variable specifies the maximum width in pixels of the icon window. The default is 1024. 1mIconDirectory 4m22mstring0m This variable specifies the directory that should be searched if if a bitmap file cannot be found in any of the directories in the 1mbitmapFilePath 22mresource. 1mIconFont 4m22mstring0m This variable specifies the font to be used to display icon names within icons. The default is "variable". 1mIconForeground 4m22mstring24m [{ 4mwin-list24m }] This variable specifies the foreground color to be used when displaying icons, and may only be specified inside of a 1mColor22m, 1mGrayscale 22mor 1mMonochrome 22mlist. The optional 4mwin-list24m is a list of window names and colors so that per-window colors may be specified. See the 1mBorderColor 22mvariable for a complete description of the 4mwin-list24m. The default is "black". 1mIconifyByUnmapping [{ 4m22mwin-list24m 1m}]0m This variable indicates that windows should be iconified by being unmapped without trying to map any icons. This assumes that the user will remap the window through the icon manager, the 1mf.warpto 22mfunction, or the 4mTwmWindows24m menu. If the optional 4mwin-list24m is provided, only those windows will be iconified by simply unmapping. Windows that have both this and the 1mIconManagerDontShow 22moptions set may not be accessible if no binding to the 4mTwmWindows24m menu is set in the user's startup file. 1mIconManagerBackground 4m22mstring24m [{ 4mwin-list24m }] This variable specifies the background color to use for icon manager entries, and may only be specified inside of a 1mColor22m, 1mGrayscale 22mor 1mMonochrome 22mlist. The optional 4mwin-list24m is a list of window names and colors so that per-window colors may be specified. See the 1mBorderColor 22mvariable for a complete description of the 4mwin-list24m. The default is "white". 1mIconManagerDontShow 22m[{ 4mwin-list24m }] This variable indicates that the icon manager should not display any windows. If the optional 4mwin-list24m is given, only those windows will not be displayed. This variable is used to prevent windows that are rarely iconified (such as 4mxclock24m or 4mxload24m) from taking up space in the icon manager. 1mIconManagerFont 4m22mstring0m This variable specifies the font to be used when displaying icon manager entries. The default is "variable". 1mIconManagerForeground 4m22mstring24m [{ 4mwin-list24m }] This variable specifies the foreground color to be used when displaying icon manager entries, and may only be specified inside of a 1mColor22m, 1mGrayscale 22mor 1mMonochrome 22mlist. The optional 4mwin-list24m is a list of window names and colors so that per- window colors may be specified. See the 1mBorderColor 22mvariable for a complete description of the 4mwin-list24m. The default is "black". 1mIconManagerGeometry 4m22mstring24m [ 4mcolumns24m ] This variable specifies the geometry of the icon manager window. The 4mstring24m argument is standard geometry specification that indicates the initial full size of the icon manager. The icon manager window is then broken into 4mcolumns24m pieces and scaled according to the number of entries in the icon manager. Extra entries are wrapped to form additional rows. The default number of columns is 1. 1mIconManagerHighlight 4m22mstring24m [{ 4mwin-list24m }] This variable specifies the border color to be used when highlighting the icon manager entry that currently has the focus, and can only be specified inside of a 1mColor22m, 1mGrayscale0m or 1mMonochrome 22mlist. The optional 4mwin-list24m is a list of window names and colors so that per-window colors may be specified. See the 1mBorderColor 22mvariable for a complete description of the 4mwin-list24m. The default is "black". 1mIconManagers 22m{ 4miconmgr-list24m } This variable specifies a list of icon managers to create. Each item in the 4miconmgr-list24m has the following format: "4mwinname24m" ["4miconname24m"] "4mgeometry24m" 4mcolumns0m where 4mwinname24m is the name of the windows that should be put into this icon manager, 4miconname24m is the name of that icon manager window's icon, 4mgeometry24m is a standard geometry specification, and 4mcolumns24m is the number of columns in this icon manager as described in 1mIconManagerGeometry22m. For example: 1mIconManagers0m { "XTerm" "=300x5+800+5" 5 "myhost" "=400x5+100+5" 2 } Clients whose name or class is ``XTerm'' will have an entry created in the ``XTerm'' icon manager. Clients whose name was ``myhost'' would be put into the ``myhost'' icon manager. 1mIconManagerShow 22m{ 4mwin-list24m } This variable specifies a list of windows that should appear in the icon manager. When used in conjunction with the 1mIconManagerDontShow 22mvariable, only the windows in this list will be shown in the icon manager. 1mIconRegion 4m22mgeomstring24m 4mvgrav24m 4mhgrav24m 4mgridwidth24m 4mgridheight0m This variable specifies an area on the root window in which icons are placed if no specific icon location is provided by the client. The 4mgeomstring24m is a quoted string containing a standard geometry specification. If more than one 1mIconRegion0m lines are given, icons will be put into the succeeding icon regions when the first is full. The 4mvgrav24m argument should be either 1mNorth 22mor 1mSouth 22mand control and is used to control whether icons are first filled in from the top or bottom of the icon region. Similarly, the 4mhgrav24m argument should be either 1mEast 22mor 1mWest 22mand is used to control whether icons should be filled in from left from the right. Icons are laid out within the region in a grid with cells 4mgridwidth24m pixels wide and 4mgridheight24m pixels high. 1mIcons 22m{ 4mwin-list24m } This variable specifies a list of window names and the bitmap filenames that should be used as their icons. For example: 1mIcons0m { "XTerm" "xterm.icon" "xfd" "xfd_icon" } Windows that match ``XTerm'' and would not be iconified by unmapping, and would try to use the icon bitmap in the file ``xterm.icon''. If 1mForceIcons 22mis specified, this bitmap will be used even if the client has requested its own icon pixmap. 1mInterpolateMenuColors0m This variable indicates that menu entry colors should be interpolated between entry specified colors. In the example below: 1mMenu 22m"mymenu" { "Title" ("black":"red") f.title "entry1" f.nop "entry2" f.nop "entry3" ("white":"green") f.nop "entry4" f.nop "entry5" ("red":"white") f.nop } the foreground colors for ``entry1'' and ``entry2'' will be interpolated between black and white, and the background colors between red and green. Similarly, the foreground for ``entry4'' will be half-way between white and red, and the background will be half-way between green and white. 1mMakeTitle 22m{ 4mwin-list24m } This variable specifies a list of windows on which a titlebar should be placed and is used to request titles on specific windows when 1mNoTitle 22mhas been set. 1mMaxWindowSize 4m22mstring0m This variable specifies a geometry in which the width and height give the maximum size for a given window. This is typically used to restrict windows to the size of the screen. The default width is 32767 - screen width. The default height is 32767 - screen height. 1mMenuBackground 4m22mstring0m This variable specifies the background color used for menus, and can only be specified inside of a 1mColor 22mor 1mMonochrome 22mlist. The default is "white". 1mMenuBorderColor 4m22mstring0m This variable specifies the color of the menu border and can only be specified inside of a 1mColor22m, 1mGrayscale 22mor 1mMonochrome0m list. The default is "black". 1mMenuBorderWidth 4m22mpixels0m This variable specifies the width in pixels of the border surrounding menu windows. The default is 2. 1mMenuFont 4m22mstring0m This variable specifies the font to use when displaying menus. The default is "variable". 1mMenuForeground 4m22mstring0m This variable specifies the foreground color used for menus, and can only be specified inside of a 1mColor22m, 1mGrayscale 22mor 1mMonochrome 22mlist. The default is "black". 1mMenuShadowColor 4m22mstring0m This variable specifies the color of the shadow behind pull- down menus and can only be specified inside of a 1mColor22m, 1mGrayscale 22mor 1mMonochrome 22mlist. The default is "black". 1mMenuTitleBackground 4m22mstring0m This variable specifies the background color for 1mf.title0m entries in menus, and can only be specified inside of a 1mColor22m, 1mGrayscale 22mor 1mMonochrome 22mlist. The default is "white". 1mMenuTitleForeground 4m22mstring0m This variable specifies the foreground color for 1mf.title0m entries in menus and can only be specified inside of a 1mColor 22mor 1mMonochrome 22mlist. The default is "black". 1mMonochrome 22m{ 4mcolors24m } This variable specifies a list of color assignments that should be made if the screen has a depth of 1. See the description of 1mColors22m. 1mMoveDelta 4m22mpixels0m This variable specifies the number of pixels the pointer must move before the 1mf.move 22mfunction starts working. Also see the 1mf.deltastop 22mfunction. The default is zero pixels. 1mNoBackingStore0m This variable indicates that 4mtwm24m's menus should not request backing store to minimize repainting of menus. This is typically used with servers that can repaint faster than they can handle backing store. 1mNoCaseSensitive0m This variable indicates that case should be ignored when sorting icon names in an icon manager. This option is typically used with applications that capitalize the first letter of their icon name. 1mNoDefaults0m This variable indicates that 4mtwm24m should not supply the default titlebuttons and bindings. This option should only be used if the startup file contains a completely new set of bindings and definitions. 1mNoGrabServer0m This variable indicates that 4mtwm24m should not grab the server when popping up menus and moving opaque windows. 1mNoHighlight 22m[{ 4mwin-list24m }] This variable indicates that borders should not be highlighted to track the location of the pointer. If the optional 4mwin-list0m is given, highlighting will only be disabled for those windows. When the border is highlighted, it will be drawn in the current 1mBorderColor22m. When the border is not highlighted, it will be stippled with a gray pattern using the current 1mBorderTileForeground 22mand 1mBorderTileBackground 22mcolors. 1mNoIconManagers0m This variable indicates that no icon manager should be created. 1mNoMenuShadows0m This variable indicates that menus should not have drop shadows drawn behind them. This is typically used with slower servers since it speeds up menu drawing at the expense of making the menu slightly harder to read. 1mNoRaiseOnDeiconify0m This variable indicates that windows that are deiconified should not be raised. 1mNoRaiseOnMove0m This variable indicates that windows should not be raised when moved. This is typically used to allow windows to slide underneath each other. 1mNoRaiseOnResize0m This variable indicates that windows should not be raised when resized. This is typically used to allow windows to be resized underneath each other. 1mNoRaiseOnWarp0m This variable indicates that windows should not be raised when the pointer is warped into them with the 1mf.warpto 22mfunction. If this option is set, warping to an occluded window may result in the pointer ending up in the occluding window instead the desired window (which causes unexpected behavior with 1mf.warpring22m). 1mNoSaveUnders0m This variable indicates that menus should not request save- unders to minimize window repainting following menu selection. It is typically used with displays that can repaint faster than they can handle save-unders. 1mNoStackMode 22m[{ 4mwin-list24m }] This variable indicates that client window requests to change stacking order should be ignored. If the optional 4mwin-list24m is given, only requests on those windows will be ignored. This is typically used to prevent applications from relentlessly popping themselves to the front of the window stack. 1mNoTitle 22m[{ 4mwin-list24m }] This variable indicates that windows should not have titlebars. If the optional 4mwin-list24m is given, only those windows will not have titlebars. 1mMakeTitle 22mmay be used with this option to force titlebars to be put on specific windows. 1mNoTitleFocus0m This variable indicates that 4mtwm24m should not set keyboard input focus to each window as it is entered. Normally, 4mtwm24m sets the focus so that focus and key events from the titlebar and icon managers are delivered to the application. If the pointer is moved quickly and 4mtwm24m is slow to respond, input can be directed to the old window instead of the new. This option is typically used to prevent this ``input lag'' and to work around bugs in older applications that have problems with focus events. 1mNoTitleHighlight 22m[{ 4mwin-list24m }] This variable indicates that the highlight area of the titlebar, which is used to indicate the window that currently has the input focus, should not be displayed. If the optional 4mwin-list24m is given, only those windows will not have highlight areas. This and the 1mSqueezeTitle 22moptions can be set to substantially reduce the amount of screen space required by titlebars. 1mOpaqueMove0m This variable indicates that the 1mf.move 22mfunction should actually move the window instead of just an outline so that the user can immediately see what the window will look like in the new position. This option is typically used on fast displays (particularly if 1mNoGrabServer 22mis set). 1mPixmaps 22m{ 4mpixmaps24m } This variable specifies a list of pixmaps that define the appearance of various images. Each entry is a keyword indicating the pixmap to set, followed by a string giving the name of the bitmap file. The following pixmaps may be specified: 1mPixmaps0m { TitleHighlight "gray1" } The default for 4mTitleHighlight24m is to use an even stipple pattern. 1mPriority 4m22mpriority0m This variable sets 4mtwm24m's priority. 4mpriority24m should be an unquoted, signed number (e.g. 999). This variable has an effect only if the server supports the SYNC extension. 1mRandomPlacement0m This variable indicates that windows with no specified geometry should be placed in a pseudo-random location instead of having the user drag out an outline. 1mResizeFont 4m22mstring0m This variable specifies the font to be used for in the dimensions window when resizing windows. The default is "fixed". 1mRestartPreviousState0m This variable indicates that 4mtwm24m should attempt to use the WM_STATE property on client windows to tell which windows should be iconified and which should be left visible. This is typically used to try to regenerate the state that the screen was in before the previous window manager was shutdown. 1mSaveColor 22m{ 4mcolors-list24m } This variable indicates a list of color assignments to be stored as pixel values in the root window property _MIT_PRIORITY_COLORS. Clients may elect to preserve these values when installing their own colormap. Note that use of this mechanism is a way an for application to avoid the "technicolor" problem, whereby useful screen objects such as window borders and titlebars disappear when a programs custom colors are installed by the window manager. For example: 1mSaveColor0m { BorderColor TitleBackground TitleForeground "red" "green" "blue" } This would place on the root window 3 pixel values for borders and titlebars, as well as the three color strings, all taken from the default colormap. 1mShowIconManager0m This variable indicates that the icon manager window should be displayed when 4mtwm24m is started. It can always be brought up using the 1mf.showiconmgr 22mfunction. 1mSortIconManager0m This variable indicates that entries in the icon manager should be sorted alphabetically rather than by simply appending new windows to the end. 1mSqueezeTitle 22m[{ 4msqueeze-list24m }] This variable indicates that 4mtwm24m should attempt to use the SHAPE extension to make titlebars occupy only as much screen space as they need, rather than extending all the way across the top of the window. The optional 4msqueeze-list24m may be used to control the location of the squeezed titlebar along the top of the window. It contains entries of the form: "4mname24m" 4mjustification24m 4mnum24m 4mdenom0m where 4mname24m is a window name, 4mjustification24m is either 1mleft22m, 1mcenter22m, or 1mright22m, and 4mnum24m and 4mdenom24m are numbers specifying a ratio giving the relative position about which the titlebar is justified. The ratio is measured from left to right if the numerator is positive, and right to left if negative. A denominator of 0 indicates that the numerator should be measured in pixels. For convenience, the ratio 0/0 is the same as 1/2 for 1mcenter 22mand -1/1 for 1mright22m. For example: 1mSqueezeTitle0m { "XTerm" left 0 0 "xterm1" left 1 3 "xterm2" left 2 3 "oclock" center 0 0 "emacs" right 0 0 } The 1mDontSqueezeTitle 22mlist can be used to turn off squeezing on certain titles. 1mStartIconified 22m[{ 4mwin-list24m }] This variable indicates that client windows should initially be left as icons until explicitly deiconified by the user. If the optional 4mwin-list24m is given, only those windows will be started iconic. This is useful for programs that do not support an 4m-iconic24m command line option or resource. 1mTitleBackground 4m22mstring24m [{ 4mwin-list24m }] This variable specifies the background color used in titlebars, and may only be specified inside of a 1mColor22m, 1mGrayscale 22mor 1mMonochrome 22mlist. The optional 4mwin-list24m is a list of window names and colors so that per-window colors may be specified. The default is "white". 1mTitleButtonBorderWidth 4m22mpixels0m This variable specifies the width in pixels of the border surrounding titlebuttons. This is typically set to 0 to allow titlebuttons to take up as much space as possible and to not have a border. The default is 1. 1mTitleFont 4m22mstring0m This variable specifies the font to be used for displaying window names in titlebars. The default is "variable". 1mTitleForeground 4m22mstring24m [{ 4mwin-list24m }] This variable specifies the foreground color used in titlebars, and may only be specified inside of a 1mColor22m, 1mGrayscale 22mor 1mMonochrome 22mlist. The optional 4mwin-list24m is a list of window names and colors so that per-window colors may be specified. The default is "black". 1mTitleIndent 4m22mpixels0m This variable specifies the amount by which window name should be indented on the left. The default is 0. 1mTitlePadding 4m22mpixels0m This variable specifies the distance between the various buttons, text, and highlight areas in the titlebar. The default is 8 pixels. 1mUnknownIcon 4m22mstring0m This variable specifies the filename of a bitmap file to be used as the default icon. This bitmap will be used as the icon of all clients which do not provide an icon bitmap and are not listed in the 1mIcons 22mlist. 1mUsePPosition 4m22mstring0m This variable specifies whether or not 4mtwm24m should honor program-requested locations (given by the 1mPPosition 22mflag in the WM_NORMAL_HINTS property) in the absence of a user-specified position. The argument 4mstring24m may have one of three values: 1m"off" 22m(the default) indicating that 4mtwm24m should ignore the program-supplied position, 1m"on" 22mindicating that the position should be used, and 1m"non-zero" 22mindicating that the position should used if it is other than (0,0). The latter option is for working around a bug in older toolkits. 1mWarpCursor 22m[{ 4mwin-list24m }] This variable indicates that the pointer should be warped into windows when they are deiconified. If the optional 4mwin-list24m is given, the pointer will only be warped when those windows are deiconified. 1mWindowRing 22m{ 4mwin-list24m } This variable specifies a list of windows along which the 1mf.warpring 22mfunction cycles. 1mWarpUnmapped0m This variable indicates that the 1mf.warpto 22mfunction should deiconify any iconified windows it encounters. This is typically used to make a key binding that will pop a particular window (such as 4mxmh24m), no matter where it is. The default is for 1mf.warpto 22mto ignore iconified windows. 1mXorValue 4m22mnumber0m This variable specifies the value to use when drawing window outlines for moving and resizing. This should be set to a value that will result in a variety of of distinguishable colors when exclusive-or'ed with the contents of the user's typical screen. Setting this variable to 1 often gives nice results if adjacent colors in the default colormap are distinct. By default, 4mtwm24m will attempt to cause temporary lines to appear at the opposite end of the colormap from the graphics. 1mZoom 22m[ 4mcount24m ] This variable indicates that outlines suggesting movement of a window to and from its iconified state should be displayed whenever a window is iconified or deiconified. The optional 4mcount24m argument specifies the number of outlines to be drawn. The default count is 8. The following variables must be set after the fonts have been assigned, so it is usually best to put them at the end of the variables or beginning of the bindings sections: 1mDefaultFunction 4m22mfunction0m This variable specifies the function to be executed when a key or button event is received for which no binding is provided. This is typically bound to 1mf.nop22m, 1mf.beep22m, or a menu containing window operations. 1mWindowFunction 4m22mfunction0m This variable specifies the function to execute when a window is selected from the 1mTwmWindows 22mmenu. If this variable is not set, the window will be deiconified and raised. 1mBINDINGS0m After the desired variables have been set, functions may be attached titlebuttons and key and pointer buttons. Titlebuttons may be added from the left or right side and appear in the titlebar from left-to- right according to the order in which they are specified. Key and pointer button bindings may be given in any order. Titlebuttons specifications must include the name of the pixmap to use in the button box and the function to be invoked when a pointer button is pressed within them: 1mLeftTitleButton 22m"4mbitmapname24m" = 4mfunction0m or 1mRightTitleButton 22m"4mbitmapname24m" = 4mfunction0m The 4mbitmapname24m may refer to one of the built-in bitmaps (which are scaled to match 1mTitleFont22m) by using the appropriate colon-prefixed name described above. Key and pointer button specifications must give the modifiers that must be pressed, over which parts of the screen the pointer must be, and what function is to be invoked. Keys are given as strings containing the appropriate keysym name; buttons are given as the keywords 1mButton122m-1mButton522m: "FP1" = 4mmodlist24m : 4mcontext24m : 4mfunction0m 1mButton1 22m= 4mmodlist24m : 4mcontext24m : 4mfunction0m The 4mmodlist24m is any combination of the modifier names 1mshift22m, 1mcontrol22m, 1mlock22m, 1mmeta22m, 1mmod122m, 1mmod222m, 1mmod322m, 1mmod422m, or 1mmod5 22m(which may be abbreviated as 1ms22m, 1mc22m, 1ml22m, 1mm22m, 1mm122m, 1mm222m, 1mm322m, 1mm422m, 1mm522m, respectively) separated by a vertical bar (|). Similarly, the 4mcontext24m is any combination of 1mwindow22m, 1mtitle22m, 1micon22m, 1mroot22m, 1mframe22m, 1miconmgr22m, their first letters (1miconmgr0m abbreviation is 1mm22m), or 1mall22m, separated by a vertical bar. The 4mfunction0m is any of the 1mf. 22mkeywords described below. For example, the default startup file contains the following bindings: Button1 = : root : f.menu "TwmWindows" Button1 = m : window | icon : f.function "move-or-lower" Button2 = m : window | icon : f.iconify Button3 = m : window | icon : f.function "move-or-raise" Button1 = : title : f.function "move-or-raise" Button2 = : title : f.raiselower Button1 = : icon : f.function "move-or-iconify" Button2 = : icon : f.iconify Button1 = : iconmgr : f.iconify Button2 = : iconmgr : f.iconify A user who wanted to be able to manipulate windows from the keyboard could use the following bindings: "F1" = : all : f.iconify "F2" = : all : f.raiselower "F3" = : all : f.warpring "next" "F4" = : all : f.warpto "xmh" "F5" = : all : f.warpto "emacs" "F6" = : all : f.colormap "next" "F7" = : all : f.colormap "default" "F20" = : all : f.warptoscreen "next" "Left" = m : all : f.backiconmgr "Right" = m | s : all : f.forwiconmgr "Up" = m : all : f.upiconmgr "Down" = m | s : all : f.downiconmgr 4mTwm24m provides many more window manipulation primitives than can be conveniently stored in a titlebar, menu, or set of key bindings. Although a small set of defaults are supplied (unless the 1mNoDefaults 22mis specified), most users will want to have their most common operations bound to key and button strokes. To do this, 4mtwm24m associates names with each of the primitives and provides 4muser-defined24m 4mfunctions24m for building higher level primitives and 4mmenus24m for interactively selecting among groups of functions. User-defined functions contain the name by which they are referenced in calls to 1mf.function 22mand a list of other functions to execute. For example: Function "move-or-lower" { f.move f.deltastop f.lower } Function "move-or-raise" { f.move f.deltastop f.raise } Function "move-or-iconify" { f.move f.deltastop f.iconify } Function "restore-colormap" { f.colormap "default" f.lower } The function name must be used in 1mf.function 22mexactly as it appears in the function specification. In the descriptions below, if the function is said to operate on the selected window, but is invoked from a root menu, the cursor will be changed to the 1mSelect 22mcursor and the next window to receive a button press will be chosen: 1m! 4m22mstring0m This is an abbreviation for 1mf.exec 4m22mstring24m. 1mf.autoraise0m This function toggles whether or not the selected window is raised whenever entered by the pointer. See the description of the variable 1mAutoRaise22m. 1mf.backiconmgr0m This function warps the pointer to the previous column in the current icon manager, wrapping back to the previous row if necessary. 1mf.beep 22mThis function sounds the keyboard bell. 1mf.bottomzoom0m This function is similar to the 1mf.fullzoom 22mfunction, but resizes the window to fill only the bottom half of the screen. 1mf.changelabel0m This function enters a mode where the user is able to change a window or an icon title. It grabs the keyboard and ignores all other events, so the only way to exit from this mode is to press Enter (confirm a new title) or Escape (restore the original title) keys. 1mf.circledown0m This function lowers the top-most window that occludes another window. 1mf.circleup0m This function raises the bottom-most window that is occluded by another window. 1mf.colormap 4m22mstring0m This function rotates the colormaps (obtained from the WM_COLORMAP_WINDOWS property on the window) that 4mtwm24m will display when the pointer is in this window. The argument 4mstring24m may have one of the following values: 1m"next"22m, 1m"prev"22m, and 1m"default"22m. It should be noted here that in general, the installed colormap is determined by keyboard focus. A pointer driven keyboard focus will install a private colormap upon entry of the window owning the colormap. Using the click to type model, private colormaps will not be installed until the user presses a mouse button on the target window. 1mf.deiconify0m This function deiconifies the selected window. If the window is not an icon, this function does nothing. 1mf.delete0m This function sends the WM_DELETE_WINDOW message to the selected window if the client application has requested it through the WM_PROTOCOLS window property. The application is supposed to respond to the message by removing the indicated window. If the window has not requested WM_DELETE_WINDOW messages, the keyboard bell will be rung indicating that the user should choose an alternative method. Note this is very different from f.destroy. The intent here is to delete a single window, not necessarily the entire application. 1mf.deltastop0m This function allows a user-defined function to be aborted if the pointer has been moved more than 4mMoveDelta24m pixels. See the example definition given for 1mFunction "move-or-raise" 22mat the beginning of the section. 1mf.destroy0m This function instructs the X server to close the display connection of the client that created the selected window. This should only be used as a last resort for shutting down runaway clients. See also f.delete. 1mf.downiconmgr0m This function warps the pointer to the next row in the current icon manger, wrapping to the beginning of the next column if necessary. 1mf.exec 4m22mstring0m This function passes the argument 4mstring24m to /bin/sh for execution. In multiscreen mode, if 4mstring24m starts a new X client without giving a display argument, the client will appear on the screen from which this function was invoked. 1mf.focus 22mThis function toggles the keyboard focus of the server to the selected window, changing the focus rule from pointer-driven if necessary. If the selected window already was focused, this function executes an 1mf.unfocus22m. 1mf.forcemove0m This function is like 1mf.move 22mexcept that it ignores the 1mDontMoveOff 22mvariable. 1mf.forwiconmgr0m This function warps the pointer to the next column in the current icon manager, wrapping to the beginning of the next row if necessary. 1mf.fullzoom0m This function resizes the selected window to the full size of the display or else restores the original size if the window was already zoomed. 1mf.function 4m22mstring0m This function executes the user-defined function whose name is specified by the argument 4mstring24m. 1mf.hbzoom0m This function is a synonym for 1mf.bottomzoom22m. 1mf.hideiconmgr0m This function unmaps the current icon manager. 1mf.horizoom0m This variable is similar to the 1mf.zoom 22mfunction except that the selected window is resized to the full width of the display. 1mf.htzoom0m This function is a synonym for 1mf.topzoom22m. 1mf.hzoom 22mThis function is a synonym for 1mf.horizoom22m. 1mf.iconify0m This function iconifies or deiconifies the selected window or icon, respectively. 1mf.identify0m This function displays a summary of the name and geometry of the selected window. If the server supports the SYNC extension, the priority of the client owning the window is also displayed. Clicking the pointer or pressing a key in the window will dismiss it. 1mf.lefticonmgr0m This function similar to 1mf.backiconmgr 22mexcept that wrapping does not change rows. 1mf.leftzoom0m This variable is similar to the 1mf.bottomzoom 22mfunction but causes the selected window is only resized to the left half of the display. 1mf.lower 22mThis function lowers the selected window. 1mf.menu 4m22mstring0m This function invokes the menu specified by the argument a4mstring24m. If a string starts with a $-symbols, it will be expanded as an environment variable. Cascaded menus may be built by nesting calls to 1mf.menu22m. 1mf.move 22mThis function drags an outline of the selected window (or the window itself if the 1mOpaqueMove 22mvariable is set) until the invoking pointer button is released. Double clicking within the number of milliseconds given by 1mConstrainedMoveTime 22mwarps the pointer to the center of the window and constrains the move to be either horizontal or vertical depending on which grid line is crossed. To abort a move, press another button before releasing the first button. 1mf.nexticonmgr0m This function warps the pointer to the next icon manager containing any windows on the current or any succeeding screen. 1mf.nop 22mThis function does nothing and is typically used with the 1mDefaultFunction 22mor 1mWindowFunction 22mvariables or to introduce blank lines in menus. 1mf.previconmgr0m This function warps the pointer to the previous icon manager containing any windows on the current or preceding screens. 1mf.priority 4m22mstring0m This function sets the priority of the client owning the selected window to the numeric value of the argument 4mstring24m, which should be a signed integer in double quotes (e.g. "999" ). This function has an effect only if the server supports the SYNC extension. 1mf.quit 22mThis function causes 4mtwm24m to restore the window's borders and exit. If 4mtwm24m is the first client invoked from 4mxdm24m, this will result in a server reset. 1mf.raise 22mThis function raises the selected window. 1mf.raiselower0m This function raises the selected window to the top of the stacking order if it is occluded by any windows, otherwise the window will be lowered. 1mf.refresh0m This function causes all windows to be refreshed. 1mf.resize0m This function displays an outline of the selected window. Crossing a border (or setting 1mAutoRelativeResize22m) will cause the outline to begin to rubber band until the invoking button is released. To abort a resize, press another button before releasing the first button. 1mf.restart0m This function kills and restarts 4mtwm24m. 1mf.startwm 4m22mstring0m This function kills 4mtwm24m and starts another window manager, as specified by 4mstring24m. 1mf.righticonmgr0m This function is similar to 1mf.nexticonmgr 22mexcept that wrapping does not change rows. 1mf.rightzoom0m This variable is similar to the 1mf.bottomzoom 22mfunction except that the selected window is only resized to the right half of the display. 1mf.saveyourself0m This function sends a WM_SAVEYOURSELF message to the selected window if it has requested the message in its WM_PROTOCOLS window property. Clients that accept this message are supposed to checkpoint all state associated with the window and update the WM_COMMAND property as specified in the ICCCM. If the selected window has not selected for this message, the keyboard bell will be rung. 1mf.showiconmgr0m This function maps the current icon manager. 1mf.sorticonmgr0m This function sorts the entries in the current icon manager alphabetically. See the variable 1mSortIconManager22m. 1mf.title 22mThis function provides a centered, unselectable item in a menu definition. It should not be used in any other context. 1mf.topzoom0m This variable is similar to the 1mf.bottomzoom 22mfunction except that the selected window is only resized to the top half of the display. 1mf.unfocus0m This function resets the focus back to pointer-driven. This should be used when a focused window is no longer desired. 1mf.upiconmgr0m This function warps the pointer to the previous row in the current icon manager, wrapping to the last row in the same column if necessary. 1mf.vlzoom0m This function is a synonym for 1mf.leftzoom22m. 1mf.vrzoom0m This function is a synonym for 1mf.rightzoom22m. 1mf.totalzoom0m This function resizes the selected window to the full size of the display or else restores the original size if the window was already zoomed. Zoomed window covers the whole area of a screen, without even window manager decoration. 1mf.warpring 4m22mstring0m This function warps the pointer to the next or previous window (as indicated by the argument 4mstring24m, which may be 1m"next" 22mor 1m"prev"22m) specified in the 1mWindowRing 22mvariable. 1mf.warpto 4m22mstring0m This function warps the pointer to the window which has a name or class that matches 4mstring24m. If the window is iconified, it will be deiconified if the variable 1mWarpUnmapped 22mis set or else ignored. 1mf.warptoiconmgr 4m22mstring0m This function warps the pointer to the icon manager entry associated with the window containing the pointer in the icon manager specified by the argument 4mstring24m. If 4mstring24m is empty (i.e. ""), the current icon manager is chosen. 1mf.warptoscreen 4m22mstring0m This function warps the pointer to the screen specified by the argument 4mstring24m. 4mString24m may be a number (e.g. 1m"0" 22mor 1m"1"22m), the word 1m"next" 22m(indicating the current screen plus 1, skipping over any unmanaged screens), the word 1m"back" 22m(indicating the current screen minus 1, skipping over any unmanaged screens), or the word 1m"prev" 22m(indicating the last screen visited. 1mf.winrefresh0m This function is similar to the 1mf.refresh 22mfunction except that only the selected window is refreshed. 1mf.zoom 22mThis function is similar to the 1mf.fullzoom 22mfunction, except that the only the height of the selected window is changed. 1mMENUS0m Functions may be grouped and interactively selected using pop-up (when bound to a pointer button) or pull-down (when associated with a titlebutton) menus. Each menu specification contains the name of the menu as it will be referred to by 1mf.menu22m, optional default foreground and background colors, the list of item names and the functions they should invoke, and optional foreground and background colors for individual items: 1mMenu 22m"4mmenuname24m" [ ("4mdeffore24m":"4mdefback24m") ] { 4mstring124m [ ("4mfore124m":"4mbackn24m")] 4mfunction10m 4mstring224m [ ("4mfore224m":"4mbackn24m")] 4mfunction20m . . . 4mstringN24m [ ("4mforeN24m":"4mbackN24m")] 4mfunctionN0m } The 4mmenuname24m is case-sensitive. The optional 4mdeffore24m and 4mdefback0m arguments specify the foreground and background colors used on a color display to highlight menu entries. The 4mstring24m portion of each menu entry will be the text which will appear in the menu. The optional 4mfore24m and 4mback24m arguments specify the foreground and background colors of the menu entry when the pointer is not in the entry. These colors will only be used on a color display. The default is to use the colors specified by the 1mMenuForeground 22mand 1mMenuBackground 22mvariables. The 4mfunction24m portion of the menu entry is one of the functions, including any user-defined functions, or additional menus. There is a special menu named 1mTwmWindows 22mwhich contains the names of all of the client and 4mtwm24m-supplied windows. Selecting an entry will cause the 1mWindowFunction 22mto be executed on that window. If 1mWindowFunction 22mhasn't been set, the window will be deiconified and raised. 1mICONS0m 4mTwm24m supports several different ways of manipulating iconified windows. The common pixmap-and-text style may be laid out by hand or automatically arranged as described by the 1mIconRegion 22mvariable. In addition, a terse grid of icon names, called an icon manager, provides a more efficient use of screen space as well as the ability to navigate among windows from the keyboard. An icon manager is a window that contains names of selected or all windows currently on the display. In addition to the window name, a small button using the default iconify symbol will be displayed to the left of the name when the window is iconified. By default, clicking on an entry in the icon manager performs 1mf.iconify22m. To change the actions taken in the icon manager, use the the 1miconmgr 22mcontext when specifying button and keyboard bindings. Moving the pointer into the icon manager also directs keyboard focus to the indicated window (setting the focus explicitly or else sending synthetic events 1mNoTitleFocus 22mis set). Using the 1mf.upiconmgr22m, 1mf.downiconmgr f.lefticonmgr22m, and 1mf.righticonmgr 22mfunctions, the input focus can be changed between windows directly from the keyboard. 1mBUGS0m The resource manager should have been used instead of all of the window lists. The 1mIconRegion 22mvariable should take a list. Double clicking very fast to get the constrained move function will sometimes cause the window to move, even though the pointer is not moved. If 1mIconifyByUnmapping 22mis on and windows are listed in 1mIconManagerDontShow 22mbut not in 1mDontIconifyByUnmapping22m, they may be lost if they are iconified and no bindings to 1mf.menu "TwmWindows" 22mor 1mf.warpto 22mare setup. 1mFILES0m 4m$HOME/.twmrc.0m 4m$HOME/.twmrc0m 4m/usr/X11R6/lib/X11/twm/system.twmrc0m 1mENVIRONMENT VARIABLES0m DISPLAY This variable is used to determine which X server to use. It is also set during 1mf.exec 22mso that programs come up on the proper screen. HOME This variable is used as the prefix for files that begin with a tilde and for locating the 4mtwm24m startup file. 1mSEE ALSO0m X(7), Xserver(1), xdm(1), xrdb(1) 1mAUTHORS0m Tom LaStrange, Solbourne Computer; Jim Fulton, MIT X Consortium; Steve Pitschke, Stardent Computer; Keith Packard, MIT X Consortium; Dave Sternlicht, MIT X Consortium; Dave Payne, Apple Computer. ucs2any(1) XFree86 ucs2any(1) 1mNAME0m ucs2any - generate BDF fonts containing subsets of ISO 10646-1 codepoints 1mSYNOPSIS0m 1mucs2any 22m[ 1m+d 22m| 1m-d 22m] 4msource-name24m { 4mmapping-file24m 4mregistry-encoding24m } ... 1mDESCRIPTION0m 1mucs2any 22mallows one to generate from an ISO 10646-1 encoded BDF font other BDF fonts in any possible encoding. This way, one can derive from a single ISO 10646-1 master font a whole set of 8-bit fonts in all ISO 8859 and various other encodings. 1mOPTIONS0m 1m+d 22mputs DEC VT100 graphics characters in the C0 range (default for upright, character-cell fonts). 1m-d 22momits DEC VT100 graphics characters from the C0 range (default for all font types except upright, character-cell fonts). 1mOPERANDS0m 4msource-name0m is the name of an ISO 10646-1 encoded BDF file. 4mmapping-file0m is the name of a character set table like those at 1m22m. These files can also typically be found installed in the 4m/usr/X11R6/lib/X11/fonts/util/24m directory. 4mregistry-encoding0m are the CHARSET_REGISTRY and CHARSET_ENCODING field values for the font name (XLFD) of the target font, separated by a hyphen. Any number of 4mmapping-file24m and 4mregistry-encoding24m operand pairs may be specified. 1mEXAMPLE0m The command ucs2any 6x13.bdf 8859-1.TXT iso8859-1 8859-2.TXT iso8859-2 will generate the files 4m6x13-iso8859-1.bdf24m and 4m6x13-iso8859-2.bdf24m. 1mFUTURE DIRECTIONS0m Hopefully a future XFree86 release will have a facility similar to 1mucs2any 22mbuilt into the server, and reencode ISO 10646-1 on the fly, because storing the same fonts in many different encodings is clearly a waste of storage capacity. 1mSEE ALSO0m 1mbdftruncate22m(1) 1mAUTHOR0m 1mucs2any 22mwas written by Markus Kuhn. Branden Robinson wrote this manual page, originally for the Debian Project. VIEWRES(1) VIEWRES(1) 1mNAME0m viewres - graphical class browser for Xt 1mSYNOPSIS0m 1mviewres 22m[-option ...] 1mDESCRIPTION0m The 4mviewres24m program displays a tree showing the widget class hierarchy of the Athena Widget Set. Each node in the tree can be expanded to show the resources that the corresponding class adds (i.e. does not inherit from its parent) when a widget is created. This application allows the user to visually examine the structure and inherited resources for the Athena Widget Set. 1mOPTIONS0m 4mViewres24m accepts all of the standard toolkit command line options as well as the following: 1m-top 4m22mname0m This option specifies the name of the highest widget in the hierarchy to display. This is typically used to limit the display to a subset of the tree. The default is 4mObject24m. 1m-variable0m This option indicates that the widget variable names (as declared in header files) should be displayed in the nodes rather than the widget class name. This is sometimes useful to distinguish widget classes that share the same name (such as 4mText24m). 1m-vertical0m This option indicates that the tree should be displayed top to bottom rather left to right. 1mVIEW MENU0m The way in which the tree is displayed may be changed through the entries in the 1mView 22mmenu: 1mShow Variable Names0m This entry causes the node labels to be set to the variable names used to declare the corresponding widget class. This operation may also be performed with the 1mSetLabelType(variable)0m translation. 1mShow Class Names0m This entry causes the node labels to be set to the class names used when specifying resources. This operation may also be performed with the 1mSetLabelType(class) 22mtranslation. 1mLayout Horizontal0m This entry causes the tree to be laid out from left to right. This operation may also be performed with the 4mSetOrientation(West)24m translation. 1mLayout Vertical0m This entry causes the tree to be laid out from top to bottom. This operation may also be performed with the 4mSetOrientation(North)24m translation. 1mShow Resource Boxes0m This entry expands the selected nodes (see next section) to show the new widget and constraint resources. This operation may also be performed with the 4mResources(on)24m translation. 1mHide Resource Boxes0m This entry removes the resource displays from the selected nodes (usually to conserve space). This operation may also be performed with the 4mResources(off)24m translation. 1mSELECT MENU0m Resources for a single widget class can be displayed by clicking 1mButton2 22mon the corresponding node, or by adding the node to the selection list with 1mButton1 22mand using the 1mShow Resource Boxes 22mentry in the 1mView 22mmenu. Since 1mButton1 22mactually toggles the selection state of a node, clicking on a selected node will cause it to be removed from the selected list. Collections of nodes may also be selected through the various entries in the 1mSelect 22mmenu: 1mUnselect All0m This entry removes all nodes from the selection list. This operation may also be performed with the 4mSelect(nothing)0m translation. 1mSelect All0m This entry adds all nodes to the selection list. This operation may also be performed with the 4mSelect(all)0m translation. 1mInvert All0m This entry adds unselected nodes to, and removes selected nodes from, the selection list. This operation may also be performed with the 4mSelect(invert)24m translation. 1mSelect Parent0m This entry selects the immediate parents of all selected nodes. This operation may also be performed with the 4mSelect(parent)0m translation. 1mSelect Ancestors0m This entry recursively selects all parents of all selected nodes. This operation may also be performed with the 4mSelect(ancestors)24m translation. 1mSelect Children0m This entry selects the immediate children of all selected nodes. This operation may also be performed with the 4mSelect(children)24m translation. 1mSelect Descendants0m This entry recursively selects all children of all selected nodes. This operation may also be performed with the 4mSelect(descendants)24m translation. 1mSelect Has Resources0m This entry selects all nodes that add new resources (regular or constraint) to their corresponding widget classes. This operation may also be performed with the 4mSelect(resources)0m translation. 1mSelect Shown Resource Boxes0m This entry selects all nodes whose resource boxes are currently expanded (usually so that they can be closed with 1mHide Resource0m 1mBoxes22m). This operation may also be performed with the 4mSelect(shown)24m translation. 1mACTIONS0m The following application actions are provided: 1mQuit()0m This action causes 4mviewres24m to exit. 1mSetLabelType(4m22mtype24m1m)0m This action sets the node labels to display the widget 4mvariable0m or 4mclass24m names, according to the argument 4mtype24m. 1mSetOrientation(4m22mdirection24m1m)0m This action sets the root of the tree to be one of the following areas of the window: 4mWest24m, 4mNorth24m, 4mEast24m, or 4mSouth24m. 1mSelect(4m22mwhat24m1m)0m This action selects the indicated nodes, as described in the 1mVIEW MENU 22msection: 4mnothing24m (unselects all nodes), 4minvert24m, 4mparent24m, 4mancestors24m, 4mchildren24m, 4mdescendants24m, 4mresources24m, 4mshown24m. 1mResources(4m22mop24m1m)0m This action turns 4mon24m, 4moff24m, or 4mtoggles24m the resource boxes for the selected nodes. If invoked from within one of the nodes (through the keyboard or pointer), only that node is used. 1mWIDGET HIERARCHY0m Resources may be specified for the following widgets: Viewres viewres Paned pane Box buttonbox Command quit MenuButton view SimpleMenu viewMenu SmeBSB layoutHorizontal SmeBSB layoutVertical SmeLine line1 SmeBSB namesVariable SmeBSB namesClass SmeLine line2 SmeBSB viewResources SmeBSB viewNoResources MenuButton select SimpleMenu selectMenu SmeBSB unselect SmeBSB selectAll SmeBSB selectInvert SmeLine line1 SmeBSB selectParent SmeBSB selectAncestors SmeBSB selectChildren SmeBSB selectDescendants SmeLine line2 SmeBSB selectHasResources SmeBSB selectShownResources Form treeform Porthole porthole Tree tree Box 4mvariable-name0m Toggle 4mvariable-name0m List 4mvariable-name0m Panner panner where 4mvariable-name24m is the widget variable name of each node. 1mSEE ALSO0m X(7), xrdb(1), listres(1), editres(1), appres(1), appropriate widget documents 1mCOPYRIGHT0m Copyright 1994 X Consortium See 4mX(7)24m for a full statement of rights and permissions. 1mAUTHOR0m Jim Fulton, MIT X Consortium X11PERF(1) X11PERF(1) 1mNAME0m x11perf - X11 server performance test program 1mSYNTAX0m 1mx11perf 22m[ -option ... ] 1mDESCRIPTION0m The 4mx11perf24m program runs one or more performance tests and reports how fast an X server can execute the tests. Many graphics benchmarks assume that the graphics device is used to display the output of a single fancy graphics application, and that the user gets his work done on some other device, like a terminal. Such benchmarks usually measure drawing speed for lines, polygons, text, etc. Since workstations are not used as standalone graphics engines, but as super-terminals, 4mx11perf24m measures window management performance as well as traditional graphics performance. 4mx11perf24m includes benchmarks for the time it takes to create and map windows (as when you start up an application); to map a pre-existing set of windows onto the screen (as when you deiconify an application or pop up a menu); and to rearrange windows (as when you slosh windows to and fro trying to find the one you want). 4mx11perf24m also measures graphics performance for operations not normally used in standalone graphics displays, but are nonetheless used frequently by X applications. Such operations include CopyPlane (used to map bitmaps into pixels), scrolling (used in text windows), and various stipples and tiles (used for CAD and color half-toning, respectively). 4mx11perf24m should be used to analyze particular strengths and weaknesses of servers, and is most useful to a server writer who wants to analyze and improve a server. 4mx11perf24m is meant to comprehensively exercise just about every X11 operation you can perform; it does not purport to be a representative sample of the operations that X11 applications actually use. While it can be used as a benchmark, it was written and is intended as a performance testing tool. As such, 4mx11perf24m DOES NOT whittle down measurements to a single ``HeXStones'' or ``MeXops'' number. We consider such numbers to be uninformative at best and misleading at worst. Some servers which are very fast for certain applications can be very slow for others. No single number or small set of numbers are sufficient to characterize how an X implementation will perform on all applications. However, by knowledge of your favorite application, you may be able to use the numbers 4mx11perf24m reports to predict its performance on a given X implementation. That said, you might also want to look at 4mx11perfcomp(1),24m a program to compare the outputs of different 4mx11perf24m runs. You provide a list of files containing results from 4mx11perf,24m and it lays them out in a nice tabular format. For repeatable results, 4mx11perf24m should be run using a local connection on a freshly-started server. The default configuration runs each test 5 times, in order to see if each trial takes approximately the same amount of time. Strange glitches should be examined; if non-repeatable one might chalk them up to daemons and network traffic. Each trial is run for 5 seconds, in order to reduce random time differences. The number of objects processed per second is displayed to 3 significant digits, but you'll be lucky on most UNIX system if the numbers are actually consistent to 2 digits. 4mx11perf24m moves the cursor out of the test window; you should be careful not to bump the mouse and move it back into the window. (A prize to people who correctly explain why!!). Before running a test, 4mx11perf24m determines what the round trip time to the server is, and factors this out of the final timing reported. It ensures that the server has actually performed the work requested by fetching a pixel back from the test window, which means that servers talking to graphics accelerators can't claim that they are done, while in the meantime the accelerator is painting madly. By default 4mx11perf24m automatically calibrates the number of repetitions of each test, so that each should take approximately the same length of time to run across servers of widely differing speeds. However, since each test must be run to completion at least once, some slow servers may take a very long time, particularly on the window moving and resizing tests, and on the arc drawing tests. All timing reports are for the smallest object involved. For example, the line tests use a PolyLine request to paint several lines at once, but report how many lines per second the server can paint, not how many PolyLine requests per second. Text tests paint a line of characters, but report on the number of characters per second. Some window tests map, unmap, or move a single parent window, but report on how many children windows per second the server can map, unmap, or move. The current program is mostly the responsibility of Joel McCormack. It is based upon the x11perf developed by Phil Karlton, Susan Angebranndt, Chris Kent, Mary Walker, and Todd Newman, who wanted to assess performance differences between various servers. Several tests were added in order to write and tune the PMAX (DECStation 3100) servers. For a general release to the world, 4mx11perf24m was rewritten to ease making comparisons between widely varying machines, to cover most important (and unimportant) X functionality, and to exercise graphics operations in as many different orientations and alignments as possible. 1mOPTIONS0m 4mx11perf24m is solely Xlib based, and accepts the options listed below: 1m-display host:dpy0m Specifies which display to use. 1m-sync 22mRuns the tests in synchronous mode. Normally only useful for debugging 4mx11perf24m 4m.0m 1m-pack 22mRuns rectangle tests so that they pack rectangles right next to each other. This makes it easy to debug server code for stipples and tiles...if the pattern looks ugly, you've got alignment problems. 1m-repeat 4m22m24m Repeats each test 4mn24m times (by default each test is run 5 times). 1m-time 4m22m24m Specifies how long in seconds each test should be run (default 5 seconds). 1m-all 22mRuns all tests. This may take a while. 1m-range 4m22m24m1m[,4m22m24m1m]0m Runs all the tests starting from the specified name 4mtest10m until the name 4mtest224m, including both the specified tests. The testnames should be one of the options starting from -dot. (eg) -range line100 will peform the tests from the 100 pixel line test, and go on till the last test, -range line100,dline10 will do the tests from line100 to dline10. 1m-labels 22mGenerates just the descriptive labels for each test specified. See 4mx11perfcomp24m for more details. 1m-fg 4m22mcolor-or-pixel0m Specifies the foreground color or pixel value to use. 1m-bg 4m22mcolor-or-pixel0m Specifies the background color or pixel value to use. 1m-clips 4m22mdefault0m Default number of clip windows. 1m-ddbg 4m22mcolor-or-pixel0m Specifies the color or pixel value to use for drawing the odd segments of a DoubleDashed line or arc. This will default to the bg color. 1m-rop 0m Use specified raster ops (default is GXcopy). This option only affects graphics benchmarks in which the graphics function is actually used. 1m-pm 0m Use specified planemasks (default is ~0). This option only affects graphics benchmarks in which the planemask is actually used. 1m-depth 0m Use a visual with planes per pixel (default is the default visual). 1m-vclass 0m Use a visual with of class . can be StaticGray, GrayScale, StaticColor, PseudoColor, TrueColor, or DirectColor. (default is the default visual). 1m-reps 22mSpecify the repetition count (Default is number that takes aprox. 5 seconds) 1m-subs 0m Specify the number of sub windows to use in the Window tests. Default is 4, 16, 25, 50, 75, 100 and 200. 1m-v1.2 22mPerform only x11perf Version 1.2 tests using Version 1.2 semantics. 1m-v1.3 22mPerform only x11perf Version 1.3 tests using Version 1.3 semantics. 1m-su 22mSet the save_under window attribute to True on all windows created by x11perf. Default is False. 1m-bs 0m Set the backing_store window attribute to the given value on all windows created by x11perf. can be WhenMapped or Always. Default is NotUseful. 1m-dot 22mDot. 1m-rect1 22m1x1 solid-filled rectangle. 1m-rect10 22m10x10 solid-filled rectangle. 1m-rect100 22m100x100 solid-filled rectangle. 1m-rect500 22m500x500 solid-filled rectangle. 1m-srect1 22m1x1 transparent stippled rectangle, 8x8 stipple pattern. 1m-srect10 22m10x10 transparent stippled rectangle, 8x8 stipple pattern. 1m-srect100 22m100x100 transparent stippled rectangle, 8x8 stipple pattern. 1m-srect500 22m500x500 transparent stippled rectangle, 8x8 stipple pattern. 1m-osrect1 22m1x1 opaque stippled rectangle, 8x8 stipple pattern. 1m-osrect10 22m10x10 opaque stippled rectangle, 8x8 stipple pattern. 1m-osrect100 22m100x100 opaque stippled rectangle, 8x8 stipple pattern. 1m-osrect500 22m500x500 opaque stippled rectangle, 8x8 stipple pattern. 1m-tilerect1 22m1x1 tiled rectangle, 4x4 tile pattern. 1m-tilerect10 22m10x10 tiled rectangle, 4x4 tile pattern. 1m-tilerect100 22m100x100 tiled rectangle, 4x4 tile pattern. 1m-tilerect500 22m500x500 tiled rectangle, 4x4 tile pattern. 1m-oddsrect1 22m1x1 transparent stippled rectangle, 17x15 stipple pattern. 1m-oddsrect10 22m10x10 transparent stippled rectangle, 17x15 stipple pattern. 1m-oddsrect100 22m100x100 transparent stippled rectangle, 17x15 stipple pattern. 1m-oddsrect500 22m500x500 transparent stippled rectangle, 17x15 stipple pattern. 1m-oddosrect1 22m1x1 opaque stippled rectangle, 17x15 stipple pattern. 1m-oddosrect10 22m10x10 opaque stippled rectangle, 17x15 stipple pattern. 1m-oddosrect100 22m100x100 opaque stippled rectangle, 17x15 stipple pattern. 1m-oddosrect500 22m500x500 opaque stippled rectangle, 17x15 stipple pattern. 1m-oddtilerect1 22m1x1 tiled rectangle, 17x15 tile pattern. 1m-oddtilerect100m 10x10 tiled rectangle, 17x15 tile pattern. 1m-oddtilerect1000m 100x100 tiled rectangle, 17x15 tile pattern. 1m-oddtilerect5000m 500x500 tiled rectangle, 17x15 tile pattern. 1m-bigsrect1 22m1x1 stippled rectangle, 161x145 stipple pattern. 1m-bigsrect10 22m10x10 stippled rectangle, 161x145 stipple pattern. 1m-bigsrect100 22m100x100 stippled rectangle, 161x145 stipple pattern. 1m-bigsrect500 22m500x500 stippled rectangle, 161x145 stipple pattern. 1m-bigosrect1 22m1x1 opaque stippled rectangle, 161x145 stipple pattern. 1m-bigosrect10 22m10x10 opaque stippled rectangle, 161x145 stipple pattern. 1m-bigosrect100 22m100x100 opaque stippled rectangle, 161x145 stipple pattern. 1m-bigosrect500 22m500x500 opaque stippled rectangle, 161x145 stipple pattern. 1m-bigtilerect1 22m1x1 tiled rectangle, 161x145 tile pattern. 1m-bigtilerect100m 10x10 tiled rectangle, 161x145 tile pattern. 1m-bigtilerect1000m 100x100 tiled rectangle, 161x145 tile pattern. 1m-bigtilerect5000m 500x500 tiled rectangle, 161x145 tile pattern. 1m-eschertilerect10m 1x1 tiled rectangle, 215x208 tile pattern. 1m-eschertilerect100m 10x10 tiled rectangle, 215x208 tile pattern. 1m-eschertilerect1000m 100x100 tiled rectangle, 215x208 tile pattern. 1m-eschertilerect5000m 500x500 tiled rectangle, 215x208 tile pattern. 1m-seg1 22m1-pixel thin line segment. 1m-seg10 22m10-pixel thin line segment. 1m-seg100 22m100-pixel thin line segment. 1m-seg500 22m500-pixel thin line segment. 1m-seg100c1 22m100-pixel thin line segment (1 obscuring rectangle). 1m-seg100c2 22m100-pixel thin line segment (2 obscuring rectangles). 1m-seg100c3 22m100-pixel thin line segment (3 obscuring rectangles). 1m-dseg10 22m10-pixel thin dashed segment (3 on, 2 off). 1m-dseg100 22m100-pixel thin dashed segment (3 on, 2 off). 1m-ddseg100 22m100-pixel thin double-dashed segment (3 fg, 2 bg). 1m-hseg10 22m10-pixel thin horizontal line segment. 1m-hseg100 22m100-pixel thin horizontal line segment. 1m-hseg500 22m500-pixel thin horizontal line segment. 1m-vseg10 22m10-pixel thin vertical line segment. 1m-vseg100 22m100-pixel thin vertical line segment. 1m-vseg500 22m500-pixel thin vertical line segment. 1m-whseg10 22m10-pixel wide horizontal line segment. 1m-whseg100 22m100-pixel wide horizontal line segment. 1m-whseg500 22m500-pixel wide horizontal line segment. 1m-wvseg10 22m10-pixel wide vertical line segment. 1m-wvseg100 22m100-pixel wide vertical line segment. 1m-wvseg500 22m500-pixel wide vertical line segment. 1m-line1 22m1-pixel thin (width 0) line. 1m-line10 22m10-pixel thin line. 1m-line100 22m100-pixel thin line. 1m-line500 22m500-pixel thin line. 1m-dline10 22m10-pixel thin dashed line (3 on, 2 off). 1m-dline100 22m100-pixel thin dashed line (3 on, 2 off). 1m-ddline100 22m100-pixel thin double-dashed line (3 fg, 2 bg). 1m-wline10 22m10-pixel line, line width 1. 1m-wline100 22m100-pixel line, line width 10. 1m-wline500 22m500-pixel line, line width 50. 1m-wdline100 22m100-pixel dashed line, line width 10 (30 on, 20 off). 1m-wddline100 22m100-pixel double-dashed line, line width 10 (30 fg, 20 bg). 1m-orect10 22m10x10 thin rectangle outline. 1m-orect100 22m100-pixel thin vertical line segment. 1m-orect500 22m500-pixel thin vertical line segment. 1m-worect10 22m10x10 wide rectangle outline. 1m-worect100 22m100-pixel wide vertical line segment. 1m-worect500 22m500-pixel wide vertical line segment. 1m-circle1 22m1-pixel diameter thin (line width 0) circle. 1m-circle10 22m10-pixel diameter thin circle. 1m-circle100 22m100-pixel diameter thin circle. 1m-circle500 22m500-pixel diameter thin circle. 1m-dcircle100 22m100-pixel diameter thin dashed circle (3 on, 2 off). 1m-ddcircle100 22m100-pixel diameter thin double-dashed circle (3 fg, 2 bg). 1m-wcircle10 22m10-pixel diameter circle, line width 1. 1m-wcircle100 22m100-pixel diameter circle, line width 10. 1m-wcircle500 22m500-pixel diameter circle, line width 50. 1m-wdcircle100 22m100-pixel diameter dashed circle, line width 10 (30 on, 20 off). 1m-wddcircle100 22m100-pixel diameter double-dashed circle, line width 10 (30 fg, 20 bg). 1m-pcircle10 22m10-pixel diameter thin partial circle, orientation and arc angle evenly distributed. 1m-pcircle100 22m100-pixel diameter thin partial circle. 1m-wpcircle10 22m10-pixel diameter wide partial circle. 1m-wpcircle100 22m100-pixel diameter wide partial circle. 1m-fcircle1 22m1-pixel diameter filled circle. 1m-fcircle10 22m10-pixel diameter filled circle. 1m-fcircle100 22m100-pixel diameter filled circle. 1m-fcircle500 22m500-pixel diameter filled circle. 1m-fcpcircle10 22m10-pixel diameter partial filled circle, chord fill, orientation and arc angle evenly distributed. 1m-fcpcircle100 22m100-pixel diameter partial filled circle, chord fill. 1m-fspcircle10 22m10-pixel diameter partial filled circle, pie slice fill, orientation and arc angle evenly distributed. 1m-fspcircle100 22m100-pixel diameter partial filled circle, pie slice fill. 1m-ellipse10 22m10-pixel diameter thin (line width 0) ellipse, major and minor axis sizes evenly distributed. 1m-ellipse100 22m100-pixel diameter thin ellipse. 1m-ellipse500 22m500-pixel diameter thin ellipse. 1m-dellipse100 22m100-pixel diameter thin dashed ellipse (3 on, 2 off). 1m-ddellipse100 22m100-pixel diameter thin double-dashed ellipse (3 fg, 2 bg). 1m-wellipse10 22m10-pixel diameter ellipse, line width 1. 1m-wellipse100 22m100-pixel diameter ellipse, line width 10. 1m-wellipse500 22m500-pixel diameter ellipse, line width 50. 1m-wdellipse100 22m100-pixel diameter dashed ellipse, line width 10 (30 on, 20 off). 1m-wddellipse1000m 100-pixel diameter double-dashed ellipse, line width 10 (30 fg, 20 bg). 1m-pellipse10 22m10-pixel diameter thin partial ellipse. 1m-pellipse100 22m100-pixel diameter thin partial ellipse. 1m-wpellipse10 22m10-pixel diameter wide partial ellipse. 1m-wpellipse100 22m100-pixel diameter wide partial ellipse. 1m-fellipse10 22m10-pixel diameter filled ellipse. 1m-fellipse100 22m100-pixel diameter filled ellipse. 1m-fellipse500 22m500-pixel diameter filled ellipse. 1m-fcpellipse10 22m10-pixel diameter partial filled ellipse, chord fill. 1m-fcpellipse1000m 100-pixel diameter partial filled ellipse, chord fill. 1m-fspellipse10 22m10-pixel diameter partial filled ellipse, pie slice fill. 1m-fspellipse1000m 100-pixel diameter partial filled ellipse, pie slice fill. 1m-triangle1 22mFill 1-pixel/side triangle. 1m-triangle10 22mFill 10-pixel/side triangle. 1m-triangle100 22mFill 100-pixel/side triangle. 1m-trap1 22mFill 1x1 trapezoid. 1m-trap10 22mFill 10x10 trapezoid. 1m-trap100 22mFill 100x100 trapezoid. 1m-trap300 22mFill 300x300 trapezoid. 1m-strap1 22mFill 1x1 transparent stippled trapezoid, 8x8 stipple pattern. 1m-strap10 22mFill 10x10 transparent stippled trapezoid, 8x8 stipple pattern. 1m-strap100 22mFill 100x100 transparent stippled trapezoid, 8x8 stipple pattern. 1m-strap300 22mFill 300x300 transparent stippled trapezoid, 8x8 stipple pattern. 1m-ostrap1 22mFill 10x10 opaque stippled trapezoid, 8x8 stipple pattern. 1m-ostrap10 22mFill 10x10 opaque stippled trapezoid, 8x8 stipple pattern. 1m-ostrap100 22mFill 100x100 opaque stippled trapezoid, 8x8 stipple pattern. 1m-ostrap300 22mFill 300x300 opaque stippled trapezoid, 8x8 stipple pattern. 1m-tiletrap1 22mFill 10x10 tiled trapezoid, 4x4 tile pattern. 1m-tiletrap10 22mFill 10x10 tiled trapezoid, 4x4 tile pattern. 1m-tiletrap100 22mFill 100x100 tiled trapezoid, 4x4 tile pattern. 1m-tiletrap300 22mFill 300x300 tiled trapezoid, 4x4 tile pattern. 1m-oddstrap1 22mFill 1x1 transparent stippled trapezoid, 17x15 stipple pattern. 1m-oddstrap10 22mFill 10x10 transparent stippled trapezoid, 17x15 stipple pattern. 1m-oddstrap100 22mFill 100x100 transparent stippled trapezoid, 17x15 stipple pattern. 1m-oddstrap300 22mFill 300x300 transparent stippled trapezoid, 17x15 stipple pattern. 1m-oddostrap1 22mFill 10x10 opaque stippled trapezoid, 17x15 stipple pattern. 1m-oddostrap10 22mFill 10x10 opaque stippled trapezoid, 17x15 stipple pattern. 1m-oddostrap100 22mFill 100x100 opaque stippled trapezoid, 17x15 stipple pattern. 1m-oddostrap300 22mFill 300x300 opaque stippled trapezoid, 17x15 stipple pattern. 1m-oddtiletrap1 22mFill 10x10 tiled trapezoid, 17x15 tile pattern. 1m-oddtiletrap100m Fill 10x10 tiled trapezoid, 17x15 tile pattern. 1m-oddtiletrap1000m Fill 100x100 tiled trapezoid, 17x15 tile pattern. 1m-oddtiletrap3000m Fill 300x300 tiled trapezoid, 17x15 tile pattern. 1m-bigstrap1 22mFill 1x1 transparent stippled trapezoid, 161x145 stipple pattern. 1m-bigstrap10 22mFill 10x10 transparent stippled trapezoid, 161x145 stipple pattern. 1m-bigstrap100 22mFill 100x100 transparent stippled trapezoid, 161x145 stipple pattern. 1m-bigstrap300 22mFill 300x300 transparent stippled trapezoid, 161x145 stipple pattern. 1m-bigostrap1 22mFill 10x10 opaque stippled trapezoid, 161x145 stipple pattern. 1m-bigostrap10 22mFill 10x10 opaque stippled trapezoid, 161x145 stipple pattern. 1m-bigostrap100 22mFill 100x100 opaque stippled trapezoid, 161x145 stipple pattern. 1m-bigostrap300 22mFill 300x300 opaque stippled trapezoid, 161x145 stipple pattern. 1m-bigtiletrap1 22mFill 10x10 tiled trapezoid, 161x145 tile pattern. 1m-bigtiletrap100m Fill 10x10 tiled trapezoid, 161x145 tile pattern. 1m-bigtiletrap1000m Fill 100x100 tiled trapezoid, 161x145 tile pattern. 1m-bigtiletrap3000m Fill 300x300 tiled trapezoid, 161x145 tile pattern. 1m-eschertiletrap10m Fill 1x1 tiled trapezoid, 216x208 tile pattern. 1m-eschertiletrap100m Fill 10x10 tiled trapezoid, 216x208 tile pattern. 1m-eschertiletrap1000m Fill 100x100 tiled trapezoid, 216x208 tile pattern. 1m-eschertiletrap3000m Fill 300x300 tiled trapezoid, 216x208 tile pattern. 1m-complex10 22mFill 10-pixel/side complex polygon. 1m-complex100 22mFill 100-pixel/side complex polygon. 1m-64poly10convex0m Fill 10x10 convex 64-gon. 1m-64poly100convex0m Fill 100x100 convex 64-gon. 1m-64poly10complex0m Fill 10x10 complex 64-gon. 1m-64poly100complex0m Fill 100x100 complex 64-gon. 1m-ftext 22mCharacter in 80-char line (6x13). 1m-f8text 22mCharacter in 70-char line (8x13). 1m-f9text 22mCharacter in 60-char line (9x15). 1m-f14text16 22m2-byte character in 40-char line (k14). 1m-tr10text 22mCharacter in 80-char line (Times-Roman 10). 1m-tr24text 22mCharacter in 30-char line (Times-Roman 24). 1m-polytext 22mCharacter in 20/40/20 line (6x13, Times-Roman 10, 6x13). 1m-polytext16 22m2-byte character in 7/14/7 line (k14, k24). 1m-fitext 22mCharacter in 80-char image line (6x13). 1m-f8itext 22mCharacter in 70-char image line (8x13). 1m-f9itext 22mCharacter in 60-char image line (9x15). 1m-f14itext16 22m2-byte character in 40-char image line (k14). 1m-f24itext16 22m2-byte character in 23-char image line (k24). 1m-tr10itext 22mCharacter in 80-char image line (Times-Roman 10). 1m-tr24itext 22mCharacter in 30-char image line (Times-Roman 24). 1m-scroll10 22mScroll 10x10 pixels vertically. 1m-scroll100 22mScroll 100x100 pixels vertically. 1m-scroll500 22mScroll 500x500 pixels vertically. 1m-copywinwin10 22mCopy 10x10 square from window to window. 1m-copywinwin1000m Copy 100x100 square from window to window. 1m-copywinwin5000m Copy 500x500 square from window to window. 1m-copypixwin10 22mCopy 10x10 square from pixmap to window. 1m-copypixwin1000m Copy 100x100 square from pixmap to window. 1m-copypixwin5000m Copy 500x500 square from pixmap to window. 1m-copywinpix10 22mCopy 10x10 square from window to pixmap. 1m-copywinpix1000m Copy 100x100 square from window to pixmap. 1m-copywinpix5000m Copy 500x500 square from window to pixmap. 1m-copypixpix10 22mCopy 10x10 square from pixmap to pixmap. 1m-copypixpix1000m Copy 100x100 square from pixmap to pixmap. 1m-copypixpix5000m Copy 500x500 square from pixmap to pixmap. 1m-copyplane10 22mCopy 10x10 1-bit deep plane. 1m-copyplane100 22mCopy 100x100 1-bit deep plane. 1m-copyplane500 22mCopy 500x500 1-bit deep plane. 1m-putimage10 22mPutImage 10x10 square. 1m-putimage100 22mPutImage 100x100 square. 1m-putimage500 22mPutImage 500x500 square. 1m-putimagexy10 22mPutImage XY format 10x10 square. 1m-putimagexy1000m PutImage XY format 100x100 square. 1m-putimagexy5000m PutImage XY format 500x500 square. 1m-shmput10 22mPutImage 10x10 square, MIT shared memory extension. 1m-shmput100 22mPutImage 100x100 square, MIT shared memory extension. 1m-shmput500 22mPutImage 500x500 square, MIT shared memory extension. 1m-shmputxy10 22mPutImage XY format 10x10 square, MIT shared memory extension. 1m-shmputxy100 22mPutImage XY format 100x100 square, MIT shared memory extension. 1m-shmputxy500 22mPutImage XY format 500x500 square, MIT shared memory extension. 1m-getimage10 22mGetImage 10x10 square. 1m-getimage100 22mGetImage 100x100 square. 1m-getimage500 22mGetImage 500x500 square. 1m-getimagexy10 22mGetImage XY format 10x10 square. 1m-getimagexy1000m GetImage XY format 100x100 square. 1m-getimagexy5000m GetImage XY format 500x500 square. 1m-noop 22mX protocol NoOperation. 1m-atom 22mGetAtomName. 1m-pointer 22mQueryPointer. 1m-prop 22mGetProperty. 1m-gc 22mChange graphics context. 1m-create 22mCreate child window and map using MapSubwindows. 1m-ucreate 22mCreate unmapped window. 1m-map 22mMap child window via MapWindow on parent. 1m-unmap 22mUnmap child window via UnmapWindow on parent. 1m-destroy 22mDestroy child window via DestroyWindow parent. 1m-popup 22mHide/expose window via Map/Unmap popup window. 1m-move 22mMove window. 1m-umove 22mMoved unmapped window. 1m-movetree 22mMove window via MoveWindow on parent. 1m-resize 22mResize window. 1m-uresize 22mResize unmapped window. 1m-circulate 22mCirculate lowest window to top. 1m-ucirculate 22mCirculate unmapped window to top. 1mX DEFAULTS0m There are no X defaults used by this program. 1mSEE ALSO0m X(7), xbench(1), x11perfcomp(1) 1mAUTHORS0m Joel McCormack Phil Karlton Susan Angebranndt Chris Kent Keith Packard Graeme Gill X11PERFCOMP(1) X11PERFCOMP(1) 1mNAME0m x11perfcomp - X11 server performance comparison program 1mSYNTAX0m 1mx11perfcomp 22m[ -r | -ro ] [ -l label_file ] files 1mDESCRIPTION0m The 4mx11perfcomp24m program merges the output of several 4mx11perf(1)24m runs into a nice tabular format. It takes the results in each file, fills in any missing test results if necessary, and for each test shows the objects/second rate of each server. If invoked with the -r or -ro options, it shows the relative performance of each server to the first server. Normally, 4mx11perfcomp24m uses the first file specified to determine which specific tests it should report on. Some (non-DEC :) servers may fail to perform all tests. In this case, 4mx11perfcomp24m automatically substitutes in a rate of 0.0 objects/second. Since the first file determines which tests to report on, this file must contain a superset of the tests reported in the other files, else 4mx11perfcomp24m will fail. You can provide an explicit list of tests to report on by using the -l switch to specify a file of labels. You can create a label file by using the -label option in 4mx11perf.0m 1mOPTIONS0m 4mx11perfcomp24m accepts the options listed below: 1m-r 22mSpecifies that the output should also include relative server performance. 1m-ro 22mSpecifies that the output should include only relative server performance. 1m-l label_file 22mSpecifies a label file to use. 1mX DEFAULTS0m There are no X defaults used by this program. 1mSEE ALSO0m X(7), x11perf(1) 1mAUTHORS0m Mark Moraes wrote the original scripts to compare servers. Joel McCormack just munged them together a bit. XAUTH(1) XAUTH(1) 1mNAME0m xauth - X authority file utility 1mSYNOPSIS0m 1mxauth 22m[ 1m-f 4m22mauthfile24m ] [ 1m-vqibn 22m] [ 4mcommand24m 4marg24m 4m...24m ] 1mDESCRIPTION0m The 4mxauth24m program is used to edit and display the authorization information used in connecting to the X server. This program is usually used to extract authorization records from one machine and merge them in on another (as is the case when using remote logins or granting access to other users). Commands (described below) may be entered interactively, on the 4mxauth24m command line, or in scripts. Note that this program does 1mnot 22mcontact the X server except when the generate command is used. Normally 4mxauth24m is not used to create the authority file entry in the first place; 4mxdm24m does that. 1mOPTIONS0m The following options may be used with 4mxauth24m. They may be given individually (e.g., 4m-q24m 4m-i24m) or may combined (e.g., 4m-qi24m). 1m-f 4m22mauthfile0m This option specifies the name of the authority file to use. By default, 4mxauth24m will use the file specified by the XAUTHORITY environment variable or 4m.Xauthority24m in the user's home directory. 1m-q 22mThis option indicates that 4mxauth24m should operate quietly and not print unsolicited status messages. This is the default if an 4mxauth24m command is given on the command line or if the standard output is not directed to a terminal. 1m-v 22mThis option indicates that 4mxauth24m should operate verbosely and print status messages indicating the results of various operations (e.g., how many records have been read in or written out). This is the default if 4mxauth24m is reading commands from its standard input and its standard output is directed to a terminal. 1m-i 22mThis option indicates that 4mxauth24m should ignore any authority file locks. Normally, 4mxauth24m will refuse to read or edit any authority files that have been locked by other programs (usually 4mxdm24m or another 4mxauth24m). 1m-b 22mThis option indicates that 4mxauth24m should attempt to break any authority file locks before proceeding. Use this option only to clean up stale locks. 1m-n 22mThis option indicates that 4mxauth24m should not attempt to resolve any hostnames, but should simply always print the host address as stored in the authority file. 1mCOMMANDS0m The following commands may be used to manipulate authority files: 1madd 4m22mdisplayname24m 4mprotocolname24m 4mhexkey0m An authorization entry for the indicated display using the given protocol and key data is added to the authorization file. The data is specified as an even-lengthed string of hexadecimal digits, each pair representing one octet. The first digit of each pair gives the most significant 4 bits of the octet, and the second digit of the pair gives the least significant 4 bits. For example, a 32 character hexkey would represent a 128-bit value. A protocol name consisting of just a single period is treated as an abbreviation for 4mMIT-MAGIC-COOKIE-124m. 1mgenerate 4m22mdisplayname24m 4mprotocolname24m [1mtrusted|untrusted22m] [1mtimeout 4m22mseconds24m] [1mgroup 4m22mgroup-id24m] [1mdata 4m22mhexdata24m] This command is similar to add. The main difference is that instead of requiring the user to supply the key data, it connects to the server specified in 4mdisplayname24m and uses the SECURITY extension in order to get the key data to store in the authorization file. If the server cannot be contacted or if it does not support the SECURITY extension, the command fails. Otherwise, an authorization entry for the indicated display using the given protocol is added to the authorization file. A protocol name consisting of just a single period is treated as an abbreviation for 4mMIT-MAGIC-COOKIE-124m. If the 1mtrusted 22moption is used, clients that connect using this authorization will have full run of the display, as usual. If 1muntrusted 22mis used, clients that connect using this authorization will be considered untrusted and prevented from stealing or tampering with data belonging to trusted clients. See the SECURITY extension specification for full details on the restrictions imposed on untrusted clients. The default is 1muntrusted22m. The 1mtimeout 22moption specifies how long in seconds this authorization will be valid. If the authorization remains unused (no clients are connected with it) for longer than this time period, the server purges the authorization, and future attempts to connect using it will fail. Note that the purging done by the server does 1mnot 22mdelete the authorization entry from the authorization file. The default timeout is 60 seconds. The 1mgroup 22moption specifies the application group that clients connecting with this authorization should belong to. See the application group extension specification for more details. The default is to not belong to an application group. The 1mdata 22moption specifies data that the server should use to generate the authorization. Note that this is 1mnot 22mthe same data that gets written to the authorization file. The interpretation of this data depends on the authorization protocol. The 4mhexdata24m is in the same format as the 4mhexkey0m described in the add command. The default is to send no data. 1m[n]extract 4m22mfilename24m 4mdisplayname...0m Authorization entries for each of the specified displays are written to the indicated file. If the 4mnextract24m command is used, the entries are written in a numeric format suitable for non-binary transmission (such as secure electronic mail). The extracted entries can be read back in using the 4mmerge24m and 4mnmerge24m commands. If the filename consists of just a single dash, the entries will be written to the standard output. 1m[n]list 22m[4mdisplayname24m...] Authorization entries for each of the specified displays (or all if no displays are named) are printed on the standard output. If the 4mnlist24m command is used, entries will be shown in the numeric format used by the 4mnextract24m command; otherwise, they are shown in a textual format. Key data is always displayed in the hexadecimal format given in the description of the 4madd24m command. 1m[n]merge 22m[4mfilename24m...] Authorization entries are read from the specified files and are merged into the authorization database, superceding any matching existing entries. If the 4mnmerge24m command is used, the numeric format given in the description of the 4mextract24m command is used. If a filename consists of just a single dash, the standard input will be read if it hasn't been read before. 1mremove 4m22mdisplayname24m... Authorization entries matching the specified displays are removed from the authority file. 1msource 4m22mfilename0m The specified file is treated as a script containing 4mxauth0m commands to execute. Blank lines and lines beginning with a sharp sign (#) are ignored. A single dash may be used to indicate the standard input, if it hasn't already been read. 1minfo 22mInformation describing the authorization file, whether or not any changes have been made, and from where 4mxauth24m commands are being read is printed on the standard output. 1mexit 22mIf any modifications have been made, the authority file is written out (if allowed), and the program exits. An end of file is treated as an implicit 4mexit24m command. 1mquit 22mThe program exits, ignoring any modifications. This may also be accomplished by pressing the interrupt character. 1mhelp [4m22mstring24m1m]0m A description of all commands that begin with the given string (or all commands if no string is given) is printed on the standard output. 1m? 22mA short list of the valid commands is printed on the standard output. 1mDISPLAY NAMES0m Display names for the 4madd24m, 4m[n]extract24m, 4m[n]list24m, 4m[n]merge24m, and 4mremove0m commands use the same format as the DISPLAY environment variable and the common 4m-display24m command line argument. Display-specific information (such as the screen number) is unnecessary and will be ignored. Same-machine connections (such as local-host sockets, shared memory, and the Internet Protocol hostname 4mlocalhost24m) are referred to as 4mhostname24m/unix:4mdisplaynumber24m so that local entries for different machines may be stored in one authority file. 1mEXAMPLE0m The most common use for 4mxauth24m is to extract the entry for the current display, copy it to another machine, and merge it into the user's authority file on the remote machine: % xauth extract - $DISPLAY | rsh otherhost xauth merge - The following command contacts the server :0 to create an authorization using the MIT-MAGIC-COOKIE-1 protocol. Clients that connect with this authorization will be untrusted. % xauth generate :0 . 1mENVIRONMENT0m This 4mxauth24m program uses the following environment variables: 1mXAUTHORITY0m to get the name of the authority file to use if the 4m-f24m option isn't used. 1mHOME 22mto get the user's home directory if XAUTHORITY isn't defined. 1mFILES0m 4m$HOME/.Xauthority0m default authority file if XAUTHORITY isn't defined. 1mBUGS0m Users that have unsecure networks should take care to use encrypted file transfer mechanisms to copy authorization entries between machines. Similarly, the 4mMIT-MAGIC-COOKIE-124m protocol is not very useful in unsecure environments. Sites that are interested in additional security may need to use encrypted authorization mechanisms such as Kerberos. Spaces are currently not allowed in the protocol name. Quoting could be added for the truly perverse. 1mAUTHOR0m Jim Fulton, MIT X Consortium XBIFF(1) XBIFF(1) 1mNAME0m xbiff - mailbox flag for X 1mSYNOPSIS0m 1mxbiff 22m[ -4mtoolkitoption24m ... ] [ 4m-option24m ... ] 1mDESCRIPTION0m The 4mxbiff24m program displays a little image of a mailbox. When there is no mail, the flag on the mailbox is down. When mail arrives, the flag goes up and the mailbox beeps. By default, pressing any mouse button in the image forces 4mxbiff24m to remember the current size of the mail file as being the ``empty'' size and to lower the flag. 1mOPTIONS0m 4mXbiff24m accepts all of the standard X Toolkit command line options along with the additional options listed below: 1m-help 22mThis option indicates that a brief summary of the allowed options should be printed on the standard error. 1m-update 4m22mseconds0m This option specifies the frequency in seconds at which 4mxbiff0m should update its display. If the mailbox is obscured and then exposed, it will be updated immediately. The default is 30 seconds. 1m-file 4m22mfilename0m This option specifies the name of the file which should be monitored. By default it watches your inbox in the default location for your system (some examples are /var/mail/4musername24m, /usr/spool/mail/4musername24m, /var/spool/mail/4musername24m (where 4musername24m is your login name). If the MAIL environment variable is set, the file specified by it will be monitored. 1m-volume 4m22mpercentage0m This option specifies how loud the bell should be rung when new mail comes in. 1m-shape 22mThis option indicates that the mailbox window should be shaped if masks for the empty or full images are given. The following standard X Toolkit command line arguments are commonly used with 4mxbiff:0m 1m-display 4m22mdisplay0m This option specifies the X server to contact. 1m-geometry 4m22mgeometry0m This option specifies the preferred size and position of the mailbox window. The mailbox is 48 pixels wide and 48 pixels high and will be centered in the window. 1m-bg 4m22mcolor0m This option specifies the color to use for the background of the window. 1m-bd 4m22mcolor0m This option specifies the color to use for the border of the window. 1m-bw 4m22mnumber0m This option specifies the width in pixels of the border surrounding the window. 1m-fg 4m22mcolor0m This option specifies the color to use for the foreground of the window. 1m-rv 22mThis option indicates that reverse video should be simulated by swapping the foreground and background colors. 1m-xrm 4m22mresourcestring0m This option specifies a resource string to be used. This is especially useful for setting resources that do not have separate command line options. 1mX DEFAULTS0m The application class name is XBiff. This program uses the 4mMailbox0m widget. It understands all of the core resource names and classes as well as: 1mcheckCommand (22mclass 1mCheckCommand)0m Specifies a shell command to be executed to check for new mail rather than examining the size of 1mfile22m. The specified string value is used as the argument to a 4msystem24m(3) call and may therefore contain i/o redirection. An exit status of 0 indicates that new mail is waiting, 1 indicates that there has been no change in size, and 2 indicates that the mail has been cleared. By default, no shell command is provided. 1mfile (22mclass 1mFile)0m Specifies the name of the file to monitor. The default is as described above for the 1m-file 22mcommand line option. 1monceOnly (22mclass 1mBoolean)0m Specifies that the bell is only rung the first time new mail is found and is not rung again until at least one interval has passed with no mail waiting. The window will continue to indicate the presence of new mail until it has been retrieved. The default is false. 1mwidth (22mclass 1mWidth)0m Specifies the width of the mailbox. 1mheight (22mclass 1mHeight)0m Specifies the height of the mailbox. 1mupdate (22mclass 1mInterval)0m Specifies the frequency in seconds at which the mail should be checked. The default is 30. 1mvolume (22mclass 1mVolume)0m Specifies how loud the bell should be rung. The default is 33 percent. 1mforeground (22mclass 1mForeground)0m Specifies the color for the foreground. 1mreverseVideo (22mclass 1mReverseVideo)0m Specifies that the foreground and background should be reversed. 1mflip (22mclass 1mFlip)0m Specifies whether or not the image that is shown when mail has arrived should be inverted. The default is ``true.'' 1mfullPixmap (22mclass 1mPixmap)0m Specifies a bitmap to be shown when new mail has arrived. The default is flagup. 1memptyPixmap (22mclass 1mPixmap)0m Specifies a bitmap to be shown when no new mail is present. The default is flagdown. 1mshapeWindow (22mclass 1mShapeWindow)0m Specifies whether or not the mailbox window should be shaped to the given fullPixmapMask and emptyPixmapMask. The default is false. 1mfullPixmapMask (22mclass 1mPixmapMask)0m Specifies a mask for the bitmap to be shown when new mail has arrived. The default is none. 1memptyPixmapMask (22mclass 1mPixmapMask)0m Specifies a mask for the bitmap to be shown when no new mail is present. The default is none. 1mACTIONS0m The 4mMailbox24m widget provides the following actions for use in event translations: 1mcheck() 22mThis action causes the widget to check for new mail and display the flag appropriately. 1munset() 22mThis action causes the widget to lower the flag until new mail comes in. 1mset() 22mThis action causes the widget to raise the flag until the user resets it. The default translation is : unset() 1mENVIRONMENT0m 1mDISPLAY 22mto get the default host and display number. 1mXENVIRONMENT0m to get the name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property. 1mSEE ALSO0m X(7), xrdb(1), stat(2) 1mBUGS0m The mailbox bitmaps are ugly. 1mAUTHOR0m Jim Fulton, MIT X Consortium Additional hacks by Ralph Swick, DEC/MIT Project Athena XCALC(1) XCALC(1) 1mNAME0m xcalc - scientific calculator for X 1mSYNOPSIS0m 1mxcalc 22m[-stipple] [-rpn] [-4mtoolkitoption...24m] 1mDESCRIPTION0m 4mxcalc24m is a scientific calculator desktop accessory that can emulate a TI-30 or an HP-10C. 1mOPTIONS0m 4mxcalc24m accepts all of the standard toolkit command line options along with two additional options: 1m-stipple0m This option indicates that the background of the calculator should be drawn using a stipple of the foreground and background colors. On monochrome displays improves the appearance. 1m-rpn 22mThis option indicates that Reverse Polish Notation should be used. In this mode the calculator will look and behave like an HP-10C. Without this flag, it will emulate a TI-30. 1mOPERATION0m 4mPointer24m 4mUsage:24m Operations may be performed with pointer button 1, or in some cases, with the keyboard. Many common calculator operations have keyboard accelerators. To quit, press pointer button 3 on the AC key of the TI calculator, or the ON key of the HP calculator. 4mCalculator24m 4mKey24m 4mUsage24m 4m(TI24m 4mmode):24m The numbered keys, the +/- key, and the +, -, *, /, and = keys all do exactly what you would expect them to. It should be noted that the operators obey the standard rules of precedence. Thus, entering "3+4*5=" results in "23", not "35". The parentheses can be used to override this. For example, "(1+2+3)*(4+5+6)=" results in "6*15=90". The entire number in the calculator display can be selected, in order to paste the result of a calculation into text. The action procedures associated with each function are given below. These are useful if you are interested in defining a custom calculator. The action used for all digit keys is 1mdigit(4m22mn24m1m)22m, where 4mn24m is the corresponding digit, 0..9. 1m1/x 22mReplaces the number in the display with its reciprocal. The corresponding action procedure is 1mreciprocal()22m. 1mx^2 22mSquares the number in the display. The corresponding action procedure is 1msquare()22m. 1mSQRT 22mTakes the square root of the number in the display. The corresponding action procedure is 1msquareRoot()22m. 1mCE/C 22mWhen pressed once, clears the number in the display without clearing the state of the machine. Allows you to re-enter a number if you make a mistake. Pressing it twice clears the state, also. The corresponding action procedure for TI mode is 1mclear()22m. 1mAC 22mClears the display, the state, and the memory. Pressing it with the third pointer button turns off the calculator, in that it exits the program. The action procedure to clear the state is 1moff()22m; to quit, 1mquit()22m. 1mINV 22mInvert function. See the individual function keys for details. The corresponding action procedure is 1minverse()22m. 1msin 22mComputes the sine of the number in the display, as interpreted by the current DRG mode (see DRG, below). If inverted, it computes the arcsine. The corresponding action procedure is 1msine()22m. 1mcos 22mComputes the cosine, or arccosine when inverted. The corresponding action procedure is 1mcosine()22m. 1mtan 22mComputes the tangent, or arctangent when inverted. The corresponding action procedure is 1mtangent()22m. 1mDRG 22mChanges the DRG mode, as indicated by 'DEG', 'RAD', or 'GRAD' at the bottom of of the calculator ``liquid crystal'' display. When in 'DEG' mode, numbers in the display are taken as being degrees. In 'RAD' mode, numbers are in radians, and in 'GRAD' mode, numbers are in grads. When inverted, the DRG key has a feature of converting degrees to radians to grads and vice-versa. Example: put the calculator into 'DEG' mode, and enter "45 INV DRG". The display should now show something along the lines of ".785398", which is 45 degrees converted to radians. The corresponding action procedure is 1mdegree()22m. 1me 22mThe constant 'e'. (2.7182818...). The corresponding action procedure is 1me()22m. 1mEE 22mUsed for entering exponential numbers. For example, to get "-2.3E-4" you'd enter "2 . 3 +/- EE 4 +/-". The corresponding action procedure is 1mscientific()22m. 1mlog 22mCalculates the log (base 10) of the number in the display. When inverted, it raises "10.0" to the number in the display. For example, entering "3 INV log" should result in "1000". The corresponding action procedure is 1mlogarithm()22m. 1mln 22mCalculates the log (base e) of the number in the display. When inverted, it raises "e" to the number in the display. For example, entering "e ln" should result in "1". The corresponding action procedure is 1mnaturalLog()22m. 1my^x 22mRaises the number on the left to the power of the number on the right. For example "2 y^x 3 =" results in "8", which is 2^3. For a further example, "(1+2+3) y^x (1+2) =" equals "6 y^x 3" which equals "216". The corresponding action procedure is 1mpower()22m. 1mPI 22mThe constant 'pi'. (3.1415927....) The corresponding action procedure is 1mpi()22m. 1mx! 22mComputes the factorial of the number in the display. The number in the display must be an integer in the range 0-500, though, depending on your math library, it might overflow long before that. The corresponding action procedure is 1mfactorial()22m. 1m( 22mLeft parenthesis. The corresponding action procedure for TI calculators is 1mleftParen()22m. 1m) 22mRight parenthesis. The corresponding action procedure for TI calculators is 1mrightParen()22m. 1m/ 22mDivision. The corresponding action procedure is 1mdivide()22m. 1m* 22mMultiplication. The corresponding action procedure is 1mmultiply()22m. 1m- 22mSubtraction. The corresponding action procedure is 1msubtract()22m. 1m+ 22mAddition. The corresponding action procedure is 1madd()22m. 1m= 22mPerform calculation. The TI-specific action procedure is 1mequal()22m. 1mSTO 22mCopies the number in the display to the memory location. The corresponding action procedure is 1mstore()22m. 1mRCL 22mCopies the number from the memory location to the display. The corresponding action procedure is 1mrecall()22m. 1mSUM 22mAdds the number in the display to the number in the memory location. The corresponding action procedure is 1msum()22m. 1mEXC 22mSwaps the number in the display with the number in the memory location. The corresponding action procedure for the TI calculator is 1mexchange()22m. 1m+/- 22mNegate; change sign. The corresponding action procedure is 1mnegate()22m. 1m. 22mDecimal point. The action procedure is 1mdecimal()22m. 4mCalculator24m 4mKey24m 4mUsage24m 4m(RPN24m 4mmode):24m The number keys, CHS (change sign), +, -, *, /, and ENTR keys all do exactly what you would expect them to do. Many of the remaining keys are the same as in TI mode. The differences are detailed below. The action procedure for the ENTR key is 1menter()22m. 1m<- 22mThis is a backspace key that can be used if you make a mistake while entering a number. It will erase digits from the display. (See BUGS). Inverse backspace will clear the X register. The corresponding action procedure is 1mback()22m. 1mON 22mClears the display, the state, and the memory. Pressing it with the third pointer button turns off the calculator, in that it exits the program. To clear state, the action procedure is 1moff22m; to quit, 1mquit()22m. 1mINV 22mInverts the meaning of the function keys. This would be the 4mf24m key on an HP calculator, but 4mxcalc24m does not display multiple legends on each key. See the individual function keys for details. 1m10^x 22mRaises "10.0" to the number in the top of the stack. When inverted, it calculates the log (base 10) of the number in the display. The corresponding action procedure is 1mtenpower()22m. 1me^x 22mRaises "e" to the number in the top of the stack. When inverted, it calculates the log (base e) of the number in the display. The action procedure is 1mepower()22m. 1mSTO 22mCopies the number in the top of the stack to a memory location. There are 10 memory locations. The desired memory is specified by following this key with a digit key. 1mRCL 22mPushes the number from the specified memory location onto the stack. 1mSUM 22mAdds the number on top of the stack to the number in the specified memory location. 1mx:y 22mExchanges the numbers in the top two stack positions, the X and Y registers. The corresponding action procedure is 1mXexchangeY()22m. 1mR v 22mRolls the stack downward. When inverted, it rolls the stack upward. The corresponding action procedure is 1mroll()22m. 4mblank24m These keys were used for programming functions on the HP-10C. Their functionality has not been duplicated in 4mxcalc24m. Finally, there are two additional action procedures: 1mbell()22m, which rings the bell; and 1mselection()22m, which performs a cut on the entire number in the calculator's ``liquid crystal'' display. 1mACCELERATORS0m Accelerators are shortcuts for entering commands. 4mxcalc24m provides some sample keyboard accelerators; also users can customize accelerators. The numeric keypad accelerators provided by 4mxcalc24m should be intuitively correct. The accelerators defined by 4mxcalc24m on the main keyboard are given below: TI Key HP Key Keyboard Accelerator TI Function HP Function SQRT SQRT r squareRoot() squareRoot() AC ON space clear() clear() AC <- Delete clear() back() AC <- Backspace clear() back() AC <- Control-H clear() back() AC Clear clear() AC ON q quit() quit() AC ON Control-C quit() quit() INV i i inverse() inverse() sin s s sine() sine() cos c c cosine() cosine() tan t t tangent() tangent() DRG DRG d degree() degree() e e e() ln ln l naturalLog() naturalLog() y^x y^x ^ power() power() PI PI p pi() pi() x! x! ! factorial() factorial() ( ( leftParen() ) ) rightParen() / / / divide() divide() * * * multiply() multiply() - - - subtract() subtract() + + + add() add() = = equal() 0..9 0..9 0..9 digit() digit() . . . decimal() decimal() +/- CHS n negate() negate() x:y x XexchangeY() ENTR Return enter() ENTR Linefeed enter() 1mCUSTOMIZATION0m The application class name is XCalc. 4mxcalc24m has an enormous application defaults file which specifies the position, label, and function of each key on the calculator. It also gives translations to serve as keyboard accelerators. Because these resources are not specified in the source code, you can create a customized calculator by writing a private application defaults file, using the Athena Command and Form widget resources to specify the size and position of buttons, the label for each button, and the function of each button. The foreground and background colors of each calculator key can be individually specified. For the TI calculator, a classical color resource specification might be: XCalc.ti.Command.background: gray50 XCalc.ti.Command.foreground: white For each of buttons 20, 25, 30, 35, and 40, specify: XCalc.ti.button20.background: black XCalc.ti.button20.foreground: white For each of buttons 22, 23, 24, 27, 28, 29, 32, 33, 34, 37, 38, and 39: XCalc.ti.button22.background: white XCalc.ti.button22.foreground: black 1mWIDGET HIERARCHY0m In order to specify resources, it is useful to know the hierarchy of the widgets which compose 4mxcalc24m. In the notation below, indentation indicates hierarchical structure. The widget class name is given first, followed by the widget instance name. XCalc xcalc Form ti 4mor24m hp 4m(the24m 4mname24m 4mdepends24m 4mon24m 4mthe24m 4mmode)0m Form bevel Form screen Label M Toggle LCD Label INV Label DEG Label RAD Label GRAD Label P Command button1 Command button2 Command button3 4mand24m 4mso24m 4mon,24m 4m...0m Command button38 Command button39 Command button40 1mAPPLICATION RESOURCES0m 1mrpn 22m(Class 1mRpn22m) Specifies that the rpn mode should be used. The default is TI mode. 1mstipple 22m(Class 1mStipple22m) Indicates that the background should be stippled. The default is ``on'' for monochrome displays, and ``off'' for color displays. 1mcursor 22m(Class 1mCursor22m) The name of the symbol used to represent the pointer. The default is ``hand2''. 1mCOLORS0m If you would like xcalc to use its ti colors, include the following in the #ifdef COLOR section of the file you read with xrdb: *customization: -color This will cause xcalc to pick up the colors in the app-defaults color customization file: 4m/usr/X11R6/lib/X11/app-defaults/XCalc-color24m. 1mSEE ALSO0m X(7), xrdb(1), the Athena Widget Set 1mBUGS0m HP mode: A bug report claims that the sequence of keys 5, ENTER, <- should clear the display, but it doesn't. 1mCOPYRIGHT0m Copyright 1994 X Consortium See 4mX(7)24m for a full statement of rights and permissions. 1mAUTHORS0m John Bradley, University of Pennsylvania Mark Rosenstein, MIT Project Athena Donna Converse, MIT X Consortium XCLIPBOARD(1) XCLIPBOARD(1) 1mNAME0m xclipboard - X clipboard client 1mSYNOPSIS0m 1mxclipboard 22m[ 4m-toolkitoption24m ... ] [ 1m-w 22m] [ 1m-nw 22m] 1mDESCRIPTION0m The 4mxclipboard24m program is used to collect and display text selections that are sent to the CLIPBOARD by other clients. It is typically used to save CLIPBOARD selections for later use. It stores each CLIPBOARD selection as a separate string, each of which can be selected. Each time CLIPBOARD is asserted by another application, 4mxclipboard24m transfers the contents of that selection to a new buffer and displays it in the text window. Buffers are never automatically deleted, so you'll want to use the delete button to get rid of useless items. Since 4mxclipboard24m uses a Text Widget to display the contents of the clipboard, text sent to the CLIPBOARD may be re-selected for use in other applications. 4mxclipboard24m also responds to requests for the CLIPBOARD selection from other clients by sending the entire contents of the currently displayed buffer. An 4mxclipboard24m window has the following buttons across the top: 4mquit24m When this button is pressed, 4mxclipboard24m exits. 4mdelete24m When this button is pressed, the current buffer is deleted and the next one displayed. 4mnew24m Creates a new buffer with no contents. Useful in constructing a new CLIPBOARD selection by hand. 4msave24m Displays a File Save dialog box. Pressing the Accept button saves the currently displayed buffer to the file specified in the text field. 4mnext24m Displays the next buffer in the list. 4mprevious0m Displays the previous buffer. 1mOPTIONS0m The 4mxclipboard24m program accepts all of the standard X Toolkit command line options as well as the following: 1m-w 22mThis option indicates that lines of text that are too long to be displayed on one line in the clipboard should wrap around to the following lines. 1m-nw 22mThis option indicates that long lines of text should not wrap around. This is the default behavior. 1mWIDGETS0m In order to specify resources, it is useful to know the hierarchy of the widgets which compose 4mxclipboard24m. In the notation below, indentation indicates hierarchical structure. The widget class name is given first, followed by the widget instance name. XClipboard xclipboard Form form Command Quit Command delete Command new Command Save Command next Command prev Label index Text text TransientShell fileDialogShell Dialog fileDialog Label label Command accept Command cancel Text value TransientShell failDialogShell Dialog failDialog Label label Command continue 1mSENDING/RETRIEVING CLIPBOARD CONTENTS0m Text is copied to the clipboard whenever a client asserts ownership of the 1mCLIPBOARD 22mselection. Text is copied from the clipboard whenever a client requests the contents of the 1mCLIPBOARD 22mselection. Examples of event bindings that a user may wish to include in a resource configuration file to use the clipboard are: *VT100.Translations: #override \ : select-end(CLIPBOARD) \n\ : insert-selection(PRIMARY,CLIPBOARD) \n\ : ignore () 1mSEE ALSO0m X(7), xcutsel(1), xterm(1), individual client documentation for how to make a selection and send it to the CLIPBOARD. 1mENVIRONMENT0m 1mDISPLAY 22mto get the default host and display number. 1mXENVIRONMENT0m to get the name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property. 1mFILES0m 4m/usr/X11R6/lib/X11/app-defaults/XClipboard0m specifies required resources 1mAUTHOR0m Ralph R. Swick, DEC/MIT Project Athena Chris D. Peterson, MIT X Consortium Keith Packard, MIT X Consortium XCLOCK(1) XCLOCK(1) 1mNAME0m xclock - analog / digital clock for X 1mSYNOPSIS0m 1mxclock 22m[ 1m-help 22m] [ 1m-analog 22m] [ 1m-digital 22m] [ 1m-brief 22m] [ 1m-chime 22m] [ 1m-hd0m 4mcolor24m ] [ 1m-hl 4m22mcolor24m ] [ 1m-update 4m22mseconds24m ] [ 1m-strftime 4m22mformat24m ] [ 1m-padding 4m22mnumber24m ] [ 1m-norender 22m] [ 1m-render 22m] [ 1m-sharp 22m] [ 1m-face 4m22mpattern0m ] 1mDESCRIPTION0m The 4mxclock24m program displays the time in analog or digital form. The time is continuously updated at a frequency which may be specified by the user. 1mOPTIONS0m 4mXclock24m accepts all of the standard X Toolkit command line options along with the additional options listed below: 1m-help 22mThis option indicates that a brief summary of the allowed options should be printed on the standard error. 1m-analog 22mThis option indicates that a conventional 12 hour clock face with tick marks and hands should be used. This is the default. 1m-digital 22mor 1m-d0m This option indicates that a 24 hour digital clock should be used. 1m-brief 22mThis option indicates that the digital clock should only display the hours and minutes fields. The default is to show the full time and date information. 1m-utime 22mor 1m-d0m This option indicates that a digital clock should display seconds since the Epoch (in format '970012340 seconds since Epoch' instead of a standard 24-hour time. 1m-strftime 4m22mformat0m This option allows an strftime(3) format string to be specified for the digital clock's display. 1m-twelve 22mThis option indicates that a digital clock should display the time in twelve hour format. 1m-twentyfour0m This option indicates that a digital clock should display the time in twenty-four hour format. This is the default when a digital clock is used. 1m-chime 22mThis option indicates that the clock should chime once on the half hour and twice on the hour. 1m-hands 4m22mcolor24m (or 1m-hd 4m22mcolor24m) This option specifies the color of the hands on an analog clock. The default is 4mblack24m. This option is effectively ignored when Xrender is in use. 1m-highlight 4m22mcolor24m (or 1m-hl 4m22mcolor24m) This option specifies the color of the edges of the hands on an analog clock, and is only useful on color displays. The default is 4mblack24m. This option is effectively ignored when Xrender is in use. 1m-update 4m22mseconds0m This option specifies the frequency in seconds at which 4mxclock0m should update its display. If the clock is obscured and then exposed, it will be updated immediately. A value of 30 seconds or less will enable a second hand on an analog clock. The default is 60 seconds. 1m-padding 4m22mnumber0m This option specifies the width in pixels of the padding between the window border and clock text or picture. The default is 10 on a digital clock and 8 on an analog clock. 1m-render 22mThis option tells 4mxclock24m to use the Xrender extension to draw an anti-aliased face. This is the default if 4mxclock24m has been compiled with Xrender support. Note that the color selection options and resources used when Xrender is in effect differ from the standard options. 1m-norender0m This option turns off the use of Xrender to draw the clock. 1m-sharp 22mThis option tells 4mxclock24m to use sharper edges when drawn using the Xrender extension. 1m-face 4m22mpattern0m This option specifies the font to use in digital mode when the Xrender extension is used. 1mX DEFAULTS0m This program uses the 4mClock24m widget. It understands all of the core resource names and classes as well as: 1mwidth (22mclass 1mWidth)0m Specifies the width of the clock. The default for analog clocks is 164 pixels; the default for digital clocks is whatever is needed to hold the clock when displayed in the chosen font. 1mheight (22mclass 1mHeight)0m Specifies the height of the clock. The default for analog clocks is 164 pixels; the default for digital clocks is whatever is needed to hold the clock when displayed in the chosen font. 1mupdate (22mclass 1mInterval)0m Specifies the frequency in seconds at which the time should be redisplayed. 1mforeground (22mclass 1mForeground)0m Specifies the color for the tick marks. The default depends on whether 4mreverseVideo24m is specified. If 4mreverseVideo24m is specified the default is 4mlwhite24m, otherwise the default is 4mblack24m. 1mhands (22mclass 1mForeground)0m Specifies the color of the insides of the clock's hands. The default depends on whether 4mreverseVideo24m is specified. If 4mreverseVideo24m is specified the default is 4mlwhite24m, otherwise the default is 4mblack24m. Note that this resource is not used when Xrender is in effect. 1mhighlight (22mclass 1mForeground)0m Specifies the color used to highlight the clock's hands. The default is depends on whether 4mreverseVideo24m is specified. If 4mreverseVideo0m is specified the default is 4mlwhite24m, otherwise the default is 4mblack24m. Note that this resource is not used when Xrender is in effect. 1manalog (22mclass 1mBoolean)0m Specifies whether or not an analog clock should be used instead of a digital one. The default is True. 1mtwentyfour (22mclass 1mBoolean)0m Specifies whether or not a digital clock should display the time in twenty-four hour format. The default is True. 1mchime (22mclass 1mBoolean)0m Specifies whether or not a bell should be rung on the hour and half hour. 1mpadding (22mclass 1mMargin)0m Specifies the amount of internal padding in pixels to be used. The default is 8. 1mfont (22mclass 1mFont)0m Specifies the font to be used for the digital clock. Note that variable width fonts currently will not always display correctly. This font is only used when Xrender is not in effect. 1mrender (22mclass 1mBoolean)0m Specifies whether or not the Xrender extension should be used for the display. The default is True if 4mxclock24m has been compiled with Xrender support. When Xrender is in effect, the following additional resources are understood: 1mface (22mclass 1mFaceName)0m Specify the pattern for the font to be used for the digital clock when Xrender is used. 1msharp (22mclass 1mBoolean)0m Specifies if sharp edges should be used when rendering the clock. The default is False. 1mbuffer (22mclass 1mBoolean)0m Specifies that the updates of the image are drawn to a pixmap before copied into the window instead drawing them into the window directly. The defaults of the following color resources depend on whether 4mreverseVideo24m is specified. If 4mreverseVideo24m is specified the default is 4mlwhite24m, otherwise the default is 4mblack24m. 1mhourColor (22mclass 1mForeground)0m The color of the hour hand. 1mminuteColor (22mclass 1mForeground)0m The color of the minute hand. 1msecondColor (22mclass 1mForeground)0m The color of the second hand. 1mmajorColor (22mclass 1mForeground)0m The color of the major scale ticks (i. e. each five minutes). 1mminorColor (22mclass 1mForeground)0m The color of the minor scale ticks (between major ticks). 1mWIDGETS0m In order to specify resources, it is useful to know the hierarchy of the widgets which compose 4mxclock24m. In the notation below, indentation indicates hierarchical structure. The widget class name is given first, followed by the widget instance name. XClock xclock Clock clock 1mENVIRONMENT0m 1mDISPLAY 22mto get the default host and display number. 1mXENVIRONMENT0m to get the name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property. 1mFILES0m 4m/usr/X11R6/lib/X11/app-defaults/XClock0m specifies required resources 1mSEE ALSO0m X(7), xrdb(1), time(3C) 1mBUGS0m 4mXclock24m believes the system clock. When in digital mode, the string should be centered automatically. 1mAUTHORS0m Tony Della Fera (MIT-Athena, DEC) Dave Mankins (MIT-Athena, BBN) Ed Moy (UC Berkeley) XCMSDB(1) XCMSDB(1) 1mNAME0m xcmsdb - Device Color Characterization utility for X Color Management System 1mSYNOPSIS0m 1mxcmsdb 22m[ 1m-query 22m] [ 1m-remove 22m] [ 1m-format 3222m|1m1622m|1m8 22m] [ 4mfilename24m ] 1mDESCRIPTION0m 4mxcmsdb24m is used to load, query, or remove Device Color Characterization data stored in properties on the root window of the screen as specified in section 7, Device Color Characterization, of the ICCCM. Device Color Characterization data (also called the Device Profile) is an integral part of Xlib's X Color Management System (Xcms), necessary for proper conversion of color specification between device-independent and device-dependent forms. Xcms uses 3x3 matrices stored in the XDCCC_LINEAR_RGB_MATRICES property to convert color specifications between CIEXYZ and RGB Intensity (XcmsRGBi, also referred to as linear RGB). Xcms then uses display gamma information stored in the XDCCC_LINEAR_RGB_CORRECTION property to convert color specifications between RGBi and RGB device (XcmsRGB, also referred to as device RGB). Note that Xcms allows clients to register 4mfunction24m 4msets24m in addition to its built-in function set for CRT color monitors. Additional function sets may store their device profile information in other properties in function set specific format. This utility is unaware of these non- standard properties. The ASCII readable contents of 4mfilename24m (or the standard input if no input file is given) are appropriately transformed for storage in properties, provided the 1m-query 22mor 1m-remove 22moptions are not specified. 1mOPTIONS0m 4mxcmsdb24m program accepts the following options: 1m-query 22mThis option attempts to read the XDCCC properties off the screen's root window. If successful, it transforms the data into a more readable format, then sends the data to standard out. 1m-remove 22mThis option attempts to remove the XDCCC properties on the screen's root window. 1m-format 3222m|1m1622m|1m80m Specifies the property format (32, 16, or 8 bits per entry) for the XDCCC_LINEAR_RGB_CORRECTION property. Precision of encoded floating point values increases with the increase in bits per entry. The default is 32 bits per entry. 1mSEE ALSO0m xprop(1), Xlib documentation 1mENVIRONMENT0m 1mDISPLAY 22mto figure out which display and screen to use. 1mAUTHOR0m Chuck Adams, Tektronix Inc. Al Tabayoyon, SynChromatics Inc. (added multi-visual support) XCONSOLE(1) XCONSOLE(1) 1mNAME0m xconsole - monitor system console messages with X 1mSYNOPSIS0m 1mxconsole 22m[-4mtoolkitoption24m ...] [-file 4mfile-name24m] [-notify] [-stripNonprint] [-daemon] [-verbose] [-exitOnFail] 1mDESCRIPTION0m The 4mxconsole24m program displays messages which are usually sent to /dev/console. 1mOPTIONS0m 4mXconsole24m accepts all of the standard X Toolkit command line options along with the additional options listed below: 1m-file 4m22mfile-name0m To monitor some other device, use this option to specify the device name. This does not work on regular files as they are always ready to be read from. 1m-notify -nonotify0m When new data are received from the console and the notify option is set, the icon name of the application has " *" appended, so that it is evident even when the application is iconified. -notify is the default. 1m-daemon 22mThis option causes 4mxconsole24m to place itself in the background, using fork/exit. 1m-verbose0m When set, this option directs 4mxconsole24m to display an informative message in the first line of the text buffer. 1m-exitOnFail0m When set, this option directs 4mxconsole24m to exit when it is unable to redirect the console output. 1m-saveLines 4m22mcount0m When set, 4mxconsole24m only preserves 4mcount24m lines of message history instead of growing the text buffer without bound (a 4mcount24m of zero - the default - is treated as placing no limit on the history). 1mX DEFAULTS0m This program uses the 4mAthena24m 4mText24m widget, look in the 4mAthena24m 4mWidget24m 4mSet0m documentation for controlling it. 4mXconsole24m otherwise accepts resources of the same names as the command- line options (without the leading dash). "file" is a string type, "saveLines" an integer, and the remaining options are booleans. 1mWIDGETS0m In order to specify resources, it is useful to know the hierarchy of the widgets which compose 4mxconsole24m. In the notation below, indentation indicates hierarchical structure. The widget class name is given first, followed by the widget instance name. XConsole xconsole XConsole text 1mENVIRONMENT0m 1mDISPLAY 22mto get the default host and display number. 1mXENVIRONMENT0m to get the name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property. 1mFILES0m 4m/usr/X11R6/lib/X11/app-defaults/XConsole0m specifies required resources 1mSEE ALSO0m X(7), xrdb(1), Athena Text widget 1mAUTHOR0m Keith Packard (MIT X Consortium) XCURSORGEN(1) XCURSORGEN(1) 1mNAME0m xcursorgen - create an X cursor file from a collection of PNG images 1mSYNOPSIS0m 1mxcursorgen 22m[4mconfig-file24m] [4moutput-file24m] 1mDESCRIPTION0m Xcursorgen reads the config-file to find the list of cursor images along with their hotspot and nominal size information. Xcursorgen converts all of the images to Xcursor format and writes them to the output-file. Each line in the config file is of the form: Multiple images with the same are used to create animated cursors, the value on each line indicates how long each image should be displayed before switching to the next. can be elided for static cursors. 1mSEE ALSO0m Xcursor(3x) XCUTSEL(1) XCUTSEL(1) 1mNAME0m xcutsel - interchange between cut buffer and selection 1mSYNOPSIS0m 1mxcutsel 22m[ 4m-toolkitoption24m ...] [-selection 4mselection24m] [-cutbuffer 4mnumber24m] 1mDESCRIPTION0m The 4mxcutsel24m program is used to copy the current selection into a cut buffer and to make a selection that contains the current contents of the cut buffer. It acts as a bridge between applications that don't support selections and those that do. By default, 4mxcutsel24m will use the selection named PRIMARY and the cut buffer CUT_BUFFER0. Either or both of these can be overridden by command line arguments or by resources. An 4mxcutsel24m window has the following buttons: 4mquit0m When this button is pressed, 4mxcutsel24m exits. Any selections held by 4mxcutsel24m are automatically released. 4mcopy24m 4mPRIMARY24m 4mto24m 4m00m When this button is pressed, 4mxcutsel24m copies the current selection into the cut buffer. 4mcopy24m 4m024m 4mto24m 4mPRIMARY0m When this button is pressed, 4mxcutsel24m converts the current contents of the cut buffer into the selection. The button labels reflect the selection and cutbuffer selected by command line options or through the resource database. When the ``copy 0 to PRIMARY'' button is activated, the button will remain inverted as long as 4mxcutsel24m remains the owner of the selection. This serves to remind you which client owns the current selection. Note that the value of the selection remains constant; if the cutbuffer is changed, you must again activate the copy button to retrieve the new value when desired. 1mOPTIONS0m 4mXcutsel24m accepts all of the standard X Toolkit command line options as well as the following: 1m-selection 4m22mname0m This option specifies the name of the selection to use. The default is PRIMARY. The only supported abbreviations for this option are ``-select'', ``-sel'' and ``-s'', as the standard toolkit option ``-selectionTimeout'' has a similar name. 1m-cutbuffer 4m22mnumber0m This option specifies the cut buffer to use. The default is cut buffer 0. 1mX DEFAULTS0m This program accepts all of the standard X Toolkit resource names and classes as well as: 1mselection (22mclass 1mSelection)0m This resource specifies the name of the selection to use. The default is PRIMARY. 1mcutBuffer (22mclass 1mCutBuffer)0m This resource specifies the number of the cut buffer to use. The default is 0. 1mWIDGET NAMES0m The following instance names may be used when user configuration of the labels in them is desired: 1msel-cut (22mclass 1mCommand)0m This is the ``copy SELECTION to BUFFER'' button. 1mcut-sel (22mclass 1mCommand)0m This is the ``copy BUFFER to SELECTION'' button. 1mquit (22mclass 1mCommand)0m This is the ``quit'' button. 1mSEE ALSO0m X(7), xclipboard(1), xterm(1), text widget documentation, individual client documentation for how to make a selection. 1mBUGS0m There is no way to change the name of the selection or the number of the cut buffer while the program is running. 1mAUTHOR0m Ralph R. Swick, DEC/MIT Project Athena XDITVIEW(1) XDITVIEW(1) 1mNAME0m xditview - display ditroff output 1mSYNOPSIS0m 1mxditview 22m[ -4mtoolkitoption24m ... ] [ -4moption24m ... ] [ 4mfilename24m ] 1mDESCRIPTION0m The 4mxditview24m program displays 4mditroff24m output on an X display. It uses no special metrics and automatically converts the printer coordinates into screen coordinates; using the user-specified screen resolution, rather than the actual resolution so that the appropriate fonts can be found. If ``1m-22m'' is given as the 4mfilename,24m 4mxditview24m reads from standard input. If ``1m|22m'' is the first character of 4mfilename,24m 4mxditview24m forks 4msh0m to run the rest of the ``file name'' and uses the standard output of that command. 1mOPTIONS0m 4mXditview24m accepts all of the standard X Toolkit command line options along with the additional options listed below: 1m-page 4m22mpage-number0m This option specifies the page number of the document to be displayed at start up time. 1m-resolution 4m22mscreen-resolution0m This specifies the desired screen resolution to use; fonts will be opened by requesting this resolution field in the XLFD names. 1m-noPolyText0m Some X servers incorrectly implement PolyText with multiple strings per request. This option suppresses the use of this feature in 4mxditview.0m 1m-backingStore 4m22mbacking-store-type0m Redisplay can take up to a second or so; this option causes the server to save the window contents so that when it is scrolled around the viewport, the window is painted from contents saved in backing store. 4mbacking-store-type24m can be one of 1mAlways22m, 1mWhenMapped 22mor 1mNotUseful22m. The following standard X Toolkit command line arguments are commonly used with 4mxditview:0m 1m-bg 4m22mcolor0m This option specifies the color to use for the background of the window. The default is 4mwhite24m. 1m-bd 4m22mcolor0m This option specifies the color to use for the border of the window. The default is 4mblack24m. 1m-bw 4m22mnumber0m This option specifies the width in pixels of the border surrounding the window. 1m-fg 4m22mcolor0m This option specifies the color to use for displaying text. The default is 4mblack24m. 1m-fn 4m22mfont0m This option specifies the font to be used for displaying widget text. The default is 4mfixed24m. 1m-rv 22mThis option indicates that reverse video should be simulated by swapping the foreground and background colors. 1m-geometry 4m22mgeometry0m This option specifies the preferred size and position of the window. 1m-display 4m22mhost24m1m:4m22mdisplay0m This option specifies the X server to contact. 1m-xrm 4m22mresourcestring0m This option specifies a resource string to be used. 1mX DEFAULTS0m This program uses a 4mDvi24m widget. It understands all of the core resource names and classes as well as: 1mwidth (22mclass 1mWidth)0m Specifies the width of the window. 1mheight (22mclass 1mHeight)0m Specifies the height of the window. 1mforeground (22mclass 1mForeground)0m Specifies the default foreground color. 1mfont (22mclass 1mFont)0m Specifies the font to be used for error messages. 1mFontMap (class FontMap)0m To associate the 4mditroff24m fonts with appropriate X fonts, this string resource contains a set of new-line separated specifications, each of which consists of a ditroff name, some white space and an XLFD pattern with * characters in appropriate places to allow all sizes to be listed. The default fontMap is: R -*-times-medium-r-normal--*-*-*-*-*-*-iso8859-1\n\ I -*-times-medium-i-normal--*-*-*-*-*-*-iso8859-1\n\ B -*-times-bold-r-normal--*-*-*-*-*-*-iso8859-1\n\ F -*-times-bold-i-normal--*-*-*-*-*-*-iso8859-1\n\ BI -*-times-bold-i-normal--*-*-*-*-*-*-iso8859-1\n\ C -*-courier-medium-r-normal--*-*-*-*-*-*-iso8859-1\n\ CO -*-courier-medium-o-normal--*-*-*-*-*-*-iso8859-1\n\ CB -*-courier-bold-r-normal--*-*-*-*-*-*-iso8859-1\n\ CF -*-courier-bold-o-normal--*-*-*-*-*-*-iso8859-1\n\ H -*-helvetica-medium-r-normal--*-*-*-*-*-*-iso8859-1\n\ HO -*-helvetica-medium-o-normal--*-*-*-*-*-*-iso8859-1\n\ HB -*-helvetica-bold-r-normal--*-*-*-*-*-*-iso8859-1\n\ HF -*-helvetica-bold-o-normal--*-*-*-*-*-*-iso8859-1\n\ N -*-new century schoolbook-medium-r-normal--*-*-*-*-*-*-iso8859-1\n\ NI -*-new century schoolbook-medium-i-normal--*-*-*-*-*-*-iso8859-1\n\ NB -*-new century schoolbook-bold-r-normal--*-*-*-*-*-*-iso8859-1\n\ NF -*-new century schoolbook-bold-i-normal--*-*-*-*-*-*-iso8859-1\n\ A -*-charter-medium-r-normal--*-*-*-*-*-*-iso8859-1\n\ AI -*-charter-medium-i-normal--*-*-*-*-*-*-iso8859-1\n\ AB -*-charter-bold-r-normal--*-*-*-*-*-*-iso8859-1\n\ AF -*-charter-bold-i-normal--*-*-*-*-*-*-iso8859-1\n\ S -*-symbol-medium-r-normal--*-*-*-*-*-*-adobe-fontspecific\n\ S2 -*-symbol-medium-r-normal--*-*-*-*-*-*-adobe-fontspecific\n 1mUSING XDITVIEW WITH DITROFF0m You can use any ditroff output file with 4mxditview,24m although files which use the fonts appropriate to the fontMap will look more accurate on the screen. On servers which support scaled fonts, all requested font sizes will be accurately reflected on the screen; for servers which do not support scaled 4mxditview24m will use the closest font from the same family. 1mSEE ALSO0m 4mX24m(7), 4mxrdb24m(1), 4mditroff24m(1), 4mX24m 4mLogical24m 4mFont24m 4mDescription24m 4mConventions0m 1mORIGIN0m Portions of this program originated in 4mxtroff24m 4mwhich24m 4mwas24m 4mderived24m from 4msuntroff.0m 1mCOPYRIGHT0m Copyright 1994 X Consortium See 4mX24m(1) for a full statement of rights and permissions. 1mAUTHORS0m Keith Packard (MIT X Consortium) Richard L. Hyde (Purdue) David Slattengren (Berkeley) Malcom Slaney (Schlumberger Palo Alto Research) Mark Moraes (University of Toronto) XDM(1) XDM(1) 1mNAME0m xdm - X Display Manager with support for XDMCP, host chooser 1mSYNOPSIS0m 1mxdm 22m[ 1m-config 4m22mconfiguration_file24m ] [ 1m-nodaemon 22m] [ 1m-debug 4m22mdebug_level24m ] [ 1m-error 4m22merror_log_file24m ] [ 1m-resources 4m22mresource_file24m ] [ 1m-server0m 4mserver_entry24m ] [ 1m-session 4m22msession_program24m ] 1mDESCRIPTION0m 4mXdm24m manages a collection of X displays, which may be on the local host or remote servers. The design of 4mxdm24m was guided by the needs of X terminals as well as The Open Group standard XDMCP, the 4mX24m 4mDisplay0m 4mManager24m 4mControl24m 4mProtocol24m. 4mXdm24m provides services similar to those provided by 4minit24m, 4mgetty24m and 4mlogin24m on character terminals: prompting for login name and password, authenticating the user, and running a ``session.'' A ``session'' is defined by the lifetime of a particular process; in the traditional character-based terminal world, it is the user's login shell. In the 4mxdm24m context, it is an arbitrary session manager. This is because in a windowing environment, a user's login shell process does not necessarily have any terminal-like interface with which to connect. When a real session manager is not available, a window manager or terminal emulator is typically used as the ``session manager,'' meaning that termination of this process terminates the user's session. When the session is terminated, 4mxdm24m resets the X server and (optionally) restarts the whole process. When 4mxdm24m receives an Indirect query via XDMCP, it can run a 4mchooser0m process to perform an XDMCP BroadcastQuery (or an XDMCP Query to specified hosts) on behalf of the display and offer a menu of possible hosts that offer XDMCP display management. This feature is useful with X terminals that do not offer a host menu themselves. 4mXdm24m can be configured to ignore BroadcastQuery messages from selected hosts. This is useful when you don't want the host to appear in menus produced by 4mchooser24m or X terminals themselves. Because 4mxdm24m provides the first interface that users will see, it is designed to be simple to use and easy to customize to the needs of a particular site. 4mXdm24m has many options, most of which have reasonable defaults. Browse through the various sections of this manual, picking and choosing the things you want to change. Pay particular attention to the 1mSession Program 22msection, which will describe how to set up the style of session desired. 1mOVERVIEW0m 4mxdm24m is highly configurable, and most of its behavior can be controlled by resource files and shell scripts. The names of these files themselves are resources read from the file 4mxdm-config24m or the file named by the 1m-config 22moption. 4mxdm24m offers display management two different ways. It can manage X servers running on the local machine and specified in 4mXservers24m, and it can manage remote X servers (typically X terminals) using XDMCP (the XDM Control Protocol) as specified in the 4mXaccess24m file. The resources of the X clients run by 4mxdm24m outside the user's session, including 4mxdm24m's own login window, can be affected by setting resources in the 4mXresources24m file. For X terminals that do not offer a menu of hosts to get display management from, 4mxdm24m can collect willing hosts and run the 4mchooser0m program to offer the user a menu. For X displays attached to a host, this step is typically not used, as the local host does the display management. After resetting the X server, 4mxdm24m runs the 4mXsetup24m script to assist in setting up the screen the user sees along with the 4mxlogin24m widget. The 4mxlogin24m widget, which 4mxdm24m presents, offers the familiar login and password prompts. After the user logs in, 4mxdm24m runs the 4mXstartup24m script as root. Then 4mxdm24m runs the 4mXsession24m script as the user. This system session file may do some additional startup and typically runs the 4m.xsession0m script in the user's home directory. When the 4mXsession24m script exits, the session is over. At the end of the session, the 4mXreset24m script is run to clean up, the X server is reset, and the cycle starts over. The file 4mXDMLOGDIR/xdm.log24m will contain error messages from 4mxdm24m and anything output to stderr by 4mXsetup,24m 4mXstartup,24m 4mXsession24m or 4mXreset24m. When you have trouble getting 4mxdm24m working, check this file to see if 4mxdm24m has any clues to the trouble. 1mOPTIONS0m All of these options, except 1m-config 22mitself, specify values that can also be specified in the configuration file as resources. 1m-config 4m22mconfiguration_file0m Names the configuration file, which specifies resources to control the behavior of 4mxdm.24m 4m/usr/X11R6/lib/X11/xdm/xdm-config0m is the default. See the section 1mConfiguration File22m. 1m-nodaemon0m Specifies ``false'' as the value for the 1mDisplayManager.daemonMode 22mresource. This suppresses the normal daemon behavior, which is for 4mxdm24m to close all file descriptors, disassociate itself from the controlling terminal, and put itself in the background when it first starts up. 1m-debug 4m22mdebug_level0m Specifies the numeric value for the 1mDisplayManager.debugLevel0m resource. A non-zero value causes 4mxdm24m to print lots of debugging statements to the terminal; it also disables the 1mDisplayManager.daemonMode 22mresource, forcing 4mxdm24m to run synchronously. To interpret these debugging messages, a copy of the source code for 4mxdm24m is almost a necessity. No attempt has been made to rationalize or standardize the output. 1m-error 4m22merror_log_file0m Specifies the value for the 1mDisplayManager.errorLogFile0m resource. This file contains errors from 4mxdm24m as well as anything written to stderr by the various scripts and programs run during the progress of the session. 1m-resources 4m22mresource_file0m Specifies the value for the 1mDisplayManager*resources 22mresource. This file is loaded using 4mxrdb24m to specify configuration parameters for the authentication widget. 1m-server 4m22mserver_entry0m Specifies the value for the 1mDisplayManager.servers 22mresource. See the section 1mLocal Server Specification 22mfor a description of this resource. 1m-udpPort 4m22mport_number0m Specifies the value for the 1mDisplayManager.requestPort 22mresource. This sets the port-number which 4mxdm24m will monitor for XDMCP requests. As XDMCP uses the registered well-known UDP port 177, this resource should not be changed except for debugging. If set to 0 xdm will not listen for XDMCP or Chooser requests. 1m-session 4m22msession_program0m Specifies the value for the 1mDisplayManager*session 22mresource. This indicates the program to run as the session after the user has logged in. 1m-xrm 4m22mresource_specification0m Allows an arbitrary resource to be specified, as in most X Toolkit applications. 1mRESOURCES0m At many stages the actions of 4mxdm24m can be controlled through the use of its configuration file, which is in the X resource format. Some resources modify the behavior of 4mxdm24m on all displays, while others modify its behavior on a single display. Where actions relate to a specific display, the display name is inserted into the resource name between ``DisplayManager'' and the final resource name segment. For local displays, the resource name and class are as read from the 4mXservers24m file. For remote displays, the resource name is what the network address of the display resolves to. See the 1mremoveDomain 22mresource. The name must match exactly; 4mxdm24m is not aware of all the network aliases that might reach a given display. If the name resolve fails, the address is used. The resource class is as sent by the display in the XDMCP Manage request. Because the resource manager uses colons to separate the name of the resource from its value and dots to separate resource name parts, 4mxdm0m substitutes underscores for both dots and colons when generating the resource name. For example, 1mDisplayManager.expo_x_org_0.startup 22mis the name of the resource which defines the startup shell file for the ``expo.x.org:0'' display. 1mDisplayManager.servers0m This resource either specifies a file name full of server entries, one per line (if the value starts with a slash), or a single server entry. See the section 1mLocal Server Specification0m for the details. 1mDisplayManager.requestPort0m This indicates the UDP port number which 4mxdm24m uses to listen for incoming XDMCP requests. Unless you need to debug the system, leave this with its default value of 177. 1mDisplayManager.errorLogFile0m Error output is normally directed at the system console. To redirect it, set this resource to a file name. A method to send these messages to 4msyslog24m should be developed for systems which support it; however, the wide variety of interfaces precludes any system-independent implementation. This file also contains any output directed to stderr by the 4mXsetup,24m 4mXstartup,24m 4mXsession0m and 4mXreset24m files, so it will contain descriptions of problems in those scripts as well. 1mDisplayManager.debugLevel0m If the integer value of this resource is greater than zero, reams of debugging information will be printed. It also disables daemon mode, which would redirect the information into the bit-bucket, and allows non-root users to run 4mxdm,24m which would normally not be useful. 1mDisplayManager.daemonMode0m Normally, 4mxdm24m attempts to make itself into a daemon process unassociated with any terminal. This is accomplished by forking and leaving the parent process to exit, then closing file descriptors and releasing the controlling terminal. In some environments this is not desired (in particular, when debugging). Setting this resource to ``false'' will disable this feature. 1mDisplayManager.pidFile0m The filename specified will be created to contain an ASCII representation of the process-id of the main 4mxdm24m process. 4mXdm0m also uses file locking on this file to attempt to eliminate multiple daemons running on the same machine, which would cause quite a bit of havoc. 1mDisplayManager.lockPidFile0m This is the resource which controls whether 4mxdm24m uses file locking to keep multiple display managers from running amok. On System V, this uses the 4mlockf24m library call, while on BSD it uses 4mflock.0m 1mDisplayManager.authDir0m This names a directory under which 4mxdm24m stores authorization files while initializing the session. The default value is 4mXDMAUTHDIR24m. Can be overridden for specific displays by DisplayManager.4mDISPLAY24m.authFile. 1mDisplayManager.autoRescan0m This boolean controls whether 4mxdm24m rescans the configuration, servers, access control and authentication keys files after a session terminates and the files have changed. By default it is ``true.'' You can force 4mxdm24m to reread these files by sending a SIGHUP to the main process. 1mDisplayManager.removeDomainname0m When computing the display name for XDMCP clients, the name resolver will typically create a fully qualified host name for the terminal. As this is sometimes confusing, 4mxdm24m will remove the domain name portion of the host name if it is the same as the domain name of the local host when this variable is set. By default the value is ``true.'' 1mDisplayManager.keyFile0m XDM-AUTHENTICATION-1 style XDMCP authentication requires that a private key be shared between 4mxdm24m and the terminal. This resource specifies the file containing those values. Each entry in the file consists of a display name and the shared key. By default, 4mxdm24m does not include support for XDM-AUTHENTICATION-1, as it requires DES which is not generally distributable because of United States export restrictions. 1mDisplayManager.accessFile0m To prevent unauthorized XDMCP service and to allow forwarding of XDMCP IndirectQuery requests, this file contains a database of hostnames which are either allowed direct access to this machine, or have a list of hosts to which queries should be forwarded to. The format of this file is described in the section 1mXDMCP Access Control.0m 1mDisplayManager.exportList0m A list of additional environment variables, separated by white space, to pass on to the 4mXsetup24m, 4mXstartup24m, 4mXsession24m, and 4mXreset0m programs. 1mDisplayManager.randomFile0m A file to checksum to generate the seed of authorization keys. This should be a file that changes frequently. The default is 4m/dev/mem24m. 1mDisplayManager.prngdSocket0m 1mDisplayManager.prngPort0m A UNIX domain socket name or a TCP socket port number on local host on which a Pseudo-Random Number Generator Daemon, like EGD (http://egd.sourceforge.net) is listening, in order to generate the autorization keys. Either a non null port or a valid socket name must be specified. The default is to use the Unix-domain socket 4m/tmp/entropy24m. On systems that don't have such a daemon, a fall-back entropy gathering system, based on various log file contents hashed by the MD5 algorithm is used instead. 1mDisplayManager.greeterLib0m On systems that support a dynamically-loadable greeter library, the name of the library. The default is 4m/usr/X11R6/lib/X11/xdm/libXdmGreet.so24m. 1mDisplayManager.choiceTimeout0m Number of seconds to wait for display to respond after user has selected a host from the chooser. If the display sends an XDMCP IndirectQuery within this time, the request is forwarded to the chosen host. Otherwise, it is assumed to be from a new session and the chooser is offered again. Default is 15. 1mDisplayManager.sourceAddress0m Use the numeric IP address of the incoming connection on multihomed hosts instead of the host name. This is to avoid trying to connect on the wrong interface which might be down at this time. 1mDisplayManager.willing0m This specifies a program which is run (as) root when an an XDMCP BroadcastQuery is received and this host is configured to offer XDMCP display management. The output of this program may be displayed on a chooser window. If no program is specified, the string 4mWilling24m 4mto24m 4mmanage24m is sent. 1mDisplayManager.4m22mDISPLAY24m1m.resources0m This resource specifies the name of the file to be loaded by 4mxrdb24m as the resource database onto the root window of screen 0 of the display. The 4mXsetup24m program, the Login widget, and 4mchooser24m will use the resources set in this file. This resource data base is loaded just before the authentication procedure is started, so it can control the appearance of the login window. See the section 1mAuthentication Widget, 22mwhich describes the various resources that are appropriate to place in this file. There is no default value for this resource, but 4m/usr/X11R6/lib/X11/xdm/Xresources24m is the conventional name. 1mDisplayManager.4m22mDISPLAY24m1m.chooser0m Specifies the program run to offer a host menu for Indirect queries redirected to the special host name CHOOSER. 4mCHOOSERPATH24m is the default. See the sections 1mXDMCP Access0m 1mControl 22mand 1mChooser22m. 1mDisplayManager.4m22mDISPLAY24m1m.xrdb0m Specifies the program used to load the resources. By default, 4mxdm24m uses 4m/usr/X11R6/bin/xrdb24m. 1mDisplayManager.4m22mDISPLAY24m1m.cpp0m This specifies the name of the C preprocessor which is used by 4mxrdb24m. 1mDisplayManager.4m22mDISPLAY24m1m.setup0m This specifies a program which is run (as root) before offering the Login window. This may be used to change the appearance of the screen around the Login window or to put up other windows (e.g., you may want to run 4mxconsole24m here). By default, no program is run. The conventional name for a file used here is 4mXsetup24m. See the section 1mSetup Program.0m 1mDisplayManager.4m22mDISPLAY24m1m.startup0m This specifies a program which is run (as root) after the authentication process succeeds. By default, no program is run. The conventional name for a file used here is 4mXstartup24m. See the section 1mStartup Program.0m 1mDisplayManager.4m22mDISPLAY24m1m.session0m This specifies the session to be executed (not running as root). By default, 4m/usr/X11R6/bin/xterm24m is run. The conventional name is 4mXsession24m. See the section 1mSession Program.0m 1mDisplayManager.4m22mDISPLAY24m1m.reset0m This specifies a program which is run (as root) after the session terminates. By default, no program is run. The conventional name is 4mXreset24m. See the section 1mReset Program.0m 1mDisplayManager.4m22mDISPLAY24m1m.openDelay0m 1mDisplayManager.4m22mDISPLAY24m1m.openRepeat0m 1mDisplayManager.4m22mDISPLAY24m1m.openTimeout0m 1mDisplayManager.4m22mDISPLAY24m1m.startAttempts0m These numeric resources control the behavior of 4mxdm24m when attempting to open intransigent servers. 1mopenDelay 22mis the length of the pause (in seconds) between successive attempts, 1mopenRepeat 22mis the number of attempts to make, 1mopenTimeout 22mis the amount of time to wait while actually attempting the open (i.e., the maximum time spent in the 4mconnect24m(2) system call) and 1mstartAttempts 22mis the number of times this entire process is done before giving up on the server. After 1mopenRepeat 22mattempts have been made, or if 1mopenTimeout 22mseconds elapse in any particular attempt, 4mxdm24m terminates and restarts the server, attempting to connect again. This process is repeated 1mstartAttempts 22mtimes, at which point the display is declared dead and disabled. Although this behavior may seem arbitrary, it has been empirically developed and works quite well on most systems. The default values are 5 for 1mopenDelay22m, 5 for 1mopenRepeat22m, 30 for 1mopenTimeout0m and 4 for 1mstartAttempts22m. 1mDisplayManager.4m22mDISPLAY24m1m.pingInterval0m 1mDisplayManager.4m22mDISPLAY24m1m.pingTimeout0m To discover when remote displays disappear, 4mxdm24m occasionally pings them, using an X connection and 4mXSync24m calls. 1mpingInterval0m specifies the time (in minutes) between each ping attempt, 1mpingTimeout 22mspecifies the maximum amount of time (in minutes) to wait for the terminal to respond to the request. If the terminal does not respond, the session is declared dead and terminated. By default, both are set to 5 minutes. If you frequently use X terminals which can become isolated from the managing host, you may wish to increase this value. The only worry is that sessions will continue to exist after the terminal has been accidentally disabled. 4mxdm24m will not ping local displays. Although it would seem harmless, it is unpleasant when the workstation session is terminated as a result of the server hanging for NFS service and not responding to the ping. 1mDisplayManager.4m22mDISPLAY24m1m.terminateServer0m This boolean resource specifies whether the X server should be terminated when a session terminates (instead of resetting it). This option can be used when the server tends to grow without bound over time, in order to limit the amount of time the server is run. The default value is ``false.'' 1mDisplayManager.4m22mDISPLAY24m1m.userPath0m 4mXdm24m sets the PATH environment variable for the session to this value. It should be a colon separated list of directories; see 4msh24m(1) for a full description. ``:/bin:/usr/bin:/usr/X11R6/bin:/usr/ucb'' is a common setting. The default value can be specified at build time in the X system configuration file with DefaultUserPath. 1mDisplayManager.4m22mDISPLAY24m1m.systemPath0m 4mXdm24m sets the PATH environment variable for the startup and reset scripts to the value of this resource. The default for this resource is specified at build time by the DefaultSystemPath entry in the system configuration file; ``/etc:/bin:/usr/bin:/usr/X11R6/bin:/usr/ucb'' is a common choice. Note the absence of ``.'' from this entry. This is a good practice to follow for root; it avoids many common Trojan Horse system penetration schemes. 1mDisplayManager.4m22mDISPLAY24m1m.systemShell0m 4mXdm24m sets the SHELL environment variable for the startup and reset scripts to the value of this resource. It is 4m/bin/sh24m by default. 1mDisplayManager.4m22mDISPLAY24m1m.failsafeClient0m If the default session fails to execute, 4mxdm24m will fall back to this program. This program is executed with no arguments, but executes using the same environment variables as the session would have had (see the section 1mSession Program22m). By default, 4m/usr/X11R6/bin/xterm24m is used. 1mDisplayManager.4m22mDISPLAY24m1m.grabServer0m 1mDisplayManager.4m22mDISPLAY24m1m.grabTimeout0m To improve security, 4mxdm24m grabs the server and keyboard while reading the login name and password. The 1mgrabServer 22mresource specifies if the server should be held for the duration of the name/password reading. When ``false,'' the server is ungrabbed after the keyboard grab succeeds, otherwise the server is grabbed until just before the session begins. The default is ``false.'' The 1mgrabTimeout 22mresource specifies the maximum time 4mxdm24m will wait for the grab to succeed. The grab may fail if some other client has the server grabbed, or possibly if the network latencies are very high. This resource has a default value of 3 seconds; you should be cautious when raising it, as a user can be spoofed by a look-alike window on the display. If the grab fails, 4mxdm24m kills and restarts the server (if possible) and the session. 1mDisplayManager.4m22mDISPLAY24m1m.authorize0m 1mDisplayManager.4m22mDISPLAY24m1m.authName0m 1mauthorize 22mis a boolean resource which controls whether 4mxdm0m generates and uses authorization for the local server connections. If authorization is used, 1mauthName 22mis a list of authorization mechanisms to use, separated by white space. XDMCP connections dynamically specify which authorization mechanisms are supported, so 1mauthName 22mis ignored in this case. When 1mauthorize 22mis set for a display and authorization is not available, the user is informed by having a different message displayed in the login widget. By default, 1mauthorize 22mis ``true.'' 1mauthName 22mis ``MIT-MAGIC-COOKIE-1,'' or, if XDM- AUTHORIZATION-1 is available, ``XDM-AUTHORIZATION-1 MIT-MAGIC- COOKIE-1.'' 1mDisplayManager.4m22mDISPLAY24m1m.authFile0m This file is used to communicate the authorization data from 4mxdm0m to the server, using the 1m-auth 22mserver command line option. It should be kept in a directory which is not world-writable as it could easily be removed, disabling the authorization mechanism in the server. If not specified, a name is generated from DisplayManager.authDir and the name of the display. 1mDisplayManager.4m22mDISPLAY24m1m.authComplain0m If set to ``false,'' disables the use of the 1munsecureGreeting 22min the login window. See the section 1mAuthentication Widget. 22mThe default is ``true.'' 1mDisplayManager.4m22mDISPLAY24m1m.resetSignal0m The number of the signal 4mxdm24m sends to reset the server. See the section 1mControlling the Server. 22mThe default is 1 (SIGHUP). 1mDisplayManager.4m22mDISPLAY24m1m.termSignal0m The number of the signal 4mxdm24m sends to terminate the server. See the section 1mControlling the Server. 22mThe default is 15 (SIGTERM). 1mDisplayManager.4m22mDISPLAY24m1m.resetForAuth0m The original implementation of authorization in the sample server reread the authorization file at server reset time, instead of when checking the initial connection. As 4mxdm0m generates the authorization information just before connecting to the display, an old server would not get up-to-date authorization information. This resource causes 4mxdm24m to send SIGHUP to the server after setting up the file, causing an additional server reset to occur, during which time the new authorization information will be read. The default is ``false,'' which will work for all MIT servers. 1mDisplayManager.4m22mDISPLAY24m1m.userAuthDir0m When 4mxdm24m is unable to write to the usual user authorization file ($HOME/.Xauthority), it creates a unique file name in this directory and points the environment variable XAUTHORITY at the created file. It uses 4m/tmp24m by default. 1mCONFIGURATION FILE0m First, the 4mxdm24m configuration file should be set up. Make a directory (usually 4m/usr/X11R6/lib/X11/xdm24m) to contain all of the relevant files. Here is a reasonable configuration file, which could be named 4mxdm-0m 4mconfig24m: DisplayManager.servers: /usr/X11R6/lib/X11/xdm/Xservers DisplayManager.errorLogFile: XDMLOGDIR/xdm.log DisplayManager*resources: /usr/X11R6/lib/X11/xdm/Xresources DisplayManager*startup: /usr/X11R6/lib/X11/xdm/Xstartup DisplayManager*session: /usr/X11R6/lib/X11/xdm/Xsession DisplayManager.pidFile: /usr/X11R6/lib/X11/xdm/xdm-pid DisplayManager._0.authorize: true DisplayManager*authorize: false Note that this file mostly contains references to other files. Note also that some of the resources are specified with ``*'' separating the components. These resources can be made unique for each different display, by replacing the ``*'' with the display-name, but normally this is not very useful. See the 1mResources 22msection for a complete discussion. 1mXDMCP ACCESS CONTROL0m The database file specified by the 1mDisplayManager.accessFile 22mprovides information which 4mxdm24m uses to control access from displays requesting XDMCP service. This file contains three types of entries: entries which control the response to Direct and Broadcast queries, entries which control the response to Indirect queries, and macro definitions. The format of the Direct entries is simple, either a host name or a pattern, which is distinguished from a host name by the inclusion of one or more meta characters (`*' matches any sequence of 0 or more characters, and `?' matches any single character) which are compared against the host name of the display device. If the entry is a host name, all comparisons are done using network addresses, so any name which converts to the correct network address may be used. For patterns, only canonical host names are used in the comparison, so ensure that you do not attempt to match aliases. Preceding either a host name or a pattern with a `!' character causes hosts which match that entry to be excluded. To only respond to Direct queries for a host or pattern, it can be followed by the optional ``NOBROADCAST'' keyword. This can be used to prevent an xdm server from appearing on menus based on Broadcast queries. An Indirect entry also contains a host name or pattern, but follows it with a list of host names or macros to which indirect queries should be sent. A macro definition contains a macro name and a list of host names and other macros that the macro expands to. To distinguish macros from hostnames, macro names start with a `%' character. Macros may be nested. Indirect entries may also specify to have 4mxdm24m run 4mchooser24m to offer a menu of hosts to connect to. See the section 1mChooser22m. When checking access for a particular display host, each entry is scanned in turn and the first matching entry determines the response. Direct and Broadcast entries are ignored when scanning for an Indirect entry and vice-versa. Blank lines are ignored, `#' is treated as a comment delimiter causing the rest of that line to be ignored, and `\4mnewline24m' causes the newline to be ignored, allowing indirect host lists to span multiple lines. Here is an example Xaccess file: # # Xaccess - XDMCP access control file # # # Direct/Broadcast query entries # !xtra.lcs.mit.edu # disallow direct/broadcast service for xtra bambi.ogi.edu # allow access from this particular display *.lcs.mit.edu # allow access from any display in LCS *.deshaw.com NOBROADCAST # allow only direct access *.gw.com # allow direct and broadcast # # Indirect query entries # %HOSTS expo.lcs.mit.edu xenon.lcs.mit.edu \ excess.lcs.mit.edu kanga.lcs.mit.edu extract.lcs.mit.edu xenon.lcs.mit.edu #force extract to contact xenon !xtra.lcs.mit.edu dummy #disallow indirect access *.lcs.mit.edu %HOSTS #all others get to choose If compiled with IPv6 support, multicast address groups may also be included in the list of addresses indirect queries are set to. Multicast addresses may be followed by an optional / character and hop count. If no hop count is specified, the multicast hop count defaults to 1, keeping the packet on the local network. For IPv4 multicasting, the hop count is used as the TTL. Examples: rincewind.sample.net ff02::1 #IPv6 Multicast to ff02::1 #with a hop count of 1 ponder.sample.net CHOOSER 239.192.1.1/16 #Offer a menu of hosts #who respond to IPv4 Multicast # to 239.192.1.1 with a TTL of 16 1mCHOOSER0m For X terminals that do not offer a host menu for use with Broadcast or Indirect queries, the 4mchooser24m program can do this for them. In the 4mXaccess24m file, specify ``CHOOSER'' as the first entry in the Indirect host list. 4mChooser24m will send a Query request to each of the remaining host names in the list and offer a menu of all the hosts that respond. The list may consist of the word ``BROADCAST,'' in which case 4mchooser0m will send a Broadcast instead, again offering a menu of all hosts that respond. Note that on some operating systems, UDP packets cannot be broadcast, so this feature will not work. Example 4mXaccess24m file using 4mchooser24m: extract.lcs.mit.edu CHOOSER %HOSTS #offer a menu of these hosts xtra.lcs.mit.edu CHOOSER BROADCAST #offer a menu of all hosts The program to use for 4mchooser24m is specified by the 1mDisplayManager.4m22mDISPLAY24m1m.chooser 22mresource. For more flexibility at this step, the chooser could be a shell script. 4mChooser24m is the session manager here; it is run instead of a child 4mxdm24m to manage the display. Resources for this program can be put into the file named by 1mDisplayManager.4m22mDISPLAY24m1m.resources22m. When the user selects a host, 4mchooser24m prints the host chosen, which is read by the parent 4mxdm24m, and exits. 4mxdm24m closes its connection to the X server, and the server resets and sends another 1mIndirect 22mXDMCP request. 4mxdm24m remembers the user's choice (for 1mDisplayManager.choiceTimeout0m seconds) and forwards the request to the chosen host, which starts a session on that display. 1mLISTEN0m The following configuration directive is also defined for the Xaccess configuration file: 1mLISTEN 4m22minterface24m 4m[list24m 4mof24m 4mmulticast24m 4mgroup24m 4maddresses]0m 4minterface24m may be a hostname or IP addresss representing a network interface on this machine, or the wildcard * to represent all available network interfaces. If one or more LISTEN lines are specified, xdm only listens for XDMCP connections on the specified interfaces. If multicast group addresses are listed on a listen line, xdm joins the multicast groups on the given interface. If no LISTEN lines are given, the original behavior of listening on all interfaces is preserved for backwards compatibility. Additionally, if no LISTEN is specified, xdm joins the default XDMCP IPv6 multicast group, when compiled with IPv6 support. To disable listening for XDMCP connections altogther, a line of LISTEN with no addresses may be specified, or the previously supported method of setting DisplayManager.requestPort to 0 may be used. Examples: LISTEN * ff02::1 # Listen on all interfaces and to the # ff02::1 IPv6 multicast group. LISTEN 10.11.12.13 # Listen only on this interface, as long # as no other listen directives appear in # file. 1mIPv6 MULTICAST ADDRESS SPECIFICATION0m The Internet Assigned Numbers Authority has has assigned ff04mX24m:0:0:0:0:0:0:12b as the permanently assigned range of multicast addresses for XDMCP. The 4mX24m in the prefix may be replaced by any valid scope identifier, such as 1 for Node-Local, 2 for Link-Local, 5 for Site-Local, and so on. (See IETF RFC 2373 or its replacement for further details and scope definitions.) xdm defaults to listening on the Link-Local scope address ff02:0:0:0:0:0:0:12b to most closely match the old IPv4 subnet broadcast behavior. 1mLOCAL SERVER SPECIFICATION0m The resource 1mDisplayManager.servers 22mgives a server specification or, if the values starts with a slash (/), the name of a file containing server specifications, one per line. Each specification indicates a display which should constantly be managed and which is not using XDMCP. This method is used typically for local servers only. If the resource or the file named by the resource is empty, 4mxdm24m will offer XDMCP service only. Each specification consists of at least three parts: a display name, a display class, a display type, and (for local servers) a command line to start the server. A typical entry for local display number 0 would be: :0 Digital-QV local /usr/X11R6/bin/X :0 The display types are: local local display: 4mxdm24m must run the server foreign remote display: 4mxdm24m opens an X connection to a running server The display name must be something that can be passed in the 1m-display0m option to an X program. This string is used to generate the display- specific resource names, so be careful to match the names (e.g., use ``:0 Sun-CG3 local /usr/X11R6/bin/X :0'' instead of ``localhost:0 Sun- CG3 local /usr/X11R6/bin/X :0'' if your other resources are specified as ``DisplayManager._0.session''). The display class portion is also used in the display-specific resources, as the class of the resource. This is useful if you have a large collection of similar displays (such as a corral of X terminals) and would like to set resources for groups of them. When using XDMCP, the display is required to specify the display class, so the manual for your particular X terminal should document the display class string for your device. If it doesn't, you can run 4mxdm24m in debug mode and look at the resource strings which it generates for that device, which will include the class string. When 4mxdm24m starts a session, it sets up authorization data for the server. For local servers, 4mxdm24m passes ``1m-auth 4m22mfilename24m'' on the server's command line to point it at its authorization data. For XDMCP servers, 4mxdm24m passes the authorization data to the server via the 1mAccept0m XDMCP request. 1mRESOURCES FILE0m The 4mXresources24m file is loaded onto the display as a resource database using 4mxrdb.24m As the authentication widget reads this database before starting up, it usually contains parameters for that widget: xlogin*login.translations: #override\ CtrlR: abort-display()\n\/& F1: set-session-argument(failsafe) finish-field()\n\ Return: set-session-argument() finish-field() xlogin*borderWidth: 3 xlogin*greeting: CLIENTHOST #ifdef COLOR xlogin*greetColor: CadetBlue xlogin*failColor: red #endif Please note the translations entry; it specifies a few new translations for the widget which allow users to escape from the default session (and avoid troubles that may occur in it). Note that if #override is not specified, the default translations are removed and replaced by the new value, not a very useful result as some of the default translations are quite useful (such as ``: insert-char ()'' which responds to normal typing). This file may also contain resources for the setup program and 4mchooser24m. 1mSETUP PROGRAM0m The 4mXsetup24m file is run after the server is reset, but before the Login window is offered. The file is typically a shell script. It is run as root, so should be careful about security. This is the place to change the root background or bring up other windows that should appear on the screen along with the Login widget. In addition to any specified by 1mDisplayManager.exportList22m, the following environment variables are passed: DISPLAY the associated display name PATH the value of 1mDisplayManager.4m22mDISPLAY24m1m.systemPath0m SHELL the value of 1mDisplayManager.4m22mDISPLAY24m1m.systemShell0m XAUTHORITY may be set to an authority file Note that since 4mxdm24m grabs the keyboard, any other windows will not be able to receive keyboard input. They will be able to interact with the mouse, however; beware of potential security holes here. If 1mDisplayManager.4m22mDISPLAY24m1m.grabServer 22mis set, 4mXsetup24m will not be able to connect to the display at all. Resources for this program can be put into the file named by 1mDisplayManager.4m22mDISPLAY24m1m.resources22m. Here is a sample 4mXsetup24m script: #!/bin/sh # Xsetup_0 - setup script for one workstation xcmsdb < /usr/X11R6/lib/monitors/alex.0 xconsole -geometry 480x130-0-0 -notify -verbose -exitOnFail & 1mAUTHENTICATION WIDGET0m The authentication widget reads a name/password pair from the keyboard. Nearly every imaginable parameter can be controlled with a resource. Resources for this widget should be put into the file named by 1mDisplayManager.4m22mDISPLAY24m1m.resources22m. All of these have reasonable default values, so it is not necessary to specify any of them. 1mxlogin.Login.width, xlogin.Login.height, xlogin.Login.x, xlogin.Login.y0m The geometry of the Login widget is normally computed automatically. If you wish to position it elsewhere, specify each of these resources. 1mxlogin.Login.foreground0m The color used to display the typed-in user name. 1mxlogin.Login.font0m The font used to display the typed-in user name. 1mxlogin.Login.greeting0m A string which identifies this window. The default is ``X Window System.'' 1mxlogin.Login.unsecureGreeting0m When X authorization is requested in the configuration file for this display and none is in use, this greeting replaces the standard greeting. The default is ``This is an unsecure session'' 1mxlogin.Login.greetFont0m The font used to display the greeting. 1mxlogin.Login.greetColor0m The color used to display the greeting. 1mxlogin.Login.namePrompt0m The string displayed to prompt for a user name. 4mXrdb24m strips trailing white space from resource values, so to add spaces at the end of the prompt (usually a nice thing), add spaces escaped with backslashes. The default is ``Login: '' 1mxlogin.Login.passwdPrompt0m The string displayed to prompt for a password. The default is ``Password: '' 1mxlogin.Login.promptFont0m The font used to display both prompts. 1mxlogin.Login.promptColor0m The color used to display both prompts. 1mxlogin.Login.fail0m A message which is displayed when the authentication fails. The default is ``Login incorrect'' 1mxlogin.Login.failFont0m The font used to display the failure message. 1mxlogin.Login.failColor0m The color used to display the failure message. 1mxlogin.Login.failTimeout0m The number of seconds that the failure message is displayed. The default is 30. 1mxlogin.Login.allowRootLogin0m If set to ``false'', don't allow root (and any other user with uid = 0) to log in directly. The default is ``true''. 1mxlogin.Login.allowNullPasswd0m If set to ``true'', allow an otherwise failing password match to succeed if the account does not require a password at all. The default is ``false'', so only users that have passwords assigned can log in. 1mxlogin.Login.translations0m This specifies the translations used for the login widget. Refer to the X Toolkit documentation for a complete discussion on translations. The default translation table is: CtrlH: delete-previous-character() \n\ CtrlD: delete-character() \n\ CtrlB: move-backward-character() \n\ CtrlF: move-forward-character() \n\ CtrlA: move-to-begining() \n\ CtrlE: move-to-end() \n\ CtrlK: erase-to-end-of-line() \n\ CtrlU: erase-line() \n\ CtrlX: erase-line() \n\ CtrlC: restart-session() \n\ Ctrl\\: abort-session() \n\ BackSpace:delete-previous-character() \n\ Delete: delete-previous-character() \n\ Return: finish-field() \n\ : insert-char() \ The actions which are supported by the widget are: delete-previous-character Erases the character before the cursor. delete-character Erases the character after the cursor. move-backward-character Moves the cursor backward. move-forward-character Moves the cursor forward. move-to-begining (Apologies about the spelling error.) Moves the cursor to the beginning of the editable text. move-to-end Moves the cursor to the end of the editable text. erase-to-end-of-line Erases all text after the cursor. erase-line Erases the entire text. finish-field If the cursor is in the name field, proceeds to the password field; if the cursor is in the password field, checks the current name/password pair. If the name/password pair is valid, 4mxdm24m starts the session. Otherwise the failure message is displayed and the user is prompted again. abort-session Terminates and restarts the server. abort-display Terminates the server, disabling it. This action is not accessible in the default configuration. There are various reasons to stop 4mxdm24m on a system console, such as when shutting the system down, when using 4mxdmshell24m, to start another type of server, or to generally access the console. Sending 4mxdm24m a SIGHUP will restart the display. See the section 1mControlling0m 1mXDM22m. restart-session Resets the X server and starts a new session. This can be used when the resources have been changed and you want to test them or when the screen has been overwritten with system messages. insert-char Inserts the character typed. set-session-argument Specifies a single word argument which is passed to the session at startup. See the section 1mSession Program22m. allow-all-access Disables access control in the server. This can be used when the .Xauthority file cannot be created by 4mxdm.24m Be very careful using this; it might be better to disconnect the machine from the network before doing this. On some systems (OpenBSD) the user's shell must be listed in 4m/etc/shells24m to allow login through xdm. The normal password and account expiration dates are enforced too. 1mSTARTUP PROGRAM0m The 4mXstartup24m program is run as root when the user logs in. It is typically a shell script. Since it is run as root, 4mXstartup24m should be very careful about security. This is the place to put commands which add entries to 4m/etc/utmp24m (the 4msessreg24m program may be useful here), mount users' home directories from file servers, or abort the session if logins are not allowed. In addition to any specified by 1mDisplayManager.exportList22m, the following environment variables are passed: DISPLAY the associated display name HOME the initial working directory of the user LOGNAME the user name USER the user name PATH the value of 1mDisplayManager.4m22mDISPLAY24m1m.systemPath0m SHELL the value of 1mDisplayManager.4m22mDISPLAY24m1m.systemShell0m XAUTHORITY may be set to an authority file No arguments are passed to the script. 4mXdm24m waits until this script exits before starting the user session. If the exit value of this script is non-zero, 4mxdm24m discontinues the session and starts another authentication cycle. The sample 4mXstartup24m file shown here prevents login while the file 4m/etc/nologin24m exists. Thus this is not a complete example, but simply a demonstration of the available functionality. Here is a sample 4mXstartup24m script: #!/bin/sh # # Xstartup # # This program is run as root after the user is verified # if [ -f /etc/nologin ]; then xmessage -file /etc/nologin -timeout 30 -center exit 1 fi sessreg -a -l $DISPLAY -x /usr/X11R6/lib/xdm/Xservers $LOGNAME /usr/X11R6/lib/xdm/GiveConsole exit 0 1mSESSION PROGRAM0m The 4mXsession24m program is the command which is run as the user's session. It is run with the permissions of the authorized user. In addition to any specified by 1mDisplayManager.exportList22m, the following environment variables are passed: DISPLAY the associated display name HOME the initial working directory of the user LOGNAME the user name USER the user name PATH the value of 1mDisplayManager.4m22mDISPLAY24m1m.userPath0m SHELL the user's default shell (from 4mgetpwnam24m) XAUTHORITY may be set to a non-standard authority file KRB5CCNAME may be set to a Kerberos credentials cache name At most installations, 4mXsession24m should look in $HOME for a file 4m.xsession,24m which contains commands that each user would like to use as a session. 4mXsession24m should also implement a system default session if no user-specified session exists. See the section 1mTypical Usage22m. An argument may be passed to this program from the authentication widget using the `set-session-argument' action. This can be used to select different styles of session. One good use of this feature is to allow the user to escape from the ordinary session when it fails. This allows users to repair their own 4m.xsession24m if it fails, without requiring administrative intervention. The example following demonstrates this feature. This example recognizes the special ``failsafe'' mode, specified in the translations in the 4mXresources24m file, to provide an escape from the ordinary session. It also requires that the .xsession file be executable so we don't have to guess what shell it wants to use. #!/bin/sh # # Xsession # # This is the program that is run as the client # for the display manager. case $# in 1) case $1 in failsafe) exec xterm -geometry 80x24-0-0 ;; esac esac startup=$HOME/.xsession resources=$HOME/.Xresources if [ -f "$startup" ]; then exec "$startup" else if [ -f "$resources" ]; then xrdb -load "$resources" fi twm & xman -geometry +10-10 & exec xterm -geometry 80x24+10+10 -ls fi The user's 4m.xsession24m file might look something like this example. Don't forget that the file must have execute permission. #! /bin/csh # no -f in the previous line so .cshrc gets run to set $PATH twm & xrdb -merge "$HOME/.Xresources" emacs -geometry +0+50 & xbiff -geometry -430+5 & xterm -geometry -0+50 -ls 1mRESET PROGRAM0m Symmetrical with 4mXstartup24m, the 4mXreset24m script is run after the user session has terminated. Run as root, it should contain commands that undo the effects of commands in 4mXstartup,24m removing entries from 4m/etc/utmp24m or unmounting directories from file servers. The environment variables that were passed to 4mXstartup24m are also passed to 4mXreset24m. A sample 4mXreset24m script: #!/bin/sh # # Xreset # # This program is run as root after the session ends # sessreg -d -l $DISPLAY -x /usr/X11R6/lib/xdm/Xservers $LOGNAME /usr/X11R6/lib/xdm/TakeConsole exit 0 1mCONTROLLING THE SERVER0m 4mXdm24m controls local servers using POSIX signals. SIGHUP is expected to reset the server, closing all client connections and performing other cleanup duties. SIGTERM is expected to terminate the server. If these signals do not perform the expected actions, the resources 1mDisplayManager.4m22mDISPLAY24m1m.resetSignal 22mand 1mDisplayManager.4m22mDISPLAY24m1m.termSignal 22mcan specify alternate signals. To control remote terminals not using XDMCP, 4mxdm24m searches the window hierarchy on the display and uses the protocol request KillClient in an attempt to clean up the terminal for the next session. This may not actually kill all of the clients, as only those which have created windows will be noticed. XDMCP provides a more sure mechanism; when 4mxdm24m closes its initial connection, the session is over and the terminal is required to close all other connections. 1mCONTROLLING XDM0m 4mXdm24m responds to two signals: SIGHUP and SIGTERM. When sent a SIGHUP, 4mxdm24m rereads the configuration file, the access control file, and the servers file. For the servers file, it notices if entries have been added or removed. If a new entry has been added, 4mxdm24m starts a session on the associated display. Entries which have been removed are disabled immediately, meaning that any session in progress will be terminated without notice and no new session will be started. When sent a SIGTERM, 4mxdm24m terminates all sessions in progress and exits. This can be used when shutting down the system. 4mXdm24m attempts to mark its various sub-processes for 4mps24m(1) by editing the command line argument list in place. Because 4mxdm24m can't allocate additional space for this task, it is useful to start 4mxdm24m with a reasonably long command line (using the full path name should be enough). Each process which is servicing a display is marked 1m-4m22mdisplay.0m 1mADDITIONAL LOCAL DISPLAYS0m To add an additional local display, add a line for it to the 4mXservers0m file. (See the section 1mLocal Server Specification22m.) Examine the display-specific resources in 4mxdm-config24m (e.g., 1mDisplayManager._0.authorize22m) and consider which of them should be copied for the new display. The default 4mxdm-config24m has all the appropriate lines for displays 1m:0 22mand 1m:122m. 1mOTHER POSSIBILITIES0m You can use 4mxdm24m to run a single session at a time, using the 4.3 4minit0m options or other suitable daemon by specifying the server on the command line: xdm -server ":0 SUN-3/60CG4 local /usr/X11R6/bin/X :0" Or, you might have a file server and a collection of X terminals. The configuration for this is identical to the sample above, except the 4mXservers24m file would look like extol:0 VISUAL-19 foreign exalt:0 NCD-19 foreign explode:0 NCR-TOWERVIEW3000 foreign This directs 4mxdm24m to manage sessions on all three of these terminals. See the section 1mControlling Xdm 22mfor a description of using signals to enable and disable these terminals in a manner reminiscent of 4minit24m(8). 1mLIMITATIONS0m One thing that 4mxdm24m isn't very good at doing is coexisting with other window systems. To use multiple window systems on the same hardware, you'll probably be more interested in 4mxinit.0m 1mFILES0m 4m/usr/X11R6/lib/X11/xdm/xdm-config0m the default configuration file 4m$HOME/.Xauthority24m user authorization file where 4mxdm24m stores keys for clients to read 4mCHOOSERPATH24m the default chooser 4m/usr/X11R6/bin/xrdb24m the default resource database loader 4m/usr/X11R6/bin/X24m the default server 4m/usr/X11R6/bin/xterm0m the default session program and failsafe client 4mXDMAUTHDIR/authdir/authfiles/A-0m the default place for authorization files 4m/tmp/K5C24m Kerberos credentials cache 1mSEE ALSO0m 4mX24m(7), 4mxinit24m(1), 4mxauth24m(1), 4mXsecurity24m(7), 4msessreg24m(1), 4mXserver24m(1), 4mX24m 4mDisplay24m 4mManager24m 4mControl24m 4mProtocol0m 1mAUTHOR0m Keith Packard, MIT X Consortium XDPYINFO(1) XDPYINFO(1) 1mNAME0m xdpyinfo - display information utility for X 1mSYNOPSIS0m 1mxdpyinfo 22m[-display 4mdisplayname24m] [-queryExtensions] [-ext 4mextension-0m 4mname24m] 1mDESCRIPTION0m 4mXdpyinfo24m is a utility for displaying information about an X server. It is used to examine the capabilities of a server, the predefined values for various parameters used in communicating between clients and the server, and the different types of screens and visuals that are available. By default, numeric information (opcode, base event, base error) about protocol extensions is not displayed. This information can be obtained with the 1m-queryExtensions 22moption. Use of this option on servers that dynamically load extensions will likely cause all possible extensions to be loaded, which can be slow and can consume significant server resources. Detailed information about a particular extension is displayed with the 1m-ext 4m22mextensionName24m option. If 4mextensionName24m is 1mall22m, information about all extensions supported by both 4mxdpyinfo24m and the server is displayed. 1mENVIRONMENT0m 1mDISPLAY 22mTo get the default host, display number, and screen. 1mSEE ALSO0m X(7), xwininfo(1), xprop(1), xrdb(1) 1mAUTHOR0m Jim Fulton, MIT X Consortium Support for the XFree86-VidModeExtension, XFree86-DGA, XFree86-Misc, and XKB extensions added by Joe Moss XEDIT(1) XEDIT(1) 1mNAME0m xedit - simple text editor for X 1mSYNTAX0m 1mxedit 22m[ 4m-toolkitoption24m ... ] [ 4mfilename24m ... ] 1mDESCRIPTION0m 4mXedit24m provides a window consisting of the following four areas: Commands Section A set of commands that allow you to exit 4mxedit24m, save the file, or load a new file into the edit window. Message Window Displays 4mxedit24m messages. In addition, this window can be also used as a scratch pad. Filename Display Displays the name of the file currently being edited, and whether this file is 4mRead-Write24m or 4mRead24m 4mOnly24m. Edit Window Displays the text of the file that you are editing or creating. 1mOPTIONS0m 4mXedit24m accepts all of the standard X Toolkit command line options (see 4mX24m(7)). The order of the command line options is not important. 4mfilename0m Specifies the file(s) that are to be loaded during start-up. This is the file which will be edited. If a file is not specified, 4mxedit24m lets you load files or create new files after it has started up. 1mEDITING0m The Athena Text widget is used for the three sections of this application that allow text input. The characters typed will go to the Text widget that has the input focus, or the Text widget that the pointer cursor is currently over. The following keystroke combinations are defined: Ctrl-a Beginning Of Line Meta-b Backward Word Ctrl-b Backward Character Meta-f Forward Word Ctrl-d Delete Next Character Meta-iInsert File Ctrl-e End Of Line Meta-k Kill To End Of Paragraph Ctrl-f Forward Character Meta-q Form Paragraph Ctrl-g Keyboard Reset Meta-v Previous Page Ctrl-h Delete Previous Character Meta-yInsert Current Selection Ctrl-j Newline And Indent Meta-z Scroll One Line Down Ctrl-k Kill To End Of Line Meta-d Delete Next Word Ctrl-l Redraw Display Meta-D Kill Word Ctrl-m Newline Meta-h Delete Previous Word Ctrl-n Next Line Meta-H Backward Kill Word Ctrl-o Newline And Backup Meta-< Beginning Of File Ctrl-p Previous Line Meta-> End Of File Ctrl-r Search/Replace Backward Meta-]Forward Paragraph Ctrl-s Search/Replace Forward Meta-[Backward Paragraph Ctrl-t Transpose Characters Ctrl-u [4mnumber24m] Multiply by 4 or 4mnumber24mMeta-DeleteDelete Previous Word Ctrl-v Next Page Meta-Shift DeleteKill Previous Word Ctrl-w Kill Selection Meta-Backspace Delete Previous Word Ctrl-y Unkill Meta-Shift BackspaceKill Previous Word Ctrl-z Scroll One Line Up Meta-z Scroll One Line Down Ctrl-_ Undo Escape Line Edit Mode In addition, the pointer may be used to cut and paste text: Button 1 Down Start Selection Button 1 MotionAdjust Selection Button 1 Up End Selection (cut) Button 2 Down Insert Current Selection (paste) Button 3 Down Extend Current Selection Button 3 MotionAdjust Selection Button 3 Up End Selection (cut) 1mLINE EDIT MODE0m 4mLine24m 4medit24m 4mmode24m enables several shortcut commands for searching and replacing text in a xedit buffer. 4mLine24m 4medit24m 4mmode24m commands have the format: [4mline-number24m[,4mline-number24m]]4mcommand24m[4mparameters24m] 4mLine24m 4mnumber24m may be specified as: . The current text line. $ The last line of the file. number The literal line 4mnumber24m. - or ^ The previous line. Equivalent to 4m-124m. -number or ^number The current line minus 4mnumber24m. + The next line. Equivalent to 4m+124m. +number The current line plus 4mnumber24m. , or % From the first to the last line. Equivalent to 4m1,$24m. ; From the current to the last line. Equivalent to 4m.,$24m. 4mCommand24m may be specified as: s Substitute text in the specified lines. /re/ Search forward for the regular expression pattern 4mre24m. ?re? Search backward for the regular expression pattern 4mre24m. 4mParameters24m may be specified as: /re/ Works as a parameter to 4mi24m or as a command. /re/text/ Search forward for 4mre24m and substitute by 4mtext24m. 4mOptions24m may follow or be parameters, known values are: i Case insensitive search. g 4mGlobal24m match when replacing text. Unless specified, only the nth, that defaults to 1, match will be replaced. c 4mConfirm24m before replacing text. number Replace only the occurrence referenced by 4mnumber24m. Commands accept some variations, examples: /pattern/i i/pattern/ i/pattern Search forward for 4mpattern24m. ,sc/pattern/text ,sc/pattern/text/ ,s/pattern/text/c Search the entire buffer and ask confirmation to replace 4mpattern24m with 4mtext24m. ,s/pattern/text/number Replace the match 4mnumber24m in the text line. If not specified, defaults to the first occurrence. When searching for text, type to go to the next match. When interactively replacing text, type 4my24m or 4mY24m to accept the change, and 4mn0m or 4mN24m to ignore it and go to the next match. 1mCOMMANDS0m Quit Quits the current editing session. If any changes have not been saved, 4mxedit24m displays a warning message, allowing the user to save them. Save If file backups are enabled (see RESOURCES, below) 4mxedit24m stores a copy of the original, unedited file in 4mfile24m, then overwrites the 4mfile24m with the contents of the edit window. The filename is retrieved from the Text widget directly to the right of the 4mLoad24m button. Load Loads the file named in the text widget immediately to the right of the this button and displays it in the Edit window. 1mRESOURCES0m For 4mxedit24m the available resources are: 1menableBackups (22mClass 1mEnableBackups)0m Specifies that, when edits made to an existing file are saved, 4mxedit24m is to copy the original version of that file to 4mfile24m before it saves the changes. The default value for this resource is ``on,'' stating that backups should be created. 1mbackupNamePrefix (22mClass 1mBackupNamePrefix)0m Specifies a string that is to be prepended to the backup filename. The default is that no string shall be prepended. 1mbackupNameSuffix (22mClass 1mBackupNameSuffix)0m Specifies a string that is to be appended to the backup filename. The default is to use ``~'' as the suffix. 1mpositionFormat (22mClass 1mFormat)0m Specifies a format string used to display the cursor position. This string uses printf(3) like notation, where 1m%l 22mprints the line number, 1m%c 22mprints the column number, 1m%p 22mprints the insert position offset, and 1m%s 22mprints the current file size. It is also allowed to specify field sizes, with the notation 1m%-?[0-9]+ 22m. The default format string is ``L%l'', which shows the character ``L'' followed by the line number. 1mhints (22mClass 1mHints)0m Specifies a list of strings, separated by new lines, that will be displayed in the bc_label window. 1mhintsInterval (22mClass 1mInterval)0m Specifies the interval in seconds, which the hint string in the bc_label window will be changed. 1mchangedBitmap (22mClass 1mBitmap)0m Specifies the name of the Bitmap that will be displayed in the fileMenu, when the file being edited is changed. 1mautoReplace (22mClass 1mReplace)0m This resource is useful to automatically correct common misspelling errors, but can also be used to create simple macros. The format is 4m{non-blanks}{blanks}[{string}]24m. Fields are separeted by newlines. Example of use: nto not\n\ /macro some long string with \\\n newlines \\\n Will automatically replace the word 4mnto24m by 4mnot24m, and 4m/macro24m by 4msome24m 4mlong24m 4mstring24m 4mwith0m 4mnewlines24m when you type that words. 1mispell.dictionaries (22mClass 1mispell.Dictionary)0m Specifies a list of dictionary names, separeted by spaces, available to the ispell program. The default value is 4m"american0m 4mamericamed+24m 4menglish"24m. 1mispell.dictionary (22mClass 1mispell.Dictionary)0m Specifies the default dictionary to use. 1mispell*.wordChars (22mClass 1mispell*Chars)0m Specifies a set of characters that can be part of a legal word. The 4m24m field is one of the dictionaries specified in the 4mdictionaries24m resource. 1mispell.ispellCommand (22mClass 1mispell.CommandLine)0m The path to the ispell program, and possibly, additional arguments. You don't need to specify the ``-w'' option, neither the ``-a'' option. Refer to the 4mispell24m(1) manpage for more information on ispell options. 1mispell.formatting (22mClass 1mispell.TextFormat)0m Specifies which text formatting to use while spell checking the file. The available formats are 4mtext24m and 4mhtml24m. 1mispell*text.skipLines (22mClass 1mispell*text.Skip)0m Lines starting with one of the characters in this string will not be spell checked. This resource is only used in 4mtext24m mode. 1mispell.terseMode (22mClass 1mispell.Terse)0m When enabled, runs ispell in terse mode, not asking user interaction for words generated through compound formation (when using the ispell ``-C'' option), or words generated through affix removal. The default value is False. 1mispell.lookCommand (22mClass 1mispell.CommandLine)0m The path to the program to search for alternate words, and possibly, additional arguments. The default program used is 4m/usr/bin/egrep24m. 1mispell.wordsFile (22mClass 1mispell.Words)0m The path to the file[s] to search for alternate words. The default file is 4m/usr/share/dict/words24m. 1mispell.guessLabel (22mClass 1mispell.Status)0m String displayed in the ispell status bar when ispell returns a guess list of one or more words. The default value is 4mGuess24m. 1mispell.missLabel (22mClass 1mispell.Status)0m String displayed in the ispell status bar when ispell returns a list of one or more words to match a misspelled one. The default value is 4mMiss24m. 1mispell.rootLabel (22mClass 1mispell.Status)0m String displayed in the ispell status bar when the word is not in the dictionary, but it can be formed through a root one. The default value is 4mRoot:24m, and is followed by a space and the root word. 1mispell.noneLabel (22mClass 1mispell.Status)0m String displayed in the ispell status bar when there is no near misses. The default value is 4mNone24m. 1mispell.compoundLabel (22mClass 1mispell.Status)0m String displayed in the ispell status bar when the word being checked is formed by concatenation of two words. The default value is 4mCompound24m. 1mispell.okLabel (22mClass 1mispell.Status)0m String displayed in the ispell status bar when the checked word is in the dictionary. This string is only displayed when using the 4mcheck24m button in the xedit ispell interface. The default value is 4mOk24m. 1mispell.eofLabel (22mClass 1mispell.Status)0m The string displayed in the ispell status bar when the end of the file is reached. The default value is 4mEnd24m 4mOf24m 4mFile24m. 1mispell.repeatLabel (22mClass 1mispell.Status)0m The string displayed in the ispell status bar when two identical words are found together in the file. The default value is 4mRepeat24m. 1mispell.lookLabel (22mClass 1mispell.Status)0m The string displayed in the ispell status bar after displaying the results of the 4mLook24m command. If no results are found, the value of the 4mispell.noneLabel24m resource is shown. 1mispell.workingLabel (22mClass 1mispell.Status)0m The string displayed in the ispell status bar while xedit is communicating with ispell. The default value is 4m...24m. 1mWIDGETS0m In order to specify resources, it is useful to know the hierarchy of the widgets which compose 4mxedit24m. In the notation below, indentation indicates hierarchical structure. The widget class name is given first, followed by the widget instance name. Xedit xedit Paned paned Paned buttons Command quit Command save Command load Text filename Label bc_label Text messageWindow Label labelWindow Text editWindow 1mENVIRONMENT0m 4mDISPLAY24m to get the default host and display number. 4mXENVIRONMENT24m to get the name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property. 1mFILES0m 4m/usr/X11R6/lib/X11/app-defaults/Xedit0m specifies required resources 1mSEE ALSO0m 4mX24m(7), 4mxrdb24m(1), 4mAthena24m 4mWidget24m 4mSet0m 1mRESTRICTIONS0m Xedit is not a replacement to Emacs. 1mCOPYRIGHT0m Copyright 1988, Digital Equipment Corporation. Copyright 1989, X Consortium Copyright 1998, The XFree86 Project See 4mX24m(7) for a full statement of rights and permissions. 1mAUTHORS0m Chris D. Peterson, MIT X Consortium Paulo César Pereira de Andrade, The XFree86 Project XEV(1) XEV(1) 1mNAME0m xev - print contents of X events 1mSYNOPSIS0m 1mxev 22m[-display 4mdisplayname24m] [-geometry 4mgeom24m] [-bw 4mpixels24m] [-bs 4m{NotUseful,WhenMapped,Always}24m] [-id 4mwindowid24m] [-s] [-name 4mstring24m] [-rv] 1mDESCRIPTION0m 4mXev24m creates a window and then asks the X server to send it 4mevents0m whenever anything happens to the window (such as it being moved, resized, typed in, clicked in, etc.). You can also attach it to an existing window. It is useful for seeing what causes events to occur and to display the information that they contain; it is essentially a debugging and development tool, and should not be needed in normal usage. 1mOPTIONS0m 1m-display 4m22mdisplay0m This option specifies the X server to contact. 1m-geometry 4m22mgeom0m This option specifies the size and/or location of the window, if a window is to be created. 1m-bw 4m22mpixels0m This option specifies the border width for the window. 1m-bs 4m22m{NotUseful,WhenMapped,Always}0m This option specifies what kind of backing store to give the window. The default is NotUseful. Backing store refers to the the pixels saved off-screen when the X server maintains the contents of a window; NotUseful means that the xev process will redraw its contents itself, as necessary. 1m-id 4m22mwindowid0m This option specifies that the window with the given id should be monitored, instead of creating a new window. 1m-s 22mThis option specifies that save-unders should be enabled on the window. Save unders are similar to backing store, but they refer rather to the saving of pixels off-screen when the current window obscures other windows. Save unders are only advisory, and are normally set for popup dialogs and other transient windows. 1m-name 4m22mstring0m This option specifies the name to assign to the created window. 1m-rv 22mThis option specifies that the window should be in reverse video. 1mSEE ALSO0m X(7), xwininfo(1), xdpyinfo(1), Xlib Programmers Manual, X Protocol Specification See 4mX(7)24m for a full statement of rights and permissions. 1mAUTHOR0m Jim Fulton, MIT X Consortium XEYES(1) XEYES(1) 1mNAME0m xeyes - a follow the mouse X demo 1mSYNOPSIS0m 1mxeyes 22m[-option ...] 1mDESCRIPTION0m 4mXeyes24m watches what you do and reports to the Boss. 1mOPTIONS0m 1m-fg 4m22mforeground24m 4mcolor0m choose a different color for the pupil of the eyes. 1m-bg 4m22mbackground24m 4mcolor0m choose a different color for the background. 1m-outline 4m22moutline24m 4mcolor0m choose a different color for the outline of the eyes. 1m-center 4m22mcenter24m 4mcolor0m choose a different color for the center of the eyes. 1m-backing 4m22m{24m 4mWhenMapped24m 4mAlways24m 4mNotUseful24m 4m}0m selects an appropriate level of backing store. 1m-geometry 4m22mgeometry0m define the initial window geometry; see 4mX(7)24m. 1m-display 4m22mdisplay0m specify the display to use; see 4mX(7)24m. 1m-bd 4m22mborder24m 4mcolor0m choose a different color for the window border. 1m-bw 4m22mborder24m 4mwidth0m choose a different width for the window border. 1m-shape 22muses the SHAPE extension to shape the window. This is the default. 1m+shape 22mDisables uses the SHAPE extension to shape the window. 1mSEE ALSO0m X(7), X Toolkit documentation See 4mX(7)24m for a full statement of rights and permissions. 1mAUTHOR0m Keith Packard, MIT X Consortium Copied from the NeWS version written (apparently) by Jeremy Huxtable as seen at SIGGRAPH '88 XFD(1) XFD(1) 1mNAME0m xfd - display all the characters in an X font 1mSYNOPSIS0m 1mxfd 22m[-options ...] 1m-fn 4m22mfontname0m 1mxfd 22m[-options ...] 1m-fa 4m22mfontname0m 1mDESCRIPTION0m The 4mxfd24m utility creates a window containing the name of the font being displayed, a row of command buttons, several lines of text for displaying character metrics, and a grid containing one glyph per cell. The characters are shown in increasing order from left to right, top to bottom. The first character displayed at the top left will be character number 0 unless the 1m-start 22moption has been supplied in which case the character with the number given in the 1m-start 22moption will be used. The characters are displayed in a grid of boxes, each large enough to hold any single character in the font. Each character glyph is drawn using the PolyText16 request (used by the 4mXlib24m routine 1mXDrawString1622m). If the 1m-box 22moption is given, a rectangle will be drawn around each character, showing where an ImageText16 request (used by the 4mXlib0m routine 1mXDrawImageString1622m) would cause background color to be displayed. The origin of each glyph is normally set so that the character is drawn in the upper left hand corner of the grid cell. However, if a glyph has a negative left bearing or an unusually large ascent, descent, or right bearing (as is the case with 4mcursor24m font), some character may not appear in their own grid cells. The 1m-center 22moption may be used to force all glyphs to be centered in their respective cells. All the characters in the font may not fit in the window at once. To see the next page of glyphs, press the 4mNext24m button at the top of the window. To see the previous page, press 4mPrev24m. To exit 4mxfd24m, press 4mQuit24m. Individual character metrics (index, width, bearings, ascent and descent) can be displayed at the top of the window by clicking on the desired character. The font name displayed at the top of the window is the full name of the font, as determined by the server. See 4mxlsfonts24m for ways to generate lists of fonts, as well as more detailed summaries of their metrics and properties. 1mOPTIONS0m 4mxfd24m accepts all of the standard toolkit command line options along with the additional options listed below: 1m-fn 4m22mfont0m This option specifies the core X server side font to be displayed. This can also be set with the FontGrid 1mfont0m resource. A font must be specified. 1m-fa 4m22mfont0m This option specifies a Xft font to be displayed. This can also be set with the FontGrid 1mface 22mresource. A font pattern must be specified. 1m-box 22mThis option indicates that a box should be displayed outlining the area that would be filled with background color by an ImageText request. This can also be set with the FontGrid 1mboxChars 22mresource. The default is False. 1m-center 22mThis option indicates that each glyph should be centered in its grid. This can also be set with the FontGrid 1mcenterChars0m resource. The default is False. 1m-start 4m22mnumber0m This option specifies the glyph index of the upper left hand corner of the grid. This is used to view characters at arbitrary locations in the font. This can also be set with the FontGrid 1mstartChar 22mresource. The default is 0. 1m-bc 4m22mcolor0m This option specifies the color to be used if ImageText boxes are drawn. This can also be set with the FontGrid 1mboxColor0m resource. 1m-rows 4m22mnumrows0m This option specifies the number of rows in the grid. This can also be set with the FontGrid 1mcellRows 22mresource. 1m-columns 4m22mnumcols0m This option specifies the number of columns in the grid. This can also be set with the FontGrid 1mcellColumns 22mresource. 1mWIDGETS0m In order to specify resources, it is useful to know the widgets which compose 4mxfd24m. In the notation below, indentation indicates hierarchical structure. The widget class name is given first, followed by the widget instance name. The application class name is Xfd. Xfd xfd Paned pane Label fontname Box box Command quit Command prev Command next Label select Label metrics Label range Label start Form form FontGrid grid 1mFONTGRID RESOURCES0m The FontGrid widget is an application-specific widget, and a subclass of the Simple widget in the Athena widget set. The effects and instance names of this widget's resources are given in the 1mOPTIONS0m section. Capitalize the first letter of the resource instance name to get the corresponding class name. 1mAPPLICATION SPECIFIC RESOURCES0m The instance names of the application specific resources are given below. Capitalize the first letter of the resource instance name to get the corresponding class name. These resources are unlikely to be interesting unless you are localizing xfd for a different language. 1mselectFormat0m Specifies a printf-style format string used to display information about the selected character. The default is "character 0x%02x%02x (%u,%u) (%#o,%#o)". The arguments that will come after the format string are char.byte1, char.byte2, char.byte1, char.byte2, char.byte1, char.byte2. char.byte1 is byte 1 of the selected character. char.byte2 is byte 2 of the selected character. 1mmetricsFormat0m Specifies a printf-style format string used to display character metrics. The default is "width %d; left %d, right %d; ascent %d, descent %d (font %d, %d)". The arguments that will come after the format string are the character metrics width, lbearing, rbearing, character ascent, character descent, font ascent, and font descent. 1mrangeFormat0m Specifies a printf-style format string used to display the range of characters currently being displayed. The default is "range: 0x%02x%02x (%u,%u) thru 0x%02x%02x (%u,%u)". The arguments that will come after the format string are the following fields from the XFontStruct that is returned from opening the font: min_byte1, min_char_or_byte2, min_byte1, min_char_or_byte2, max_byte1, max_char_or_byte2, max_byte1, max_char_or_byte2. 1mstartFormat0m Specifies a printf-style format string used to display information about the character at the upper left corner of the font grid. The default is "upper left: 0x%04x (%d,%d)". The arguments that will come after the format string are the new character, the high byte of the new character, and the low byte of the new character. 1mnocharFormat0m Specifies a printf-style format string to display when the selected character does not exist. The default is "no such character 0x%02x%02x (%u,%u) (%#o,%#o)". The arguments that will come after the format string are the same as for the 1mselectFormat 22mresource. 1mSEE ALSO0m X(7), xlsfonts(1), xrdb(1), xfontsel(1), fontconfig(3), 4mX24m 4mLogical24m 4mFont0m 4mDescription24m 4mConventions0m 1mBUGS0m The program should skip over pages full of non-existent characters. 1mAUTHOR0m Jim Fulton, MIT X Consortium; previous program of the same name by Mark Lillibridge, MIT Project Athena. XFINDPROXY(1) XFINDPROXY(1) 1mNAME0m xfindproxy - locate proxy services 1mSYNOPSIS0m 1mxfindproxy -manager 4m22mmanagerAddr24m 1m-name 4m22mserviceName24m 1m-server 4m22mserverAddr0m [1m-auth22m] [1m-host 4m22mhostAddr24m] [1m-options 4m22mopts24m] 1mDESCRIPTION0m 1mxfindproxy 22mis a program used to locate available proxy services. It utilizes the Proxy Management Protocol to communicate with a proxy manager. The proxy manager keeps track of all available proxy services, starts new proxies when necessary, and makes sure that proxies are shared whenever possible. The 1m-manager 22margument is required, and it specifies the network address of the proxy manager. The format of the address is a standard ICE network id (for example, "tcp/blah.x.org:6500"). The 1m-name 22margument is required, and it specifies the name of the desired proxy service (for example, "LBX"). The name is case insensitive. The 1m-server 22margument is also required, and it specifies the address of the target server. The format of the address is specific to the proxy service specified with the -name argument. For example, for a proxy service of "LBX", the address would be an X display address (e.g, "blah.x.org:0"). The 1m-auth 22margument is optional. If specified, xfindproxy will read 2 lines from standard input. The first line is an authorization/authentication name. The second line is the authorization/authentication data in hex format (the same format used by xauth). xfindproxy will pass this auth data to the proxy, and in most cases, will be used by the proxy to authorize/authenticate itself to the target server. The 1m-host 22margument is optional. If xfindproxy starts a new proxy service, it will pass the host specified. The proxy may choose to restrict all connections to this host. In the event that xfindproxy locates an already existing proxy, the host will be passed, but the semantics of how the proxy uses this host are undefined. The 1m-options 22margument is optional. If xfindproxy starts a new proxy service, it will pass any options specified. The semantics of the options are specific to each proxy server and are not defined here. In the event that xfindproxy locates an already existing proxy, the options will be passed, but the semantics of how the proxy uses these options are undefined. If xfindproxy is successful in obtaining a proxy address, it will print it to stdout. The format of the proxy address is specific to the proxy service being used. For example, for a proxy service of "LBX", the proxy address would be the X display address of the proxy (e.g, "blah.x.org:63"). If xfindproxy is unsuccessful in obtaining a proxy address, it will print an error to stderr. 1mSEE ALSO0m proxymngr (1), Proxy Management Protocol spec V1.0 1mAUTHOR0m Ralph Mor, X Consortium XFONTSEL(1) XFONTSEL(1) 1mNAME0m xfontsel - point and click selection of X11 font names 1mSYNTAX0m 1mxfontsel 22m[-4mtoolkitoption24m ...] [1m-pattern 4m22mfontname24m1m] [-print] [-sample0m 4mtext24m1m] [-sample16 4m22mtext1624m1m] [-sampleUCS 4m22mtextUCS24m1m] [-scaled]0m 1mDESCRIPTION0m The 4mxfontsel24m application provides a simple way to display the fonts known to your X server, examine samples of each, and retrieve the X Logical Font Description ("XLFD") full name for a font. If 1m-pattern 22mis not specified, all fonts with XLFD 14-part names will be selectable. To work with only a subset of the fonts, specify 1m-pattern0m followed by a partially or fully qualified font name; e.g., ``-pattern *medium*'' will select that subset of fonts which contain the string ``medium'' somewhere in their font name. Be careful about escaping wildcard characters in your shell. If 1m-print 22mis specified on the command line the selected font specifier will be written to standard output when the 4mquit24m button is activated. Regardless of whether or not 1m-print 22mwas specified, the font specifier may be made the PRIMARY (text) selection by activating the 4mselect0m button. The 1m-sample 22moption specifies the sample text to be used to display the selected font if the font is linearly indexed, overriding the default. The 1m-sample16 22moption specifies the sample text to be used to display the selected font if the font is matrix encoded, overriding the default. The 1m-sampleUCS 22moption specifies the sample text encoded in the UTF-8 form to be used to display the selected font if the font has a CHARSET_REGISTRY of ISO10646, overriding the default. The 1m-scaled 22moption enables the ability to select scaled fonts at arbitrary pixel or point sizes. 1mINTERACTIONS0m Clicking any pointer button in one of the XLFD field names will pop up a menu of the currently-known possibilities for that field. If previous choices of other fields were made, only values for fonts which matched the previously selected fields will be selectable; to make other values selectable, you must deselect some other field(s) by choosing the ``*'' entry in that field. Unselectable values may be omitted from the menu entirely as a configuration option; see the 1mShowUnselectable 22mresource, below. Whenever any change is made to a field value, 4mxfontsel24m will assert ownership of the PRIMARY_FONT selection. Other applications (see, e.g., 4mxterm24m) may then retrieve the selected font specification. Scalable fonts come back from the server with zero for the pixel size, point size, and average width fields. Selecting a font name with a zero in these positions results in an implementation-dependent size. Any pixel or point size can be selected to scale the font to a particular size. Any average width can be selected to anamorphically scale the font (although you may find this challenging given the size of the average width menu). Clicking the left pointer button in the 4mselect24m widget will cause the currently selected font name to become the PRIMARY text selection as well as the PRIMARY_FONT selection. This then allows you to paste the string into other applications. The 1mselect 22mbutton remains highlighted to remind you of this fact, and de-highlights when some other application takes the PRIMARY selection away. The 4mselect24m widget is a toggle; pressing it when it is highlighted will cause 4mxfontsel24m to release the selection ownership and de-highlight the widget. Activating the 4mselect24m widget twice is the only way to cause 4mxfontsel24m to release the PRIMARY_FONT selection. 1mRESOURCES0m The application class is 1mXFontSel22m. Most of the user-interface is configured in the app-defaults file; if this file is missing a warning message will be printed to standard output and the resulting window will be nearly incomprehensible. Most of the significant parts of the widget hierarchy are documented in 4m/usr/X11R6/lib/X11/app-defaults/XFontSel24m, Application specific resources: 1mcursor (22mclass 1mCursor)0m Specifies the cursor for the application window. 1mpattern (22mclass 1mPattern)0m Specifies the font name pattern for selecting a subset of available fonts. Equivalent to the 1m-pattern 22moption. Most useful patterns will contain at least one field delimiter; e.g. ``*-m-*'' for monospaced fonts. 1mpixelSizeList (22mclass 1mPixelSizeList)0m Specifies a list of pixel sizes to add to the pixel size menu, so that scalable fonts can be selected at those pixel sizes. The default pixelSizeList contains 7, 30, 40, 50, and 60. 1mpointSizeList (22mclass 1mPointSizeList)0m Specifies a list of point sizes (in units of tenths of points) to add to the point size menu, so that scalable fonts can be selected at those point sizes. The default pointSizeList contains 250, 300, 350, and 400. 1mprintOnQuit (22mclass 1mPrintOnQuit)0m If 4mTrue24m the currently selected font name is printed to standard output when the quit button is activated. Equivalent to the 1m-print 22moption. 1msampleText (22mclass 1mText)0m The sample 1-byte text to use for linearly indexed fonts. Each glyph index is a single byte, with newline separating lines. 1msampleText16 (22mclass 1mText16)0m The sample 2-byte text to use for matrix-encoded fonts. Each glyph index is two bytes, with a 1-byte newline separating lines. 1mscaledFonts (22mclass 1mScaledFonts)0m If 4mTrue24m then selection of arbitrary pixel and point sizes for scalable fonts is enabled. Widget specific resources: 1mshowUnselectable (22mclass 1mShowUnselectable)0m Specifies, for each field menu, whether or not to show values that are not currently selectable, based upon previous field selections. If shown, the unselectable values are clearly identified as such and do not highlight when the pointer is moved down the menu. The full name of this resource is 1mfieldN.menu.options.showUnselectable22m, class 1mMenuButton.SimpleMenu.Options.ShowUnselectable22m; where N is replaced with the field number (starting with the left-most field numbered 0). The default is True for all but field 11 (average width of characters in font) and False for field 11. If you never want to see unselectable entries, '*menu.options.showUnselectable:False' is a reasonable thing to specify in a resource file. 1mFILES0m $XFILESEARCHPATH/XFontSel 1mSEE ALSO0m xrdb(1), xfd(1) 1mBUGS0m Sufficiently ambiguous patterns can be misinterpreted and lead to an initial selection string which may not correspond to what the user intended and which may cause the initial sample text output to fail to match the proffered string. Selecting any new field value will correct the sample output, though possibly resulting in no matching font. Should be able to return a FONT for the PRIMARY selection, not just a STRING. Any change in a field value will cause 4mxfontsel24m to assert ownership of the PRIMARY_FONT selection. Perhaps this should be parameterized. When running on a slow machine, it is possible for the user to request a field menu before the font names have been completely parsed. An error message indicating a missing menu is printed to stderr but otherwise nothing bad (or good) happens. The average-width menu is too large to be useful. 1mCOPYRIGHT0m Copyright 1989, 1991, X Consortium See 4mX(7)24m for a full statement of rights and permissions. 1mAUTHOR0m Ralph R. Swick, Digital Equipment Corporation/MIT Project Athena Mark Leisher added the support for the UTF-8 sample text. XFS(1) XFS(1) 1mNAME0m xfs - X font server 1mSYNOPSIS0m 1mxfs 22m[-config 4mconfiguration_file24m] [-daemon] [-droppriv] [-ls 4mlisten_socket24m] [-nodaemon] [-port 4mtcp_port24m] [-user 4musername24m] 1mDESCRIPTION0m 4mXfs24m is the X Window System font server. It supplies fonts to X Window System display servers. 1mSTARTING THE SERVER0m The server is usually run by a system administrator, and started via boot files like 4m/etc/rc.local24m. Users may also wish to start private font servers for specific sets of fonts. 1mOPTIONS0m 1m-config configuration_file0m Specifies the configuration file the font server will use. If this parameter is not specified, the default file, 4m/usr/X11R6/lib/X11/fs/config24m will be used. 1m-ls listen_socket0m Specifies a file descriptor which is already set up to be used as the listen socket. This option is only intended to be used by the font server itself when automatically spawning another copy of itself to handle additional connections. 1m-port tcp_port0m Specifies the TCP port number on which the server will listen for connections. The default port number is 7100. 1m-daemon 22mInstructs xfs to fork and go into the background automatically at startup If this option is not specified, xfs will run as a regular process (unless xfs was built to daemonize by default). 1m-droppriv0m If specified, xfs will attempt to run as user and group 4mxfs0m (unless the 1m-user 22moption is used). This has been implemented for security reasons, as xfs may have undiscovered buffer overflows or other paths for possible exploit, both local and remote. With this option, you may also wish to specify "no- listen = tcp" in the config file, which ensures that xfs will not to use a TCP port at all. 1m-nodaemon0m When xfs is built to daemonize (run in the background) by default, this prevents that and starts xfs up as a regular process. 1m-user username0m This is equivalent to 1m-droppriv 22mexcept that xfs will run as user 4musername24m. 1mSIGNALS0m 4mSIGTERM24m This causes the font server to exit cleanly. 4mSIGUSR124m This signal is used to cause the server to re-read its configuration file. 4mSIGUSR224m This signal is used to cause the server to flush any cached data it may have. 4mSIGHUP24m This signal is used to cause the server to reset, closing all active connections and re-reading the configuration file. 1mCONFIGURATION0m The configuration language is a list of keyword and value pairs. Each keyword is followed by an '=' and then the desired value. Recognized keywords include: catalogue (list of string) Ordered list of font path element names. Use of the keyword "catalogue" is very misleading at present, the current implementation only supports a single catalogue ("all"), containing all of the specified fonts. alternate-servers (list of string) List of alternate servers for this font server. client-limit (cardinal) Number of clients this font server will support before refusing service. This is useful for tuning the load on each individual font server. clone-self (boolean) Whether this font server should attempt to clone itself when it reachs the client-limit. default-point-size (cardinal) The default pointsize (in decipoints) for fonts that don't specify. The default is 120. default-resolutions (list of resolutions) Resolutions the server supports by default. This information may be used as a hint for pre-rendering, and substituted for scaled fonts which do not specify a resolution. A resolution is a comma-separated pair of x and y resolutions in pixels per inch. Multiple resolutions are separated by commas. error-file (string) Filename of the error file. All warnings and errors will be logged here. no-listen (trans-type) Disable a transport type. For example, TCP/IP connections can be disabled with no-listen tcp port (cardinal) TCP port on which the server will listen for connections. use-syslog (boolean) Whether syslog(3) (on supported systems) is to be used for errors. deferglyphs (string) Set the mode for delayed fetching and caching of glyphs. Value is "none", meaning deferred glyphs is disabled, "all", meaning it is enabled for all fonts, and "16", meaning it is enabled only for 16-bits fonts. 1mEXAMPLE0m # # sample font server configuration file # # allow a max of 10 clients to connect to this font server client-limit = 10 # when a font server reaches its limit, start up a new one clone-self = on # alternate font servers for clients to use alternate-servers = hansen:7101,hansen:7102 # where to look for fonts # the first is a set of Speedo outlines, the second is a set of # misc bitmaps and the last is a set of 100dpi bitmaps # catalogue = /usr/X11R6/lib/X11/fonts/speedo, /usr/X11R6/lib/X11/fonts/misc, /usr/X11R6/lib/X11/fonts/100dpi/ # in 12 points, decipoints default-point-size = 120 # 100 x 100 and 75 x 75 default-resolutions = 100,100,75,75 use-syslog = off 1mFONT SERVER NAMES0m One of the following forms can be used to name a font server that accepts TCP connections: tcp/4mhostname24m:4mport0m tcp/4mhostname24m:4mport24m/4mcataloguelist0m The 4mhostname24m specifies the name (or decimal numeric address) of the machine on which the font server is running. The 4mport24m is the decimal TCP port on which the font server is listening for connections. The 4mcataloguelist24m specifies a list of catalogue names, with '+' as a separator. Examples: 4mtcp/fs.x.org:710024m, 4mtcp/18.30.0.212:7101/all24m. One of the following forms can be used to name a font server that accepts DECnet connections: decnet/4mnodename24m::font$4mobjname0m decnet/4mnodename24m::font$4mobjname24m/4mcataloguelist0m The 4mnodename24m specifies the name (or decimal numeric address) of the machine on which the font server is running. The 4mobjname24m is a normal, case-insensitive DECnet object name. The 4mcataloguelist24m specifies a list of catalogue names, with '+' as a separator. Examples: 4mDECnet/SRVNOD::FONT$DEFAULT24m, 4mdecnet/44.70::font$special/symbols24m. 1mSEE ALSO0m X(7), 4mThe24m 4mX24m 4mFont24m 4mService24m 4mProtocol24m, 4mFont24m 4mserver24m 4mimplementation24m 4moverview0m 1mBUGS0m Multiple catalogues should be supported. 1mAUTHORS0m Dave Lemke, Network Computing Devices, Inc Keith Packard, Massachusetts Institute of Technology XFSINFO(1) XFSINFO(1) 1mNAME0m xfsinfo - X font server information utility 1mSYNOPSIS0m 1mxfsinfo 22m[-server 4mservername24m] 1mDESCRIPTION0m 4mXfsinfo24m is a utility for displaying information about an X font server. It is used to examine the capabilities of a server, the predefined values for various parameters used in communicating between clients and the server, and the font catalogues and alternate servers that are available. 1mOPTIONS0m 1m-server 4m22mhost24m1m:4m22mport0m This option specifies the X font server to contact. 1mHISTORY0m 4mXfsinfo24m was originally called 4mfsinfo.24m It was renamed to avoid a clash with the 4mfsinfo24m utility from the Berkeley automounter 4mamd.0m 1mEXAMPLE0m The following shows a sample produced by 4mxfsinfo.0m name of server: hansen:7100 version number: 1 vendor string: Font Server Prototype vendor release number: 17 maximum request size: 16384 longwords (65536 bytes) number of catalogues: 1 all Number of alternate servers: 2 #0 hansen:7101 #1 hansen:7102 number of extensions: 0 1mENVIRONMENT0m 1mFONTSERVER0m To get the default fontserver. 1mSEE ALSO0m xfs(1), fslsfonts(1) 1mAUTHOR0m Dave Lemke, Network Computing Devices, Inc XFWP(1) XFWP(1) 1mNAME0m xfwp - X firewall proxy 1mSYNOPSIS0m 1mxfwp 22m[option ...] 1mCOMMAND LINE OPTIONS0m The command line options that can be specified are: 1m-cdt 4m22mnum_secs0m Used to override the default time-to-close (604800 seconds) for xfwp client data connections on which there is no activity (connections over which X protocol is already being relayed by xfwp) 1m-clt 4m22mnum_secs0m Used to override the default time-to-close (86400 seconds) for xfwp client listen ports (ports on xfwp to which X clients first connect when trying to reach an X server) 1m-pdt 4m22mnum_secs0m Used to override the default time-to-close (3600 seconds) for Proxy Manager connections on which there is no activity 1m-config 4m22mfile_name0m Used to specify the configuration the name of the configuration file 1m-pmport 4m22mport_number0m Used to override the default port address (4444) for proxy manager connections 1m-verify 22mUsed to display the configuration file rule that was actually matched for each service request 1m-logfile 4m22mfile_name0m Used to specify the name of a file where audit information should be logged. The format of a logged entry is: time of day; event code; source IP address; destination IP address; and configuration rule number. The event codes are: "0" for a successful connection; "1" if a connection is denied because of a configuration rule; and "2" if a connection is denied because of an authorization failure. If the event code is "1", and a configuration file is used, the configuration rule number is the line number of the configuration file where the match was made (see the section CONFIGURATION FILE for more information). If the event code is not "1", or if no configuration file is used, the configuration rule number is "-1". 1m-loglevel 4m22m{0,1}0m Used to specify the amount of audit detail that should be logged. If "0", all connections are logged. If "1", only unsuccessful connections are logged. 1m-max_pm_conns 4m22mnum_connections0m Used to specify the maximum number of Proxy Manager connections. The default is 10. 1m-max_pm_conns 4m22mnum_connections0m Used to specify the maximum number of X server connections. The default is 100. 1mDESCRIPTION0m The X firewall proxy (xfwp) is an application layer gateway proxy that may be run on a network firewall host to forward X traffic across the firewall. Used in conjunction with the X server Security extension and authorization checking, xfwp constitutes a safe, simple, and reliable mechanism both to hide the addresses of X servers located on the Intranet and to enforce a server connection policy. Xfwp cannot protect against mischief originating on the Intranet; however, when properly configured it can guarantee that only trusted clients originating on authorized external Internet hosts will be allowed inbound access to local X servers. To use xfwp there must be an X proxy manager running in the local environment which has been configured at start-up to know the location of the xfwp. [NOTE: There may be more than one xfwp running in a local environment; see notes below on load balancing for further discussion.] Using the xfindproxy utility (which relays its requests through the proxy manager) a user asks xfwp to allocate a client listen port for a particular X server, which is internally associated with all future connection requests for that server. This client listen port address is returned by the proxy manager through xfindproxy. The xfwp hostname and port number is then passed out-of-band (i.e., via a Web browser) to some remote X client, which will subsequently connect to xfwp instead of to the target X server. When an X client connection request appears on one of xfwp's listen ports, xfwp connects to the X server associated with this listen port and performs authorization checks against the server as well as against its own configurable access control list for requesting clients. If these checks fail, or if the requested server does not support the X Security Extension, the client connection is refused. Otherwise, the connection is accepted and all ensuing data between client and server is relayed by xfwp until the client terminates the connection or, in the case of an inactive client, until a configured timeout period is exceeded. Xfwp is designed to block while waiting for activity on its connections, thereby minimizing demand for system cycles. If xfwp is run without a configuration file and thus no sitepolicy is defined, if xfwp is using an X server where xhost + has been run to turn off host-based authorization checks, when a client tries to connect to this X server via xfwp, the X server will deny the connection. If xfwp does not define a sitepolicy, host-based authorization must be turned on for clients to connect to an X server via the xfwp. 1mINTEROPERATION WITH IP PACKET-FILTERING ROUTERS0m The whole purpose of the xfwp is to provide reliable control over access to Intranet X servers by clients originating outside the firewall. At the present time, such access control is typically achieved by firewall configurations incorporating IP packet-filtering routers. Frequently, the rules for such filters deny access to X server ports (range 6000 - 6xxx) for all Intranet host machines. In order for xfwp to do its job, restrictions on access for ports 6001 - 6xxx must be removed from the rule-base of the IP packet-filtering router. [NOTE: xfwp only assigns ports in the range beginning with 6001; access to port 6000 on all Intranet hosts may continue to be denied.] This does not mean the Intranet firewall will be opened for indiscriminate entry by X clients. Instead, xfwp supports a fully configurable rule-based access control system, similar to that of the IP packet-filter router itself. Xfwp in effect adds another level of packet-filtering control which is fully configurable and applies specifically to X traffic. See section entitled CONFIGURATION FILE, below, for further details. 1mINSTALLATION, SETUP AND TROUBLESHOOTING0m Xfwp is typically run as a background process on the Intranet firewall host. It can be launched using any of the command-line options described above. As noted above, xfwp works only in conjunction with proxy manager and the xfindproxy utility. It can also be configured to support a user-defined X server site security policy, in which the X server is required to indicate to xfwp whether or not it supports the particular policy. Consult the X server man pages for further information on these components. Xfwp diagnostics can be turned on by compiling with the -DDEBUG switch. Connection status can be recorded by using the -logfile and -loglevel command line options. 1mPERFORMANCE, LOAD BALANCING AND RESOURCE MANAGEMENT0m Xfwp manages four different kinds of connections: proxy manager (PM) data, X client listen, X client data, and X server. The sysadmin employing xfwp must understand how the resources for each of these connection types are allocated and reclaimed by xfwp in order to optimize the availability of xfwp service. Each connection-type has a default number of allocation slots and a default timeout. The number of allocation slots for PM connections and X server connections is configurable via command line options. Connection timeouts are also configurable via command line options. Each connection timeout represents the period the connection will be allowed to remain open in the absence of any activity on that connection. Whenever there is activity on a connection, the time-to- close is automatically reset. The default distribution of total process connection slots across the four connection types, as well as the choice of default timeouts for the connection types, is governed by a number of assumptions embedded in the xfwp use model. The default number of PM connections is 10 and the default duration for PM connections is 3,600 seconds (1 hour) for each connection after time of last activity. At start-up, xfwp listens for PM connection requests on any non-reserved port (default of 4444 if not specified on the xfwp command-line). The PM normally connects to xfwp only when a call is made to the PM with xfindproxy. Thereafter, the PM remains connected to xfwp, even after the messaging between them has been completed, for the default connection duration period. In some cases this may result in depletion of available PM connection slots. If the sysadmin expects connections to a single xfwp from many PM's, xfwp should be started using the -pdt command line option, with a timeout value reflecting the desired duration that inactive connections will be permitted to remain open. Xfwp client listeners are set up by a call to xfindproxy and continue to listen for X client connection requests for a default duration of 86,400 seconds (24 hours) from the point of last activity. After this time they are automatically closed and their fd's recovered for future allocation. In addressing the question of how to choose some alternative timeout value which will guarantee the availability of client listen ports, sysadmins should take into consideration the expected delay between the time when the listener was allocated (using xfindproxy) and the time when a client actually attempts to connect to xfwp, as well the likelihood that client listeners will be re-used after the initial client data connection is closed. Each client connection is allocated a default lifetime of 604,800 seconds (7 * 24 hours) from the point when it last saw activity. After this time it is automatically closed and its fd's recovered for future allocation. Because server connections are not actually established until a connection request from a remote X client arrives at one of the xfwp's client listen ports, the client data timeout applies both to client-xfwp connections as well as to xfwp-server connections. If the system administrator ex