X Window System, Version 11, Release 6.1

X11R6.1 was an update to the sixth release of the X Window System, Version 11. It was released in , with the following changes excerpted from the release notes. The sources are available for download for historical reference from http://www.x.org/releases/X11R6.1/.

What Is Release 6.1

This is the X Consortium implementation of the X Window System. X is a vendor-neutral, system-architecture neutral network-transparent window system and user interface standard. X runs on a wide range of computing and graphics machines. For an overview of X, see the X manual page.

R6.1 is an update to R6. It is compatible with R6 at the source and protocol levels in all respects, and binaries are upward-compatible.

Extensions supported

The core distribution includes the following extensions: BIG-REQUESTS, DOUBLE-BUFFER, MIT-SHM, MIT-SUNDRY-NONSTANDARD, Multi-Buffering, RECORD, SHAPE, SYNC, X3D-PEX, XC-MISC, XFree86-VidModeExtension, XIE, XInputExtension, XKEYBOARD, XTEST, and XTestExtension1.

Not all of these extensions are standards; see the XStandards manual page.

What is Unchanged in Release 6.1

As this is an update release, there is a great deal of stability in the standards, libraries, and clients. No existing standards have changed in a material way, though several documents have been updated with editorial improvements. Most of the libraries have no new interfaces.

What Is New in Release 6.1

This section describes changes in the X Consortium distribution since Release 6.

All libraries, protocols, and servers are compatible with Release 6. That is, R6 clients and applications will work with R6.1 libraries and servers and vice versa.

The major new functionality in R6.1 is the X Keyboard extension, double buffering for smooth animation, and protocol recording.

New Standards

The following are new X Consortium standards in Release 6.1. Each is described in its own section below.

  • XKEYBOARD (XKB)
  • RECORD
  • DOUBLE-BUFFER (DBE)
  • ICE X Rendevous

DBE

The Double Buffer Extension (DBE) provides a standard way to utilize double-buffering, allowing flicker-free animation.

The older Multi-Buffering extension is not linked in to the X server by default. It will move to unsupported status at the next release.

XKB

An early version of the X Keyboard extension (XKB) was shipped as a work in progress in R6. In R6.1 it is now complete.

XKB provides detailed keyboard descriptions and enhanced keyboard functionality, including support for the ISO 9995 keyboard model.

With XKB are several new core clients, xkbcomp, xkbevd, xkbprint, each in their own directory under xc/programs, and xkbbell, xkbvleds, and xkbwatch, in xc/programs/xkbutils.

RECORD

An early version of the RECORD extension was shipped as a work in progress in R6. It is now complete.

RECORD is an X protocol extension that supports the recording of all core X protocol and arbitrary X extension protocol.

VidMode

This extension allows interactively adjusting graphics frame buffer parameters on PC-based (primarily Intel) hardware. It is not a Consortium standard.

ICE X Rendezvous

The Inter-Client Exchange protocol (ICE), which became a standard in X11R6, specifies a generic communication framework for data exchange between arbitrary clients. The ICE protocol itself does not specify the manner in which two clients interested in communicating via ICE are made aware of each other's existence.

The ICE X Rendezvous protocol is one standard protocol by which two clients who have connections to a common X server can rendezvous. This new protocol is included in the ICE Protocol Specification document.

Internationalization

Clarifications have been made to several sections of Chapter 13 of the Xlib specification. No changes to the Xlib standard are involved.

Header Files

xc/include/Xalloca.h is solely responsible for defining ALLOCATE_LOCAL and DEALLOCATE_LOCAL. You should be able to add or update a platform's support for alloca() by editing this one file instead of finding and changing the multiple definitions that existed previously.

xc/include/Xpoll.h allows more portable, consistent select() and poll() use in the clients, including getting the fd_set properly defined. (The servers still use select on all systems, even those that have poll.)

X Server

Device Support

The following ddxen have been removed: macII, omron, and svga.

The XFree86 ddx has been updated to 3.1.2C.

The IBM ddx has been updated to work on AIX 4 as well as AIX 3.2.

There is a new HP ddx with support for a new graphics card, the HCRX (HyperCRX, HPA4071A_Z), available in 8-bit or 24-bit deep options. The 24-bit version has a optional hardware accelerator, in which case it's known as an HCRX24Z. This ddx was distributed in R6 public patch 9.

The Xnest ddx now works on 64-bit machines.

The DEC ddx now works on an Alpha with a simple framebuffer (PMAG-B).

Internal Changes

To support DBE idioms, the new functions PeekNextRequest and SkipRequests add the ability to do request lookahead and skipping. See xc/programs/server/os/io.c, xc/programs/server/include/os.h, and xc/doc/specs/Xserver/ddx.tbl.ms.

The pixelization of zero-width lines is now tunable so that you can make the server match what your hardware does. See xc/programs/Xserver/mi/miline.h. As a result of this work, clipping and pixelization of zero-width lines are now consistent across cfb, mfb, and mi.

Several new callback lists were introduced to support the RECORD extension: DeviceEventCallback, ReplyCallback, SkippedRequestsCallback, and FlushCallback. The parameters of the ClientStateCallback changed: instead of passing a pointer to the client as the call_data, a pointer to a small structure containing a pointer to the client and pointers to the connection setup information is passed.

New Programs

There are new core programs xkbcomp, xkbevd, xkbprint, xkbbell, xkbvleds, and xkbwatch.

xmh

The xmh mail reader is now session aware. This enhancement was distributed in R6 public patch 8.

xsm

The xsm session manager has many enhancements. It has been moved out of xc/workInProgress into xc/programs. Most of the enhancements were distributed in R6 public patch 8. Advanced signal handling in xsm is appearing for the first time in R6.1.

xterm

The xterm terminal emulator has been minimally internationalized to use the Xlib built-in input method with 8-bit character sets.

Fonts

Digital has contributed numerous fixes the the bitmap fonts. These were distributed with R6 public patch 10.

ANSIfication

As noted previously under "Configuration Files", for pragmatic reasons we changed the way we use STDC to test for standard C compilers. This is only a short-term issue, as R6.1 will be the last release that will support traditional K&R C. Future releases will assume a standard C compiler and environment.

Software No Longer Included

The software described in this section has been removed from the core distribution in R6.1.

MTXserver

The multi-threaded X server snapshot is no longer shipped. It was in xc/workInProgress in R6. No further development has occurred. Considerable would work have been necessary to get the MTXserver sources back into a state where they could be compiled.

LBX

Low Bandwidth X, shipped in preliminary form in xc/workInProgress in R6, has been removed from the distribution pending completion of the protocol design and sample implementation. It will reappear in a future release.

Fresco

Fresco, shipped in xc/workInProgress in R6, is now independently dis- tributed. Source and documentation are available from http://www.faslab.com/fresco/HomePage.html.

Acknowledgements

Release 6.1 of X Version 11 is brought to you by the X staff at X Consortium, Inc: Donna Converse, Stephen Gildea, Kaleb Keithley, Matt Landau, Ralph Mor, Bob Scheifler, Ralph Swick, Ray Tice, Mark Welch, and Dave Wiggins.

Many companies and individuals have cooperated and worked extremely hard to make this release a reality, and our thanks go out to them. You will find many of them listed in the acknowledgements in the individual specifications.

Contributions were received from

Mike Patnode and SCO.

XKB: Erik Fortune (SGI) was the architect and major implementor. Help was received from Will Walker (Digital). Funding for some of this work was provided by IBM. The library spec was written by Gary Atkins and Amber Benson. The XFree86 Team used early versions and provided useful feedback and bug reports.

DBE: T. Alex Chen (IBM), Peter Daifuku (SGI), Ian Elliott (HP), Jim Graham (Sun), Larry Hare (AGE), Jay Hersh (X Consortium), Daryl Huff (Sun), Deron Dann Johnson (Sun), Louis Khouw (Sun), Mark Kilgard (SGI), Allen Leinwand (SGI). Rob Lembree (Digital), Alan Ricker (Metheus), Michael Rosenblum (Digital), Larry Seiler (Digital), Jeanne Sparlin (IBM), Jeff Stevenson (HP), Walter Strand (Metheus), Ken Tidwell (HP), Tom Yip (HP).

RECORD: Rob Chesler (Absol-puter), Amnon Cohen (Mercury Interactive), Kieron Drake (UniSoft), Marc Evans (Synergytics) Jim Fulton (NCD), Jim Haggerty (Metheus) Ken Miller (Digital), Alan Ricker (Metheus), Kent Siefkes (Performance Awareness), and Martha Zimet (NCD).

ddxen: HP, IBM, Digital, XFree86 Team.

fonts: Digital

Hidetoshi Tajima (Sun) tested the new internationalization code, providing useful bug reports and fixes.

ICE X Rendevous: Will Walker (Digital), Keith Edwards (Georgia Institute of Technology).

Copyright © 1996 X Consortium .

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”, to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of the X Consortium shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization from the X Consortium.

X Window System is a trademark of X Consortium, Inc.