Annotation of xsrc/xfree/xc/RELNOTES, Revision 1.1.1.6
1.1.1.6 ! tron 1: Release Notes for XFree86[tm] 4.3.0
1.1 veego 2:
3: The XFree86 Project, Inc
4:
1.1.1.6 ! tron 5: 26 February 2003
1.1 veego 6:
7: Abstract
8:
1.1.1.5 tron 9: This document contains some information about features present in
1.1.1.6 ! tron 10: XFree86 4.3.0 and their status.
1.1 veego 11:
12: 1. Introduction to the 4.x Release Series
13:
1.1.1.3 tron 14: XFree86 4.0 was the first official release of the new XFree86 4 series. The
1.1.1.6 ! tron 15: current release (4.3.0) is the latest in that series. XFree86 4 represents a
1.1.1.3 tron 16: significant redesign of the XFree86 X server. Not all of the hardware
1.1.1.6 ! tron 17: drivers from 3.3.x have been ported to 4.x yet, but conversely, 4.x has sup-
! 18: port for a lot of hardware that is not supported in 3.3.x. Our Driver Status
! 19: document summarizes how the hardware driver support compares between 3.3.6
! 20: and 4.3.0. Please check there first before downloading 4.3.0.
1.1 veego 21:
22: The 4.0.1 release introduced a new graphical configuration tool, "xf86cfg",
1.1.1.6 ! tron 23: and a text mode interface was added to it for the 4.0.2 release. It is the
! 24: preferred configuration tool provided by with XFree86. The trusty old text-
! 25: based tool "xf86config" can also be used for generating X server config
! 26: files. In addition to these tools, the XFree86 server has some built in
! 27: capabilities for generating a base config file. This works well for most
! 28: hardware, and in most cases is the easiest way to get an initial config file.
! 29: To try it out, just run (as root):
! 30:
! 31: XFree86 -configure
! 32:
1.1 veego 33: Each of these configuration options will give you a reasonable starting point
34: for a suitable configuration file. We've put some effort into documenting
1.1.1.6 ! tron 35: the 4.3.0 config file format, and you can find that information in the
! 36: XF86Config manual page. Check there and the driver-specific manual pages and
! 37: the related documentation for further information. References to this
! 38: driver-specific information can be found in the tables below (section 3.,
! 39: page 1).
! 40:
! 41: We have plans to make the configuration file optional in a future release.
! 42: The XFree86 server is close to being able to automatically determine a com-
! 43: plete base configuration for most popular hardware configurations.
1.1 veego 44:
45: Before you go to download and install the binary distributions for this
46: release, please have a quick read through the Installation Document. It may
47: save you some time and help you figure out which of the binary releases you
48: need.
49:
1.1.1.6 ! tron 50: The next section describes what is new in the latest version (4.3.0) compared
! 51: with the previous full release (4.2.0). The other sections below describe
1.1.1.5 tron 52: some of the new features and changes between 3.3.x and 4.0. There are lot's
53: of new features, and we definitely don't have enough space to cover them all
54: here.
1.1 veego 55:
1.1.1.6 ! tron 56: 2. Summary of new features in 4.3.0.
1.1 veego 57:
1.1.1.5 tron 58: 2.1 Video Driver Enhancements
1.1 veego 59:
1.1.1.6 ! tron 60: o ATI Radeon 9x00 2D support added, and 3D support added for the Radeon
! 61: 8500, 9000, 9100, and M9. The 3D support for the Radeon now includes
! 62: hardware TCL.
1.1.1.4 tron 63:
1.1.1.6 ! tron 64: o Support added to the i810 driver for Intel 845G, 852GM, 855GM and 865G
! 65: integrated graphics chipsets, including 2D, 3D (DRI) and XVideo. Sup-
! 66: port for the 830M has been improved, and XVideo support added.
1.1.1.4 tron 67:
1.1.1.6 ! tron 68: o National Semiconductor SC1x00, GX1, and GX2 chipset support added with
! 69: the "nsc" driver.
1.1.1.4 tron 70:
1.1.1.6 ! tron 71: o Support added for the NVIDIA nForce2 integrated graphics, GeForce 4,
! 72: and GeForce FX.
1.1.1.4 tron 73:
1.1.1.6 ! tron 74: o Major SiS driver updates for some of the latest chipsets. Unfortu-
! 75: nately the SiS 3D driver has had to be disabled because no one has yet
! 76: taken up the challenge to port it to Mesa 4.x.
1.1.1.4 tron 77:
1.1.1.6 ! tron 78: o The s3virge driver now has support for double scan modes on the DX
! 79: (with XVideo disabled).
1.1.1.4 tron 80:
1.1.1.6 ! tron 81: o Updates to the savage driver, including fixing problems with the
! 82: TwisterK, and problems with incorrect memory size detection.
1.1.1.4 tron 83:
1.1.1.6 ! tron 84: o 2D acceleration added for the Trident CyberBladeXP/Ai1 chipsets.
1.1.1.4 tron 85:
1.1.1.6 ! tron 86: o Support for big endian architectures has been added to the C&T driver.
1.1.1.4 tron 87:
1.1.1.6 ! tron 88: o Various updates and bug fixes have been made to most other drivers.
1.1.1.4 tron 89:
1.1.1.5 tron 90: 2.2 Input Driver Enhancements
1.1.1.4 tron 91:
1.1.1.6 ! tron 92: o The mouse driver now has automatic protocol detection for PS/2 mice.
1.1.1.4 tron 93:
1.1.1.6 ! tron 94: o Several new input drivers have been added, including tek4957, jamstudio
! 95: (js_x), fpit, palmax, and ur98 (Linux only).
1.1.1.4 tron 96:
1.1.1.5 tron 97: 2.3 X Server and Extension Updates
1.1.1.4 tron 98:
1.1.1.6 ! tron 99: o Support for the RandR extension has been partially integrated into the
! 100: XFree86 server, providing support for resizing the root window at run-
! 101: time.
1.1.1.4 tron 102:
1.1.1.6 ! tron 103: o The Mesa version used for OpenGLŪ 1.3 and DRI driver support has been
! 104: updated to 4.0.4.
1.1.1.4 tron 105:
1.1.1.6 ! tron 106: o The XFree86 server's hot keys (including those for switching modes and
! 107: virtual terminals) can now be configured via XKB. Previously they were
! 108: hard coded. An X server configuration option has been added to allow
! 109: the VT switching hot keys to be disabled.
1.1.1.4 tron 110:
1.1.1.5 tron 111: 2.4 Client and Library Updates
1.1.1.4 tron 112:
1.1.1.6 ! tron 113: o An Xcursor library providing support for alpha blended (ARGB) and ani-
! 114: mated cursors. Two Xcursor themes are provided (redglass and white-
! 115: glass), as well as the default "core" theme (the traditional cursors).
1.1.1.4 tron 116:
1.1.1.6 ! tron 117: o Xterm updated to patch level 173, including the following bugfixes:
1.1.1.4 tron 118:
1.1.1.6 ! tron 119: o Fix two infinite loops (special cases of mouse hilite tracking,
! 120: DECUDK parsing).
1.1.1.4 tron 121:
1.1.1.6 ! tron 122: o Make repainting of the 256-color example work properly.
1.1.1.4 tron 123:
1.1.1.6 ! tron 124: o Modify parser tables to improve detection of malformed control
! 125: sequences, making xterm behave more like a real DEC terminal.
1.1.1.4 tron 126:
1.1.1.6 ! tron 127: o Fix a problem with the blinking cursor which occasionally caused
! 128: xterm to pause until a key was pressed.
1.1.1.4 tron 129:
1.1.1.6 ! tron 130: o Fix improper parsing of multiple items in the ttyModes resource.
1.1 veego 131:
1.1.1.6 ! tron 132: and the following improvements:
1.1 veego 133:
1.1.1.6 ! tron 134: o Modify xterm to invoke luit.
1.1 veego 135:
1.1.1.6 ! tron 136: o Add simple session management client capabilities.
1.1 veego 137:
1.1.1.6 ! tron 138: o Add a modifyCursorKeys resource to control how the shift- and sim-
! 139: ilar modifiers are used to make a cursor escape sequence.
1.1 veego 140:
1.1.1.6 ! tron 141: o Check if the printerCommand resource string is empty, and use this
! 142: to allow the user to disable printer function.
1.1 veego 143:
1.1.1.6 ! tron 144: o Sort the options list which is displayed in help- and syntax-mes-
! 145: sages at runtime to simplify maintenance.
1.1 veego 146:
1.1.1.6 ! tron 147: 2.5 I18N and Font Updates
1.1 veego 148:
1.1.1.6 ! tron 149: o FreeType2 updated to version 2.1.1.
1.1 veego 150:
1.1.1.6 ! tron 151: o The "freetype" X server font backend has undergone a partial rewrite.
! 152: The new version is based on FreeType 2, and handles TrueType (including
! 153: OpenType/TTF), OpenType/CFF and Type 1 fonts. The old "type1" backend
! 154: is now deprecated, and is only used for CIDFonts by default.
! 155:
! 156: o A new utility called "mkfontscale", which builds fonts.scale files, has
! 157: been added.
! 158:
! 159: o The Xft library has undergone a major restructuring, and is now split
! 160: into fontconfig (which deals with font discovery and configuration and
! 161: is independent from X), and Xft itself (which uses fontconfig and deals
! 162: with font rasterisation and rendering. The format of the Xft font con-
! 163: figuration files has changed in an incompatible manner.
! 164:
! 165: o Support has been added to the Xft library to do rendering with the core
! 166: X11 protocol. This allows clients using this library to render to X
! 167: servers that don't have support for the RENDER extension.
! 168:
! 169: o There has been a significant reworking of the XKB support to allow
! 170: multi-layout configurations. Multi-layout configurations provide a
! 171: flexible way of supporting multiple language layouts and switching
! 172: between them.
1.1 veego 173:
1.1.1.6 ! tron 174: 2.6 OS Support Updates
1.1 veego 175:
1.1.1.6 ! tron 176: o Updates for Darwin/Mac OS X, including:
1.1 veego 177:
1.1.1.6 ! tron 178: o Indirect GLX acceleration added.
1.1 veego 179:
1.1.1.6 ! tron 180: o Smaller memory footprint and faster 2-D drawing in rootless mode.
1.1 veego 181:
1.1.1.6 ! tron 182: o Full screen mode now uses shadowfb for much faster 2-D drawing.
1.1 veego 183:
1.1.1.6 ! tron 184: o Native fonts can be used on MacOS X.
1.1 veego 185:
1.1.1.6 ! tron 186: o Various Cygwin support updates, including an experimental rootless X
! 187: server for Cygwin/XFree86.
1.1 veego 188:
1.1.1.6 ! tron 189: o AMD x86-64 support (primarily for Linux so far) has been added.
1.1 veego 190:
1.1.1.6 ! tron 191: o Support added for OpenBSD/sparc64.
1.1 veego 192:
1.1.1.6 ! tron 193: o Major OS/2 support updates.
1.1 veego 194:
1.1.1.6 ! tron 195: o Major SCO OpenServer updates.
1.1 veego 196:
1.1.1.6 ! tron 197: o Multi-head support has been added for 460GX-based Itanium systems, and
! 198: for ZX1-based Itanium2 systems.
1.1 veego 199:
1.1.1.6 ! tron 200: o Experimental support for SunOS/Solaris on UltraSPARC systems.
1.1 veego 201:
1.1.1.5 tron 202: A more complete list of changes can be found in the CHANGELOG that is part of
203: the XFree86 source tree. It can also be viewed online at our CVSweb server
204: <URL:http://cvsweb.xfree86.org/cvsweb/xc/pro-
205: grams/Xserver/hw/xfree86/CHANGELOG?rev=HEAD>.
1.1 veego 206:
1.1.1.5 tron 207: 3. Drivers
1.1 veego 208:
1.1.1.5 tron 209: 3.1 Video Drivers
1.1 veego 210:
1.1.1.6 ! tron 211: XFree86 4.3.0 includes the following video drivers:
1.1 veego 212:
1.1.1.6 ! tron 213: +--------------+--------------------------+---------------------------------------------+
! 214: |Driver Name | Description | Further Information |
! 215: +--------------+--------------------------+---------------------------------------------+
! 216: |apm | Alliance Pro Motion | README.apm |
! 217: |ark | Ark Logic | |
! 218: |ati | ATI | README.ati, README.r128, r128(4), radeon(4) |
! 219: |chips | Chips & Technologies | README.chips, chips(4) |
! 220: |cirrus | Cirrus Logic | |
! 221: |cyrix (*) | Cyrix MediaGX | README.cyrix |
! 222: |fbdev | Linux framebuffer device | fbdev(4) |
! 223: |glide | Glide2x (3Dfx) | glide(4) |
! 224: |glint | 3Dlabs, TI | glint(4) |
! 225: |i128 | Number Nine | README.I128, i128(4) |
! 226: |i740 | Intel i740 | README.i740 |
! 227: |i810 | Intel i8xx | README.i810, i810(4) |
! 228: |imstt | Integrated Micro Solns | |
! 229: |mga | Matrox | mga(4) |
! 230: |neomagic | NeoMagic | neomagic(4) |
! 231: |newport (-) | SGI Newport | README.newport, newport(4) |
! 232: |nsc | National Semiconductor | nsc(4) |
! 233: |nv | NVIDIA | nv(4) |
! 234: |rendition | Rendition | README.rendition, rendition(4) |
! 235: |s3 | S3 (not ViRGE or Savage) | |
! 236: |s3virge | S3 ViRGE | README.s3virge, s3virge(4) |
! 237: |savage | S3 Savage | savage(4) |
! 238: |siliconmotion | Silicon Motion | siliconmotion(4) |
! 239: |sis | SiS | README.SiS, sis(4) |
! 240: |sunbw2 (+) | Sun bw2 | |
! 241: |suncg14 (+) | Sun cg14 | |
! 242: |suncg3 (+) | Sun cg3 | |
! 243: |suncg6 (+) | Sun GX and Turbo GX | |
! 244: |sunffb (+) | Sun Creator/3D, Elite 3D | |
! 245: |sunleo (+) | Sun Leo (ZX) | |
! 246: |suntcx (+) | Sun TCX | |
! 247: |tdfx | 3Dfx | tdfx(4) |
! 248: |tga | DEC TGA | README.DECtga |
! 249: |trident | Trident | trident(4) |
! 250: |tseng | Tseng Labs | |
! 251: |vesa | VESA | vesa(4) |
! 252: |vga | Generic VGA | vga(4) |
! 253: |vmware | VMWare guest OS | vmware(4) |
! 254: +--------------+--------------------------+---------------------------------------------+
1.1 veego 255:
256: Drivers marked with (*) are present in a preliminary form in this release,
257: but are not complete and/or stable yet.
258:
259: Drivers marked with (+) are for Linux/Sparc only.
260:
261: Drivers marked with (-) are for Linux/mips only.
262:
263: Darwin/Mac OS X uses IOKit drivers and does not use the module loader drivers
264: listed above. Further information can be found in README.Darwin.
265:
1.1.1.6 ! tron 266: XFree86 4.3.0 includes the following input drivers:
1.1 veego 267:
1.1.1.5 tron 268: 3.2 Input Drivers
1.1 veego 269:
1.1.1.6 ! tron 270: +------------+----------------------------------+---------------------+
! 271: |Driver Name | Description | Further Information |
! 272: +------------+----------------------------------+---------------------+
! 273: |calcomp | Calcomp | |
! 274: |citron | Citron | citron(4) |
! 275: |digitaledge | DigitalEdge | |
! 276: |dmc | DMC | dmc(4) |
! 277: |dynapro | Dynapro | |
! 278: |elographics | EloGraphics | |
! 279: |elographics | EloGraphics | |
! 280: |fpit | Fujitsu Stylistic Tablet PCs | fpit(4) |
! 281: |hyperpen | HyperPen | |
! 282: |js_x | JamStudio pentablet | js_x(4) |
! 283: |kbd | generic keyboards (alternate) | kbd(4) |
! 284: |keyboard | generic keyboards | keyboard(4) |
! 285: |microtouch | MicroTouch | |
! 286: |mouse | most mouse devices | mouse(4) |
! 287: |mutouch | MicroTouch | |
! 288: |palmax | Palmax PD1000/PD1100 | palmax(4) |
! 289: |penmount | PenMount | |
! 290: |spaceorb | SpaceOrb | |
! 291: |summa | SummaGraphics | |
! 292: |tek4957 | Tektronix 4957 tablet | tek4957(4) |
! 293: |ur98(*) | Union Reality UR-F98 headtracker | ur98(4) |
! 294: |void | dummy device | void(4) |
! 295: |wacom | Wacom tablets | wacom(4) |
! 296: +------------+----------------------------------+---------------------+
! 297:
! 298: Drivers marked with (*) are available for Linux only.
1.1 veego 299:
1.1.1.5 tron 300: 4. Overview of XFree86 4.x.
1.1 veego 301:
302: Unlike XFree86 3.3.x where there are multiple X server binaries, each of
1.1.1.6 ! tron 303: which drive different hardware, XFree86 4.3.0 has a single X server binary
1.1 veego 304: called XFree86. This binary can either have one or more video drivers linked
305: in statically, or, more usually, dynamically load the video drivers and other
306: modules that are needed.
307:
1.1.1.6 ! tron 308: XFree86 4.3.0 has X server support for most UNIX(R) and UNIX-like operating
1.1 veego 309: systems on Intel/x86 platforms, plus support for Linux on Alpha, PowerPC,
310: IA-64, Sparc, and Mips platforms, and for Darwin on PowerPC. Work on support
311: for additional architectures and operating systems is in progress, and is
312: planned for future releases.
313:
1.1.1.5 tron 314: 4.1 Loader and Modules
1.1 veego 315:
316: The XFree86 X server has a built-in run-time loader, donated by Metro Link
317: <URL:http://www.metrolink.com>. This loader can load normal object files and
318: libraries in most of the commonly used formats. Since the loader doesn't
319: rely on an operating system's native dynamic loader support, it works on
320: platforms that don't provide this feature, and makes it possible for the mod-
321: ules to be operating system independent (although not, of course, independent
322: of CPU architecture). This means that a module compiled on Linux/x86 can be
323: loaded by an X server running on Solaris/x86, or FreeBSD, or even OS/2.
324:
325: One of the main benefits of this loader is that when modules are updated,
326: they do not need to be recompiled for every different operating system. In
327: the future we plan to take advantage of this to provide more frequent driver
328: module updates in between major releases.
329:
1.1.1.6 ! tron 330: The loader in version 4.3.0 has support for Intel (x86), Alpha and PowerPC
1.1 veego 331: platforms. It also has preliminary support for Sparc platforms.
332:
333: The X server makes use of modules for video drivers, X server extensions,
334: font rasterisers, input device drivers, framebuffer layers (like mfb, cfb,
335: etc), and internal components used by some drivers (like XAA),
336:
337: The module interfaces (API and ABI) used in this release is still subject to
338: change without notice. While we will attempt to provide backward compatibil-
339: ity for the module interfaces as of the 4.0 release (meaning that 4.0 modules
340: will work with future core X server binaries), we cannot guarantee this.
341:
342: Note about module security
343:
344: The XFree86 X server runs with root privileges, i.e. the X server
345: loadable modules also run with these privileges. For this reason
346: we recommend that all users be careful to only use loadable modules
347: from reliable sources, otherwise the introduction of viruses and
348: contaminated code can occur and wreak havoc on your system. We
349: hope to have a mechanism for signing/verifying the modules that we
350: provide available in a future release.
351:
1.1.1.5 tron 352: 4.2 Configuration File
1.1 veego 353:
354: The X server configuration file format has been extended to handle some of
355: the new functionality. The xf86config utility can be used to generate a
356: basic config file, that may require some manual editing. The X server also
357: has preliminary support for generating a basic config file. This is done by
358: running (as root) "XFree86 -configure". Alternatively, the sample config
359: file XF86Config.eg that is installed in /usr/X11R6/lib/X11 may be used as a
1.1.1.5 tron 360: starting point. The xf86cfg utility can also be used to create a new config-
361: uration file or to edit an existing one. The XF86Setup utility is currently
362: not usable, but work is continuing in this area.
1.1 veego 363:
1.1.1.5 tron 364: The main changes are covered here, but please refer to the XF86Config(5) man-
365: ual page for more comprehensive information:
1.1 veego 366:
367: o The Module section is used to load server extension modules and font
368: modules, but not XInput drivers. The .so suffix should no longer be
369: specified with module names. Options may be supplied for modules by
370: loading the module via a SubSection instead of the usual Load keyword.
371: The bitmap module is the only font module that is loaded by default. No
372: server extensions are loaded by default, but some are built-in to the
373: server. It is strongly recommended that the extension module containing
374: a range of small miscellaneous extensions (extmod) be loaded because
375: some commonly used things won't work correctly without it. The follow-
376: ing example shows how to load all the server extensions plus the Type1
377: and TrueType fonts support, and a commented example that shows how to
378: pass options to an extension (this one is for loading the misc exten-
379: sions (extmod) with the XFree86-VidModeExtension disabled):
380:
381: Section "Module"
382:
383: Load "dbe"
384: Load "record"
385: Load "glx"
386: Load "extmod"
387:
388: Load "type1"
389: Load "freetype"
390:
391: # SubSection "extmod"
392: # Option "Omit XFree86-VidModeExtension"
393: # EndSubSection
394:
395: EndSection
396:
397: o Option flags have been extended and are now used more widely in the con-
398: fig file. Options flags come in two main types. The first type is
399: exactly like the old form:
400:
401: Option "name"
402:
403: where the option just has a name specified. The name is case insensi-
404: tive, and white space and underscore characters are ignored. The second
405: type consists of a name and a value:
406:
407: Option "name" "value"
408:
409: The value is passed transparently as a string to the code that uses the
410: option. Common value formats are integer, boolean, real, string and
411: frequency. The following boolean option values are recognised as mean-
412: ing TRUE: "true", "yes", "on", "1", and no value. The values recognised
413: as FALSE are "false", "no", "off", "0". In addition to this, "no" may
414: be prepended to the name of a boolean option to indicate that it is
415: false. Frequency options can have the strings Hz, kHz, or MHz appended
416: to the numerical value specified.
417:
418: Note: the value must always be enclosed in double quotes ("), even when
419: it is numerical.
420:
421: o The ServerFlags section now accepts its parameters as Options instead of
422: as special keywords. The older keyword format is still recognised for
423: compatibility purposes, but is deprecated and support for it will likely
424: be dropped in a future release. The DPMS and screen save timeout values
425: are now specified in the ServerFlags section rather than elsewhere
426: (because they are global parameters, not screen-specific). This example
427: shows the defaults for these:
428:
429: Option "blank time" "10"
430: Option "standby time" "20"
431: Option "suspend time" "30"
432: Option "off time" "40"
433:
1.1.1.5 tron 434: The new option AllowDeactivateGrabs allows deactivating any active grab
435: with the key sequence Ctrl+Alt+Keypad-Divide and the new option Allow-
1.1.1.6 ! tron 436: ClosedownGrabs allows closing the connection to the grabbing client with
1.1.1.5 tron 437: the key sequence Ctrl+Alt+Keypad-Multiply. Note that these options are
438: off by default as they allow users to remove the grab used by screen
439: saver/locker programs.
440:
1.1 veego 441: o The Keyboard, Pointer and XInput sections have been replaced by a more
442: general InputDevice section. The old Keyboard and Pointer sections are
443: still recognised for compatibility purposes, but they are discommended
444: and support for them may be dropped in future releases. The old XInput
445: sections are no longer recognised. The keywords from the old sections
446: are expressed as Options in the InputDevice sections. The following
447: example shows typical InputDevice sections for the core mouse and key-
448: board.
449:
450: Section "InputDevice"
451: Identifier "Keyboard 1"
452: Driver "keyboard"
453: Option "AutoRepeat" "500 5"
454: Option "XkbModel" "pc104"
455: Option "XkbLayout" "us"
456: EndSection
457:
458: Section "InputDevice"
459: Identifier "Mouse 1"
460: Driver "mouse"
461: Option "Protocol" "PS/2"
462: Option "Device" "/dev/mouse"
463: Option "SampleRate" "80"
464: EndSection
465:
466: o The Monitor section is mostly unchanged. The main difference is that a
467: set of VESA modes is defined internally in the server, and so for most
468: monitors, it isn't necessary to specify any modes explicitly in the Mon-
469: itor section. There is also a new Modes section that can be used to
470: define a set of modes separately from the Monitor section, and the Moni-
471: tor section may "include" them with the "UseModes" keyword. The Monitor
472: section may also include Options. Options that are monitor-specific,
473: like the "DPMS" and "Sync on Green" options are best specified in the
474: Monitor sections.
475:
476: o The Device sections are mostly unchanged. The main difference is the
477: new (and mandatory) Driver keyword that specifies which video driver
478: should be loaded to drive the video card. Another difference is the
479: BusID keyword that is used to specify which of possibly multiple video
480: cards the Device section is for. The following is an example for a
481: Matrox card:
482:
483: Section "Device"
484: Identifier "MGA 1"
485: Driver "mga"
486: BusID "PCI:1:0:0"
487: EndSection
488:
489: o The Screen sections are mostly unchanged. The old Driver keyword is no
490: longer used, and a mandatory Identifier keyword has been added. The
491: DefaultColorDepth keyword has been renamed to DefaultDepth.
492:
493: o A new section called ServerLayout has been added to allow the layout of
494: the screens and the selection of input devices to be specified. The
495: ServerLayout sections may also include options that are normally found
496: in the ServerFlags section. Multiple ServerLayout sections may be pre-
497: sent, and selected from the command line. The following example shows a
498: ServerLayout section for a dual-headed configuration with two Matrox
499: cards, and two mice:
500:
501: Section "ServerLayout"
502: Identifier "Layout 1"
503: Screen "MGA 1"
504: Screen "MGA 2" RightOf "MGA 1"
505: InputDevice "Keyboard 1" "CoreKeyboard"
506: InputDevice "Mouse 1" "CorePointer"
507: InputDevice "Mouse 2" "SendCoreEvents"
508: Option "BlankTime" "5"
509: EndSection
510:
1.1.1.6 ! tron 511: See the XF86Config(5) man page for a more detailed explanation of the
! 512: format of the new ServerLayout section.
1.1 veego 513:
514: The config file search patch has been extended, with the directories /etc/X11
515: and /usr/X11R6/etc/X11 being added. The full search path details are docu-
516: mented in the XF86Config manual page.
517:
1.1.1.5 tron 518: 4.3 Command Line Options
1.1 veego 519:
520: The following new X server command line options have been added:
521:
522: -depth n
523:
524: This specifies the colour depth that the server is run-
525: ning at. The default is 8 for most drivers. Most
526: drivers support the values 8, 15, 16 and 24. Some
527: drivers also support the values 1 and 4. Some drivers
528: may also support other depths. Note that the depth is
529: different from the ``bpp'' that was specified with previ-
530: ous versions. The depth is the number of bits in each
531: pixel that are significant in determining the pixel's
532: value. The bpp is the total size occupied by each pixel,
533: including bits that are not used. The old -bpp option is
534: no longer recognised because it isn't a good way of spec-
535: ifying the server behaviour.
536:
537: -fbbpp n
538:
539: This specifies the bpp format to use for the framebuffer.
540: This may be used in 24-bit mode to force a framebuffer
541: format that is different from what the driver chooses by
542: default. In most cases there should be no need to use
543: this option.
544:
545: -pixmap24
546:
547: This specifies that the client-side pixmap format should
548: be the packed 24-bit format that was often used by the
549: 3.3.x servers. The default is the more common 32-bit
550: format. There should normally be no need to use this
551: option.
552:
553: -pixmap32
554:
555: This specifies that the client-side pixmap format should
556: be the sparse 32-bit format. This is the default, so
557: there should normally be no need to use this option.
558:
559: -layout name
560:
561: This specifies which ServerLayout section in the config
562: file to use. When this option is not specified, the
563: first ServerLayout section is used. When there is no
564: ServerLayout section, the first Screen section is used.
565:
566: -screen name
567:
568: This specifies which Screen section in the config file to
569: use. When this option is not specified, the first
570: ServerLayout section is used. When there is no Server-
571: Layout section, the first Screen section is used.
572:
573: -keyboard name
574:
575: This specifies which InputDevice section in the config
576: file to use for the core keyboard. This option may be
577: used in conjunction with the -screen option.
578:
579: -pointer name
580:
581: This specifies which InputDevice section in the config
582: file to use for the core pointer. This option may be
583: used in conjunction with the -screen option.
584:
585: -modulepath path
586:
587: This specifies the module search path. The path should
588: be a comma-separated list of absolute directory paths to
589: search for server modules. When specified here, it over-
590: rides the value specified in the config file. This
591: option is only available when the server is started by
592: the root user.
593:
594: -logfile file
595:
596: This specifies the log file name. When specified here,
597: it overrides the default value. This option is only
598: available when the server is started by the root user.
599:
600: -scanpci
601:
602: This specifies that the scanpci module should be loaded
603: and executed. This does a scan of the PCI bus.
604:
605: -logverbose [n]
606:
607: This options specifies the verbosity level to use for the
608: log file. The default is 3.
609:
610: The following X server command line options have been changed since 3.3.x:
611:
612: -verbose [n]
613:
614: This option specifies the verbosity level to use for the
615: server messages that get written to stderr. It may be
616: specified multiple times to increase the verbosity level
617: (as with 3.3.x), or the verbosity level may be specified
618: explicitly as a number. The default verbosity level is
1.1.1.5 tron 619: 0.
1.1 veego 620:
621: -xf86config filename
622:
623: This option has been extended to allow non-root users to
624: specify a relative config file name. The config file
625: search path will be used to locate the file in this case.
626: This makes it possible for users to choose from multiple
627: config files that the the sysadmin has provided.
628:
1.1.1.5 tron 629: A more complete list of XFree86 X server command line options can be found in
630: the XFree86(1) manual page.
631:
632: 4.4 XAA
1.1 veego 633:
634: The XFree86 Acceleration Architecture (XAA) has been completely rewritten
635: from scratch for XFree86 4.x. Most drivers implement acceleration by making
636: use of the XAA module.
637:
1.1.1.5 tron 638: 4.5 Multi-head
1.1 veego 639:
640: Some multi-head configurations are supported in XFree86 4.x, primarily with
641: multiple PCI/AGP cards. However, this is an area that is still being worked
642: on, and we expect that the range of configurations for which it works well
643: will increase in future releases. A configuration that is known to work well
644: in most cases is multiple (supported) Matrox cards.
645:
646: One of the main problems is with drivers not sufficiently initialising cards
647: that were not initialised at boot time. This has been improved somewhat with
648: the INT10 support that is used by most drivers (which allows secondary card
649: to be "soft-booted", but in some cases there are other issues that still need
650: to be resolved. Some combinations can be made to work better by changing
651: which card is the primary card (either by using a different PCI slot, or by
652: changing the system BIOS's preference for the primary card).
653:
1.1.1.5 tron 654: 4.6 Xinerama
1.1 veego 655:
656: Xinerama is an X server extension that allows multiple physical screens to
657: behave as a single screen. With traditional multi-head in X11, windows can-
658: not span or cross physical screens. Xinerama removes this limitation. Xin-
659: erama does, however, require that the physical screens all have the same root
660: depth, so it isn't possible, for example, to use an 8-bit screen together
661: with a 16-bit screen in Xinerama mode.
662:
663: Xinerama is not enabled by default, and can be enabled with the +xinerama
664: command line option for the X server.
665:
666: Xinerama was included with X11R6.4. The version included in XFree86 4.x was
667: completely rewritten for improved performance and correctness.
668:
669: Known problems:
670:
671: o Most window managers are not Xinerama-aware, and so some operations like
672: window placement and resizing might not behave in an ideal way. This is
673: an issue that needs to be dealt with in the individual window managers,
674: and isn't specifically an XFree86 problem.
675:
1.1.1.5 tron 676: 4.7 DGA version 2
1.1 veego 677:
1.1.1.6 ! tron 678: DGA 2.0 is included in 4.3.0, but is not implemented by all drivers. Prelim-
1.1 veego 679: inary documentation for the client libraries can be found in the README.DGA
680: document. A good degree of backwards compatibility with version 1.0 is pro-
681: vided.
682:
1.1.1.5 tron 683: 4.8 DDC
1.1 veego 684:
685: The VESA(R) Display Data Channel (DDC[tm]) standard allows the monitor to
686: tell the video card (or on some cases the computer directly) about itself;
687: particularly the supported screen resolutions and refresh rates.
688:
689: Partial or complete DDC support is available in most of the video drivers.
690: DDC is enabled by default, but can be disabled with a "Device" section entry:
691: Option "NoDDC". We have support for DDC versions 1 and 2; these can be dis-
692: abled independently with Option "NoDDC1" and Option "NoDDC2".
693:
1.1.1.5 tron 694: At startup the server prints out DDC information from the display, and can
695: use this information to set or warn about monitor sync limits (but not mode-
696: lines yet). For some drivers, the X server's new -configure option uses the
697: DDC information when generating the config file.
698:
699: 4.8.1 Changed behavior caused by DDC.
700:
701: Several drivers uses DDC information to set the screen size and pitch. This
702: can be overridden by explicitly resetting it to the and non-DDC default value
703: 75 with the -dpi 75 command line option for the X server, or by specifying
704: appropriate screen dimensions with the "DisplaySize" keyword in the "Monitor"
705: section of the config file.
706:
707: 4.9 GLX and the Direct Rendering Infrastructure (DRI)
708:
709: Precision Insight <URL:http://www.precisioninsight.com> was provided with
710: funding and support from Red Hat <URL:http://www.redhat.com>, SGI
711: <URL:http://www.sgi.com>, 3Dfx <URL:http://www.3dfx.com>, Intel
1.1 veego 712: <URL:http://www.intel.com>, ATI <URL:http://www.ati.com>, and Matrox
713: <URL:http://www.matrox.com> to integrate the GLX extension for 3D rendering
714: in an X11 window. The 3D core rendering component is the Mesa
715: <URL:http://www.mesa3d.org> library. SGI has released the sources to the GLX
716: extension framework under an open license, which essentially provides the
717: glue between the 3D library and this windowing system. Precision Insight has
718: integrated these components into the XFree86 X Server and added a Direct Ren-
719: dering Infrastructure (DRI). Direct Rendering provides a highly optimized
720: path for sending 3D data directly to the graphics hardware. This release
721: provides a complete implementation of direct rendering support for the 3Dfx
722: Banshee, Voodoo3 and Voodoo5 graphics cards, as well as the Intel i810/i815
723: cards, ATI Rage 128, and Matrox G400. Updated information on DRI compatible
724: drivers can be found at the DRI Project <URL:http://dri.sourceforge.net> on
725: SourceForge <URL:http://www.sourceforge.net>.
726:
1.1.1.5 tron 727: 4.10 XVideo Extension (Xv)
1.1 veego 728:
729: The XVideo extension is supported in XFree86 4.x. An XvQueryPortAttributes
730: function has been added as well as support for XvImages. XvImages are XIm-
731: ages in alternate color spaces such as YUV and can be passed to the server
732: through shared memory segments. This allows clients to display YUV data with
733: high quality hardware scaling and filtering.
734:
1.1.1.5 tron 735: 4.11 X Rendering Extension (Render)
1.1 veego 736:
737: The X Rendering extension provides a 2D rendering model that more closely
738: matches application demands and hardware capabilities. It provides a render-
739: ing model derived from Plan 9 based on Porter/Duff image composition rather
740: than binary raster operations.
741:
742: Using simple compositing operators provided by most hardware, Render can draw
743: anti-aliased text and geometric objects as well as perform translucent image
744: overlays and other image operations not possible with the core X rendering
745: system.
746:
1.1.1.6 ! tron 747: XFree86 4.3.0 provides a partial implementation of Render sufficient for
1.1 veego 748: drawing anti-aliased text and image composition. Still to be implemented are
749: geometric primitives and affine transformation of images.
750:
751: Unlike the core protocol, Render provides no font support for applications,
752: rather it allows applications to upload glyphs for display on the screen.
753: This allows the client greater control over text rendering and complete
754: access to the available font information while still providing hardware
755: acceleration. The Xft library provides font access for Render applications.
756:
1.1.1.5 tron 757: 4.11.1 The Xft Library
1.1 veego 758:
759: On the client side, the Xft library provides access to fonts for applications
760: using the FreeType library, version 2. FreeType currently supports Type1 and
761: TrueType font files, a future release is expected to support BDF and PCF
762: files as well, so Render applications will have access to the complete range
763: of fonts available to core applications. One important thing to note is that
764: Xft uses the vertical size of the monitor to compute accurate pixel sizes for
765: provided point sizes; if your monitor doesn't provide accurate information
766: via DDC, you may want to add that information to XF86Config.
767:
768: To allow a graceful transition for applications moving from core text render-
769: ing to the Render extension, Xft can use either core fonts or FreeType and
1.1.1.3 tron 770: the Render extension for text. By default, Xft is configured to support both
771: core fonts and FreeType fonts using the supplied version of FreeType 2. See
772: the section on FreeType support in Xft for instructions on configuring
773: XFree86 to use an existing FreeType installation.
1.1 veego 774:
775: The Xft library uses a configuration file, XftConfig, which contains informa-
776: tion about which directories contain font files and also provides a sophisti-
777: cated font aliasing mechanism. Documentation for that file is included in
1.1.1.6 ! tron 778: the Xft(3) man page.
1.1 veego 779:
1.1.1.5 tron 780: 4.11.2 FreeType support in Xft
1.1 veego 781:
1.1.1.6 ! tron 782: XFree86 4.3.0 includes sources for FreeType version 2.1.1, and, by default,
1.1.1.3 tron 783: they are built and installed automatically.
1.1 veego 784:
1.1.1.5 tron 785: 4.11.3 Application Support For Anti-Aliased Text
1.1 veego 786:
1.1.1.6 ! tron 787: Only three applications have been modified in XFree86 4.3.0 to work with the
1.1 veego 788: Render extension and the Xft and FreeType libraries to provide anti-aliased
789: text. Xterm, xditview and x11perf. Migration of other applications may
790: occur in future releases.
791:
1.1.1.6 ! tron 792: By default, xterm uses core fonts through the standard core API. It has a
! 793: command line option and associated resource to direct it to use Xft instead:
1.1 veego 794:
795: o -fa family / .VT100.faceName: family. Selects the font family to use.
796:
797: Xditview will use Xft instead of the core API by default. X11perf includes
798: tests to measure the performance of text rendered in three ways, anti-
799: aliased, anti-aliased with sub-pixel sampling and regular chunky text, but
1.1.1.3 tron 800: through the Render extension, a path which is currently somewhat slower than
801: core text.
1.1 veego 802:
1.1.1.5 tron 803: 4.12 Other extensions
1.1 veego 804:
805: The XFree86-Misc extension has not been fully ported to the new server archi-
806: tecture yet. This should be completed in a future release.
807:
808: The XFree86-VidModeExtension extension has been updated, and mostly ported to
809: the new server architecture. The area of mode validation needs further work,
810: and the extension should be used with care. This extension has support for
811: changing the gamma setting at run-time, for modes where this is possible.
1.1.1.5 tron 812: The xgamma utility makes use of this feature. Compatibility with the 3.3.x
813: version of the extension is provided. The missing parts of this extension
814: and some new features should be completed in a future release.
1.1 veego 815:
1.1.1.6 ! tron 816: 4.13 xedit
1.1 veego 817:
1.1.1.6 ! tron 818: Xedit has several new features, including:
1.1 veego 819:
1.1.1.6 ! tron 820: o An embedded lisp interpreter that allows easier extension of the editor.
1.1 veego 821:
1.1.1.6 ! tron 822: o Several new syntax highlight modes, and indentation rules for C and
! 823: Lisp.
1.1 veego 824:
1.1.1.6 ! tron 825: o Flexible search/replace interface that allows regex matches.
1.1 veego 826:
1.1.1.6 ! tron 827: o Please refer to xedit(1) for more details.
1.1 veego 828:
1.1.1.6 ! tron 829: 4.14 Font support
1.1 veego 830:
831: Details about the font support in XFree86 4.x can be found in the
832: README.fonts document.
833:
1.1.1.6 ! tron 834: 4.15 TrueType support
1.1 veego 835:
836: XFree86 4.x comes with two TrueType backends, known as `xfsft' (the
837: "freetype" module) and `X-TrueType' (the "xtt" module). Both of these back-
838: ends are based on the FreeType library.
839:
1.1.1.6 ! tron 840: 4.16 CID font support
1.1 veego 841:
842: Support for CID-keyed fonts is included in XFree86 4.x. The CID-keyed font
843: format was designed by Adobe Systems <URL:http://www.adobe.com> for fonts
844: with large character sets. The CID-keyed font support in XFree86 was donated
845: by SGI <URL:http://www.sgi.com>. See the LICENSE document for a copy of the
846: CID Font Code Public License.
847:
1.1.1.6 ! tron 848: 4.17 Internationalisation of the scalable font backends
1.1 veego 849:
850: XFree86 4.x has a ``fontenc'' layer to allow the scalable font backends to
851: use a common method of font re-encoding. This re-encoding makes it possible
852: to uses fonts in encodings other than their their native encoding. This
853: layer is used by the Type1 and Speedo backends and the `xfsft' version of the
854: TrueType backend. The `X-TrueType' version of the TrueType backend uses a
855: different re-encoding method based on loadable encoding modules.
856:
1.1.1.6 ! tron 857: 4.18 Large font optimisation
1.1 veego 858:
859: The glyph metrics array, which all the X clients using a particular font have
1.1.1.5 tron 860: access to, is placed in shared memory, so as to reduce redundant memory con-
861: sumption. For non-local clients, the glyph metrics array is transmitted in a
862: compressed format.
1.1 veego 863:
1.1.1.6 ! tron 864: 4.19 Unicode/ISO 10646 support
1.1 veego 865:
866: What is included in 4.x:
867:
868: o All ``-misc-fixed-*'' BDF fonts are now available in the ISO10646-1
869: encoding and cover at least the 614 characters found in ISO
870: 8859-{1-5,7-10,14,15}, CP1252, and MES-1. The non-bold fonts also cover
871: all Windows Glyph List 4 (WGL4) characters, including those found in all
872: 8-bit MS-DOS/Windows code pages. The 8-bit variants of the ``-misc-
873: fixed-*'' BDF fonts (ISO8859-1, ISO8859-2, KOI8-R, etc.) have all been
874: automatically generated from the new ISO10646-1 master fonts.
875:
876: o Some ``-misc-fixed-*'' BDF ISO10646-1 fonts now cover a comprehensive
877: Unicode repertoire of over 3000 characters including all Latin, Greek,
878: Cyrillic, Armenian, Gregorian, Hebrew, IPA, and APL characters, plus
879: numerous scientific, typographic, technical, and backwards-compatibility
880: symbols. Some of these fonts also cover Arabic, Ethiopian, Thai,
881: Han/Kanji, Hangul, full ISO 8859, and more. For the 6x13 font there is
882: now a 12x13ja Kanji extension and for the 9x18 font there is a 18x18ja
883: Kanji/Han/Hangul extension, which covers all ISO-2022-JP-2 (RFC 1554)
884: characters. The 9x18 font can also be used to implement simple combining
885: characters by accent overstriking. For more information, read Markus
886: Kuhn's UTF-8 and Unicode FAQ <URL:http://www.cl.cam.ac.uk/~mgk25/uni-
887: code.html>.
888:
889: o Mark Leisher's ClearlyU proportional font (similar to Computer Modern).
890:
891: o ISO 10646/Unicode UTF-8 Level 1 support added to xterm (enabled with the
892: -u8 option).
893:
894: o Both the xfsft (the "freetype" module) and the X-TrueType (the "xtt"
895: module) TrueType font backends support Unicode-encoded fonts.
896:
1.1.1.6 ! tron 897: 4.20 Luxi fonts from Bigelow and Holmes
1.1 veego 898:
1.1.1.5 tron 899: XFree86 now includes the ``Luxi'' family of Type 1 fonts and TrueType fonts.
900: This family consists of the fonts ``Luxi Serif'', ``Luxi Sans'' and
901: ``Luxi Mono'' in Roman, oblique, bold and bold oblique variants. The True-
902: Type version have glyphs covering the basic ASCII Unicode range, the Latin 1
903: range, as well as the Extended Latin range and some additional punctuation
904: characters. In particular, these fonts include all the glyphs needed for
905: ISO 8859 parts 1, 2, 3, 4, 9, 13 and 15, as well as all the glyphs in the
906: Adobe Standard encoding and the Windows 3.1 character set.
907:
908: The glyph coverage of the Type 1 versions is somewhat reduced, and only cov-
909: ers ISO 8859 parts 1, 2 and 15 as well as the Adobe Standard encoding.
910:
911: The Luxi fonts are original designs by Kris Holmes and Charles Bigelow from
912: Bigelow and Holmes Inc., who developed the Luxi typeface designs in Ikarus
913: digital format. URW++ Design and Development GmbH converted the Ikarus for-
914: mat fonts to TrueType and Type 1 font programs and implemented the grid-fit-
915: ting "hints" and kerning tables in the Luxi fonts.
916:
917: The license terms for the Luxi fonts are included in the file `COPYRIGHT.BH',
918: as well as in the License document. For further information, please contact
919: <design@bigelowandholmes.com> or <info@urwpp.de>, or consult the URW++ web
920: site <URL:http://www.urwpp.de>.
1.1 veego 921:
1.1.1.6 ! tron 922: 4.21 Directory rearrangements
1.1 veego 923:
924: Some changes to the installed XFree86 directory structure have been imple-
925: mented for 4.x. One important change is a modified search path for the X
926: server's XF86Config file. The details of this can be found in the XF86Config
927: manual page. The other main change is moving most of the run-time configura-
928: tion files to /etc/X11, with symbolic links in the old /usr/X11R6/lib/X11
929: location pointing to the new location. Some run-time generated files are now
930: located under the appropriate subdirectories of /var, again with the relevant
931: symbolic links in the old location.
932:
1.1.1.6 ! tron 933: Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/RELNOTES.sgml,v 1.81 2003/02/27 00:45:05 dawes Exp $
1.1 veego 934:
935:
1.1.1.6 ! tron 936: $XFree86: xc/RELNOTES,v 1.17 2003/02/27 01:44:02 dawes Exp $
CVSweb <webmaster@jp.NetBSD.org>