Diff for "Development/Documentation/Protocol/OpCodes"

Differences between revisions 1 and 2
Revision 1 as of 2010-01-15 20:41:54
Size: 1798
Comment:
Revision 2 as of 2011-04-29 02:18:06
Size: 1798
Comment: change docs links from X11R7.5 to current
Deletions are marked like this. Additions are marked like this.
Line 8: Line 8:
 * the X protocol specs at http://www.x.org/releases/X11R7.5/doc/index.html  * the X protocol specs at http://www.x.org/releases/current/doc/index.html
Line 23: Line 23:
 * the X extension protocol specs at http://www.x.org/releases/X11R7.5/doc/index.html  * the X extension protocol specs at http://www.x.org/releases/current/doc/index.html

Every request sent from an X client to the X server in the X11 protocol is identified by an opcode. Opcodes 0-127 are reserved for the core X11 protocol. Opcodes 128-255 are used by extensions.

For the core protocol request opcodes, you can find their definitions in any of these places:

Opcodes 128-255 are dynamically assigned to X extensions, depending on which are supported and active in your current X server version/configuration. To see which are which in your currently running X server, run:

        xdpyinfo -queryExt | grep opcode

Each extension is assigned a single opcode from that range, also known as it's “major opcode.” For each operation provided by that extension, typically a second byte is used as a “minor opcode.” Minor opcodes for each extension are defined by the extension. For definitions of those, see any of these: