|
⇤ ← 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:
the X_* defines at the end of /usr/include/X11/Xproto.h
the XRequest.* lines in /usr/share/X11/XErrorDB
the R* X11:* lines in /usr/lib/xorg/protocol.txt
the X protocol specs at http://www.x.org/releases/current/doc/index.html
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:
the headers for that extension in /usr/include/X11/extensions/
the XRequest.<extension>.* lines in /usr/share/X11/XErrorDB
the R* <extension>:* lines in /usr/lib/xorg/protocol.txt
the X extension protocol specs at http://www.x.org/releases/current/doc/index.html


