home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-07-29 | 66.5 KB | 4,408 lines |
- \&
- .sp 1
- .ps 11
- .nr PS 11
- .XS
- Appendix B \- Protocol Encoding
- .XE
- .ce 3
- \s+1\fBAppendix B\fP\s-1
-
- \s+1\fBProtocol Encoding\fP\s-1
- .sp 2
- .LP
- .\"The sections in this appendix correspond to their number counterparts
- .\"in the protocol document.
- .SH
- Syntactic Conventions
- .LP
- All numbers are in decimal,
- unless prefixed with #x, in which case they are in hexadecimal (base 16).
- .LP
- The general syntax used to describe requests, replies, errors, events, and
- compound types is:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .R
- .PN NameofThing
- encode-form
- ...
- encode-form
- .De
- .ps 11
- .nr PS 11
- .LP
- Each encode-form describes a single component.
- .LP
- For components described in the protocol as:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .R
- name: TYPE
- .De
- .ps 11
- .nr PS 11
- .LP
- the encode-form is:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i 2.5i
- .ta 1i 1.5i 2.5i
- .R
- N TYPE name
- .De
- .ps 11
- .nr PS 11
- .LP
- N is the number of bytes occupied in the data stream,
- and TYPE is the interpretation of those bytes.
- For example,
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i
- .ta 1i 1.5i
- .R
- depth: CARD8
- .De
- .ps 11
- .nr PS 11
- .LP
- becomes:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .R
- .TA 1i 1.5i 2.5i
- .ta 1i 1.5i 2.5i
- 1 CARD8 depth
- .De
- .ps 11
- .nr PS 11
- .LP
- For components with a static numeric value the encode-form is:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i 2.5i
- .ta 1i 1.5i 2.5i
- .R
- N value name
- .De
- .ps 11
- .nr PS 11
- .LP
- The value is always interpreted as an N-byte unsigned integer.
- For example,
- the first two bytes of a Window error are always zero (indicating an
- error in general) and three (indicating the Window error in particular):
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i 2.5i
- .ta 1i 1.5i 2.5i
- .R
- 1 0 Error
- 1 3 code
- .De
- .ps 11
- .nr PS 11
- .LP
- For components described in the protocol as:
- .RS
- .ps 9
- .nr PS 9
- .LP
- name:
- .Pn { Name1 ,...,
- .PN NameI }
- .RE
- .ps 11
- .nr PS 11
- .LP
- the encode-form is:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i 2.5i
- .ta 1i 1.5i 2.5i
- .R
- N name
- value1 Name1
- ...
- valueI NameI
- .De
- .ps 11
- .nr PS 11
- .LP
- The value is always interpreted as an N-byte unsigned integer.
- Note that the size of N is sometimes larger than that strictly required
- to encode the values.
- For example:
- .RS
- .ps 9
- .nr PS 9
- .LP
- class:
- .Pn { InputOutput ,
- .PN InputOnly ,
- .PN CopyFromParent }
- .RE
- .ps 11
- .nr PS 11
- .LP
- becomes:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i 2.5i 3i
- .ta 1i 1.5i 2.5i 3i
- .R
- 2 class
- 0 CopyFromParent
- 1 InputOutput
- 2 InputOnly
- .De
- .ps 11
- .nr PS 11
- .LP
- For components described in the protocol as:
- .RS
- .ps 9
- .nr PS 9
- .LP
- NAME: TYPE or
- .PN Alternative1 ...or
- .PN AlternativeI
- .RE
- .ps 11
- .nr PS 11
- .LP
- the encode-form is:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i 2i 2.5i 3i
- .ta 1i 1.5i 2i 2.5i 3i
- .R
- N TYPE NAME
- value1 Alternative1
- ...
- valueI AlternativeI
- .De
- .ps 11
- .nr PS 11
- .LP
- The alternative values are guaranteed not to conflict with the encoding
- of TYPE.
- For example:
- .RS
- .ps 9
- .nr PS 9
- .LP
- destination: WINDOW or
- .PN PointerWindow or
- .PN InputFocus
- .RE
- .ps 11
- .nr PS 11
- .LP
- becomes:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i 2.5i
- .ta 1i 1.5i 2.5i
- .R
- 4 WINDOW destination
- 0 PointerWindow
- 1 InputFocus
- .De
- .ps 11
- .nr PS 11
- .LP
- For components described in the protocol as:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i
- .ta 1i 1.5i
- .R
- value-mask: BITMASK
- .De
- .ps 11
- .nr PS 11
- .LP
- the encode-form is:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i 2i 2.5i
- .ta 1i 1.5i 2i 2.5i
- .R
- N BITMASK value-mask
- mask1 mask-name1
- ...
- maskI mask-nameI
- .De
- .ps 11
- .nr PS 11
- .LP
- The individual bits in the mask are specified and named,
- and N is 2 or 4.
- The most-significant bit in a BITMASK is reserved for use in defining
- chained (multiword) bitmasks, as extensions augment existing core requests.
- The precise interpretation of this bit is not yet defined here,
- although a probable mechanism is that a 1-bit indicates that another N bytes
- of bitmask follows, with bits within the overall mask still interpreted
- from least-significant to most-significant with an N-byte unit, with N-byte units
- interpreted in stream order, and with the overall mask being byte-swapped
- in individual N-byte units.
- .LP
- For LISTofVALUE encodings, the request is followed by a section of the form:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i
- .ta 1i 1.5i
- .R
- VALUEs
- encode-form
- ...
- encode-form
- .De
- .ps 11
- .nr PS 11
- .LP
- listing an encode-form for each VALUE.
- The NAME in each encode-form keys to the corresponding BITMASK bit.
- The encoding of a VALUE always occupies four bytes,
- but the number of bytes specified in the encoding-form indicates how
- many of the least-significant bytes are actually used;
- the remaining bytes are unused and their values do not matter.
- .LP
- In various cases, the number of bytes occupied by a component will be specified
- by a lowercase single-letter variable name instead of a specific numeric
- value, and often some other component will have its value specified as a
- simple numeric expression involving these variables.
- Components specified with such expressions are always interpreted
- as unsigned integers.
- The scope of such variables is always just the enclosing request, reply,
- error, event, or compound type structure.
- For example:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i 2i 2.5i
- .ta 1i 1.5i 2i 2.5i
- .R
- 2 3+n request length
- 4n LISTofPOINT points
- .De
- .ps 11
- .nr PS 11
- .LP
- For unused bytes (the values of the bytes are undefined and do no matter),
- the encode-form is:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .R
- .TA 1i 1.5i 2i 2.5i
- .ta 1i 1.5i 2i 2.5i
- N unused
- .De
- .ps 11
- .nr PS 11
- .LP
- If the number of unused bytes is variable, the encode-form typically is:
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i 2i 2.5i
- .ta 1i 1.5i 2i 2.5i
- .R
- p unused, p=pad(E)
- .De
- .ps 11
- .nr PS 11
- .LP
- where E is some expression,
- and pad(E) is the number of bytes needed to round E up to a multiple of four.
- .LP
- .ps 9
- .nr PS 9
- .Ds
- .TA 1i 1.5i 2i 2.5i
- .ta 1i 1.5i 2i 2.5i
- .R
- pad(E) = (4 - (E mod 4)) mod 4
- .De
- .ps 11
- .nr PS 11
- .SH
- Common Types
- .ps 9
- .nr PS 9
- .LP
- LISTofFOO
- .ps 11
- .nr PS 11
- .IP
- In this document the LISTof notation strictly means some number of repetitions
- of the FOO encoding;
- the actual length of the list is encoded elsewhere.
- .ps 9
- .nr PS 9
- .LP
- SETofFOO
- .ps 11
- .nr PS 11
- .IP
- A set is always represented by a bitmask, with a 1-bit indicating presence in
- the set.
- .ps 9
- .nr PS 9
- .LP
- BITMASK: CARD32
- .LP
- WINDOW: CARD32
- .LP
- PIXMAP: CARD32
- .LP
- CURSOR: CARD32
- .LP
- FONT: CARD32
- .LP
- GCONTEXT: CARD32
- .LP
- COLORMAP: CARD32
- .LP
- DRAWABLE: CARD32
- .LP
- FONTABLE: CARD32
- .LP
- ATOM: CARD32
- .LP
- VISUALID: CARD32
- .LP
- BYTE: 8-bit value
- .LP
- INT8: 8-bit signed integer
- .LP
- INT16: 16-bit signed integer
- .LP
- INT32: 32-bit signed integer
- .LP
- CARD8: 8-bit unsigned integer
- .LP
- CARD16: 16-bit unsigned integer
- .LP
- CARD32: 32-bit unsigned integer
- .LP
- TIMESTAMP: CARD32
- .LP
- .Ds 0
- .TA .75i 1.75i
- .ta .75i 1.75i
- .R
- BITGRAVITY
- 0 Forget
- 1 NorthWest
- 2 North
- 3 NorthEast
- 4 West
- 5 Center
- 6 East
- 7 SouthWest
- 8 South
- 9 SouthEast
- 10 Static
- .De
- .LP
- .Ds 0
- .TA .75i 1.75i
- .ta .75i 1.75i
- .R
- WINGRAVITY
- 0 Unmap
- 1 NorthWest
- 2 North
- 3 NorthEast
- 4 West
- 5 Center
- 6 East
- 7 SouthWest
- 8 South
- 9 SouthEast
- 10 Static
- .De
- .LP
- .Ds 0
- .TA .75i 1.75i
- .ta .75i 1.75i
- .R
- BOOL
- 0 False
- 1 True
- .De
- .LP
- .Ds 0
- .TA .75i 1.75i
- .ta .75i 1.75i
- .R
- SETofEVENT
- #x00000001 KeyPress
- #x00000002 KeyRelease
- #x00000004 ButtonPress
- #x00000008 ButtonRelease
- #x00000010 EnterWindow
- #x00000020 LeaveWindow
- #x00000040 PointerMotion
- #x00000080 PointerMotionHint
- #x00000100 Button1Motion
- #x00000200 Button2Motion
- #x00000400 Button3Motion
- #x00000800 Button4Motion
- #x00001000 Button5Motion
- #x00002000 ButtonMotion
- #x00004000 KeymapState
- #x00008000 Exposure
- #x00010000 VisibilityChange
- #x00020000 StructureNotify
- #x00040000 ResizeRedirect
- #x00080000 SubstructureNotify
- #x00100000 SubstructureRedirect
- #x00200000 FocusChange
- #x00400000 PropertyChange
- #x00800000 ColormapChange
- #x01000000 OwnerGrabButton
- #xFE000000 unused but must be zero
- .De
- .LP
- .Ds 0
- .TA .75i 1.75i
- .ta .75i 1.75i
- .R
- SETofPOINTEREVENT
- encodings are the same as for SETofEVENT, except with
- #xFFFF8003 unused but must be zero
- .De
- .LP
- .Ds 0
- .TA .75i 1.75i
- .ta .75i 1.75i
- .R
- SETofDEVICEEVENT
- encodings are the same as for SETofEVENT, except with
- #xFFFFC0B0 unused but must be zero
- .De
- KEYSYM: CARD32
- .LP
- KEYCODE: CARD8
- .LP
- BUTTON: CARD8
- .LP
- .Ds 0
- .TA .75i 1.75i
- .ta .75i 1.75i
- .R
- SETofKEYBUTMASK
- #x0001 Shift
- #x0002 Lock
- #x0004 Control
- #x0008 Mod1
- #x0010 Mod2
- #x0020 Mod3
- #x0040 Mod4
- #x0080 Mod5
- #x0100 Button1
- #x0200 Button2
- #x0400 Button3
- #x0800 Button4
- #x1000 Button5
- #xE000 unused but must be zero
- .De
- .LP
- .Ds 0
- .TA .75i 1.75i
- .ta .75i 1.75i
- .R
- SETofKEYMASK
- encodings are the same as for SETofKEYBUTMASK, except with
- #xFF00 unused but must be zero
- .De
- .LP
- STRING8: LISTofCARD8
- .LP
- STRING16: LISTofCHAR2B
- .LP
- .Ds 0
- .TA .2i .5i 1.5i
- .ta .2i .5i 1.5i
- .R
- CHAR2B
- 1 CARD8 byte1
- 1 CARD8 byte2
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i
- .ta .2i .5i 1.5i
- .R
- POINT
- 2 INT16 x
- 2 INT16 y
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i
- .ta .2i .5i 1.5i
- .R
- RECTANGLE
- 2 INT16 x
- 2 INT16 y
- 2 CARD16 width
- 2 CARD16 height
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i
- .ta .2i .5i 1.5i
- .R
- ARC
- 2 INT16 x
- 2 INT16 y
- 2 CARD16 width
- 2 CARD16 height
- 2 INT16 angle1
- 2 INT16 angle2
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- HOST
- 1 family
- 0 Internet
- 1 DECnet
- 2 Chaos
- 1 unused
- 2 n length of address
- n LISTofBYTE address
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- STR
- 1 n length of name in bytes
- n STRING8 name
- .De
- .ps 11
- .nr PS 11
- .SH
- Errors
- .LP
- .ps 9
- .nr PS 9
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Request
- 1 0 Error
- 1 1 code
- 2 CARD16 sequence number
- 4 unused
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Value
- 1 0 Error
- 1 2 code
- 2 CARD16 sequence number
- 4 <32-bits> bad value
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Window
- 1 0 Error
- 1 3 code
- 2 CARD16 sequence number
- 4 CARD32 bad resource id
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Pixmap
- 1 0 Error
- 1 4 code
- 2 CARD16 sequence number
- 4 CARD32 bad resource id
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Atom
- 1 0 Error
- 1 5 code
- 2 CARD16 sequence number
- 4 CARD32 bad atom id
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Cursor
- 1 0 Error
- 1 6 code
- 2 CARD16 sequence number
- 4 CARD32 bad resource id
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Font
- 1 0 Error
- 1 7 code
- 2 CARD16 sequence number
- 4 CARD32 bad resource id
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Match
- 1 0 Error
- 1 8 code
- 2 CARD16 sequence number
- 4 unused
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Drawable
- 1 0 Error
- 1 9 code
- 2 CARD16 sequence number
- 4 CARD32 bad resource id
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Access
- 1 0 Error
- 1 10 code
- 2 CARD16 sequence number
- 4 unused
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Alloc
- 1 0 Error
- 1 11 code
- 2 CARD16 sequence number
- 4 unused
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Colormap
- 1 0 Error
- 1 12 code
- 2 CARD16 sequence number
- 4 CARD32 bad resource id
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GContext
- 1 0 Error
- 1 13 code
- 2 CARD16 sequence number
- 4 CARD32 bad resource id
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN IDChoice
- 1 0 Error
- 1 14 code
- 2 CARD16 sequence number
- 4 CARD32 bad resource id
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Name
- 1 0 Error
- 1 15 code
- 2 CARD16 sequence number
- 4 unused
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Length
- 1 0 Error
- 1 16 code
- 2 CARD16 sequence number
- 4 unused
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Implementation
- 1 0 Error
- 1 17 code
- 2 CARD16 sequence number
- 4 unused
- 2 CARD16 minor opcode
- 1 CARD8 major opcode
- 21 unused
- .De
- .ps 11
- .nr PS 11
- .SH
- Keyboards
- .LP
- KEYCODE values are always greater than 7 (and less than 256).
- .LP
- KEYSYM values with the bit #x10000000 set are reserved as vendor-specific.
- .LP
- The names and encodings of the standard KEYSYM values are contained in
- Appendix A, Keysym Encoding.
- .SH
- Pointers
- .LP
- BUTTON values are numbered starting with one.
- .SH
- Predefined Atoms
- .LP
- .ps 9
- .nr PS 9
- .Ds 0
- .TA 1.75i 3i 4.75i
- .ta 1.75i 3i 4.75i
- PRIMARY 1 WM_NORMAL_HINTS 40
- SECONDARY 2 WM_SIZE_HINTS 41
- ARC 3 WM_ZOOM_HINTS 42
- ATOM 4 MIN_SPACE 43
- BITMAP 5 NORM_SPACE 44
- CARDINAL 6 MAX_SPACE 45
- COLORMAP 7 END_SPACE 46
- CURSOR 8 SUPERSCRIPT_X 47
- CUT_BUFFER0 9 SUPERSCRIPT_Y 48
- CUT_BUFFER1 10 SUBSCRIPT_X 49
- CUT_BUFFER2 11 SUBSCRIPT_Y 50
- CUT_BUFFER3 12 UNDERLINE_POSITION 51
- CUT_BUFFER4 13 UNDERLINE_THICKNESS 52
- CUT_BUFFER5 14 STRIKEOUT_ASCENT 53
- CUT_BUFFER6 15 STRIKEOUT_DESCENT 54
- CUT_BUFFER7 16 ITALIC_ANGLE 55
- DRAWABLE 17 X_HEIGHT 56
- FONT 18 QUAD_WIDTH 57
- INTEGER 19 WEIGHT 58
- PIXMAP 20 POINT_SIZE 59
- POINT 21 RESOLUTION 60
- RECTANGLE 22 COPYRIGHT 61
- RESOURCE_MANAGER 23 NOTICE 62
- RGB_COLOR_MAP 24 FONT_NAME 63
- RGB_BEST_MAP 25 FAMILY_NAME 64
- RGB_BLUE_MAP 26 FULL_NAME 65
- RGB_DEFAULT_MAP 27 CAP_HEIGHT 66
- RGB_GRAY_MAP 28 WM_CLASS 67
- RGB_GREEN_MAP 29 WM_TRANSIENT_FOR 68
- RGB_RED_MAP 30
- STRING 31
- VISUALID 32
- WINDOW 33
- WM_COMMAND 34
- WM_HINTS 35
- WM_CLIENT_MACHINE 36
- WM_ICON_NAME 37
- WM_ICON_SIZE 38
- WM_NAME 39
- .De
- .ps 11
- .nr PS 11
- .SH
- Connection Setup
- .LP
- For TCP connections,
- displays on a given host are numbered starting from 0,
- and the server for display N listens and accepts connections on port 6000 + N.
- For DECnet connections,
- displays on a given host are numbered starting from 0,
- and the server for display N listens and accepts connections on the object
- name obtained by concatenating ``X$X'' with the decimal representation of N,
- for example, X$X0 and X$X1.
- .LP
- Information sent by the client at connection setup:
- .LP
- .ps 9
- .nr PS 9
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- 1 byte-order
- #x42 MSB first
- #x6C LSB first
- 1 unused
- 2 CARD16 protocol-major-version
- 2 CARD16 protocol-minor-version
- 2 n length of authorization-protocol-name
- 2 d length of authorization-protocol-data
- 2 unused
- n STRING8 authorization-protocol-name
- p unused, p=pad(n)
- d STRING8 authorization-protocol-data
- q unused, q=pad(d)
- .De
- .ps 11
- .nr PS 11
- .LP
- Except where explicitly noted in the protocol,
- all 16-bit and 32-bit quantities sent by the client must be transmitted
- with the specified byte order,
- and all 16-bit and 32-bit quantities returned by the server will be transmitted
- with this byte order.
- .LP
- Information received by the client if authorization fails:
- .LP
- .ps 9
- .nr PS 9
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- 1 0 failed
- 1 n length of reason in bytes
- 2 CARD16 protocol-major-version
- 2 CARD16 protocol-minor-version
- 2 (n+p)/4 length in 4-byte units of ``additional data''
- n STRING8 reason
- p unused, p=pad(n)
- .De
- .ps 11
- .nr PS 11
- .LP
- Information received by the client if authorization is accepted:
- .LP
- .ps 9
- .nr PS 9
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- 1 1 success
- 1 unused
- 2 CARD16 protocol-major-version
- 2 CARD16 protocol-minor-version
- 2 8+2n+(v+p+m)/4 length in 4-byte units of ``additional data''
- 4 CARD32 release-number
- 4 CARD32 resource-id-base
- 4 CARD32 resource-id-mask
- 4 CARD32 motion-buffer-size
- 2 v length of vendor
- 2 CARD16 maximum-request-length
- 1 CARD8 number of SCREENs in roots
- 1 n number for FORMATs in pixmap-formats
- 1 image-byte-order
- 0 LSBFirst
- 1 MSBFirst
- 1 bitmap-format-bit-order
- 0 LeastSignificant
- 1 MostSignificant
- 1 CARD8 bitmap-format-scanline-unit
- 1 CARD8 bitmap-format-scanline-pad
- 1 KEYCODE min-keycode
- 1 KEYCODE max-keycode
- 4 unused
- v STRING8 vendor
- p unused, p=pad(v)
- 8n LISTofFORMAT pixmap-formats
- m LISTofSCREEN roots (m is always a multiple of 4)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- FORMAT
- 1 CARD8 depth
- 1 CARD8 bits-per-pixel
- 1 CARD8 scanline-pad
- 5 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- SCREEN
- 4 WINDOW root
- 4 COLORMAP default-colormap
- 4 CARD32 white-pixel
- 4 CARD32 black-pixel
- 4 SETofEVENT current-input-masks
- 2 CARD16 width-in-pixels
- 2 CARD16 height-in-pixels
- 2 CARD16 width-in-millimeters
- 2 CARD16 height-in-millimeters
- 2 CARD16 min-installed-maps
- 2 CARD16 max-installed-maps
- 4 VISUALID root-visual
- 1 backing-stores
- 0 Never
- 1 WhenMapped
- 2 Always
- 1 BOOL save-unders
- 1 CARD8 root-depth
- 1 CARD8 number of DEPTHs in allowed-depths
- n LISTofDEPTH allowed-depths (n is always a multiple of 4)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- DEPTH
- 1 CARD8 depth
- 1 unused
- 2 n number of VISUALTYPES in visuals
- 4 unused
- 24n LISTofVISUALTYPE visuals
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- VISUALTYPE
- 4 VISUALID visual-id
- 1 class
- 0 StaticGray
- 1 GrayScale
- 2 StaticColor
- 3 PseudoColor
- 4 TrueColor
- 5 DirectColor
- 1 CARD8 bits-per-rgb-value
- 2 CARD16 colormap-entries
- 4 CARD32 red-mask
- 4 CARD32 green-mask
- 4 CARD32 blue-mask
- 4 unused
- .De
- .ps 11
- .nr PS 11
- .SH
- Requests
- .LP
- .ps 9
- .nr PS 9
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CreateWindow
- 1 1 opcode
- 1 CARD8 depth
- 2 8+n request length
- 4 WINDOW wid
- 4 WINDOW parent
- 2 INT16 x
- 2 INT16 y
- 2 CARD16 width
- 2 CARD16 height
- 2 CARD16 border-width
- 2 class
- 0 CopyFromParent
- 1 InputOutput
- 2 InputOnly
- 4 VISUALID visual
- 0 CopyFromParent
- 4 BITMASK value-mask (has n bits set to 1)
- #x00000001 background-pixmap
- #x00000002 background-pixel
- #x00000004 border-pixmap
- #x00000008 border-pixel
- #x00000010 bit-gravity
- #x00000020 win-gravity
- #x00000040 backing-store
- #x00000080 backing-planes
- #x00000100 backing-pixel
- #x00000200 override-redirect
- #x00000400 save-under
- #x00000800 event-mask
- #x00001000 do-not-propagate-mask
- #x00002000 colormap
- #x00004000 cursor
- 4n LISTofVALUE value-list
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- VALUEs
- 4 PIXMAP background-pixmap
- 0 None
- 1 ParentRelative
- 4 CARD32 background-pixel
- 4 PIXMAP border-pixmap
- 0 CopyFromParent
- 4 CARD32 border-pixel
- 1 BITGRAVITY bit-gravity
- 1 WINGRAVITY win-gravity
- 1 backing-store
- 0 NotUseful
- 1 WhenMapped
- 2 Always
- 4 CARD32 backing-planes
- 4 CARD32 backing-pixel
- 1 BOOL override-redirect
- 1 BOOL save-under
- 4 SETofEVENT event-mask
- 4 SETofDEVICEEVENT do-not-propagate-mask
- 4 COLORMAP colormap
- 0 CopyFromParent
- 4 CURSOR cursor
- 0 None
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ChangeWindowAttributes
- 1 2 opcode
- 1 unused
- 2 3+n request length
- 4 WINDOW window
- 4 BITMASK value-mask (has n bits set to 1)
- encodings are the same as for CreateWindow
- 4n LISTofVALUE value-list
- encodings are the same as for CreateWindow
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetWindowAttributes
- 1 3 opcode
- 1 unused
- 2 2 request length
- 4 WINDOW window
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 backing-store
- 0 NotUseful
- 1 WhenMapped
- 2 Always
- 2 CARD16 sequence number
- 4 3 reply length
- 4 VISUALID visual
- 2 class
- 1 InputOutput
- 2 InputOnly
- 1 BITGRAVITY bit-gravity
- 1 WINGRAVITY win-gravity
- 4 CARD32 backing-planes
- 4 CARD32 backing-pixel
- 1 BOOL save-under
- 1 BOOL map-is-installed
- 1 map-state
- 0 Unmapped
- 1 Unviewable
- 2 Viewable
- 1 BOOL override-redirect
- 4 COLORMAP colormap
- 0 None
- 4 SETofEVENT all-event-masks
- 4 SETofEVENT your-event-mask
- 2 SETofDEVICEEVENT do-not-propagate-mask
- 2 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN DestroyWindow
- 1 4 opcode
- 1 unused
- 2 2 request length
- 4 WINDOW window
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN DestroySubwindows
- 1 5 opcode
- 1 unused
- 2 2 request length
- 4 WINDOW window
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ChangeSaveSet
- 1 6 opcode
- 1 mode
- 0 Insert
- 1 Delete
- 2 2 request length
- 4 WINDOW window
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ReparentWindow
- 1 7 opcode
- 1 unused
- 2 4 request length
- 4 WINDOW window
- 4 WINDOW parent
- 2 INT16 x
- 2 INT16 y
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN MapWindow
- 1 8 opcode
- 1 unused
- 2 2 request length
- 4 WINDOW window
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN MapSubwindows
- 1 9 opcode
- 1 unused
- 2 2 request length
- 4 WINDOW window
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN UnmapWindow
- 1 10 opcode
- 1 unused
- 2 2 request length
- 4 WINDOW window
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN UnmapSubwindows
- 1 11 opcode
- 1 unused
- 2 2 request length
- 4 WINDOW window
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ConfigureWindow
- 1 12 opcode
- 1 unused
- 2 3+n request length
- 4 WINDOW window
- 2 BITMASK value-mask (has n bits set to 1)
- #x0001 x
- #x0002 y
- #x0004 width
- #x0008 height
- #x0010 border-width
- #x0020 sibling
- #x0040 stack-mode
- 2 unused
- 4n LISTofVALUE value-list
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- VALUEs
- 2 INT16 x
- 2 INT16 y
- 2 CARD16 width
- 2 CARD16 height
- 2 CARD16 border-width
- 4 WINDOW sibling
- 1 stack-mode
- 0 Above
- 1 Below
- 2 TopIf
- 3 BottomIf
- 4 Opposite
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CirculateWindow
- 1 13 opcode
- 1 direction
- 0 RaiseLowest
- 1 LowerHighest
- 2 2 request length
- 4 WINDOW window
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetGeometry
- 1 14 opcode
- 1 unused
- 2 2 request length
- 4 DRAWABLE drawable
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 CARD8 depth
- 2 CARD16 sequence number
- 4 0 reply length
- 4 WINDOW root
- 2 INT16 x
- 2 INT16 y
- 2 CARD16 width
- 2 CARD16 height
- 2 CARD16 border-width
- 10 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN QueryTree
- 1 15 opcode
- 1 unused
- 2 2 request length
- 4 WINDOW window
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 n reply length
- 4 WINDOW root
- 4 WINDOW parent
- 0 None
- 2 n number of WINDOWs in children
- 14 unused
- 4n LISTofWINDOW children
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN InternAtom
- 1 16 opcode
- 1 BOOL only-if-exists
- 2 2+(n+p)/4 request length
- 2 n length of name
- 2 unused
- n STRING8 name
- p unused, p=pad(n)
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 0 reply length
- 4 ATOM atom
- 0 None
- 20 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetAtomName
- 1 17 opcode
- 1 unused
- 2 2 request length
- 4 ATOM atom
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 (n+p)/4 reply length
- 2 n length of name
- 22 unused
- n STRING8 name
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ChangeProperty
- 1 18 opcode
- 1 mode
- 0 Replace
- 1 Prepend
- 2 Append
- 2 6+(n+p)/4 request length
- 4 WINDOW window
- 4 ATOM property
- 4 ATOM type
- 1 CARD8 format
- 3 unused
- 4 CARD32 length of data in format units
- (= n for format = 8)
- (= n/2 for format = 16)
- (= n/4 for format = 32)
- n LISTofBYTE data
- (n is a multiple of 2 for format = 16)
- (n is a multiple of 4 for format = 32)
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN DeleteProperty
- 1 19 opcode
- 1 unused
- 2 3 request length
- 4 WINDOW window
- 4 ATOM property
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetProperty
- 1 20 opcode
- 1 BOOL delete
- 2 6 request length
- 4 WINDOW window
- 4 ATOM property
- 4 ATOM type
- 0 AnyPropertyType
- 4 CARD32 long-offset
- 4 CARD32 long-length
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 CARD8 format
- 2 CARD16 sequence number
- 4 (n+p)/4 reply length
- 4 ATOM type
- 0 None
- 4 CARD32 bytes-after
- 4 CARD32 length of value in format units
- (= 0 for format = 0)
- (= n for format = 8)
- (= n/2 for format = 16)
- (= n/4 for format = 32)
- 12 unused
- n LISTofBYTE value
- (n is zero for format = 0)
- (n is a multiple of 2 for format = 16)
- (n is a multiple of 4 for format = 32)
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ListProperties
- 1 21 opcode
- 1 unused
- 2 2 request length
- 4 WINDOW window
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 n reply length
- 2 n number of ATOMs in atoms
- 22 unused
- 4n LISTofATOM atoms
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SetSelectionOwner
- 1 22 opcode
- 1 unused
- 2 4 request length
- 4 WINDOW owner
- 0 None
- 4 ATOM selection
- 4 TIMESTAMP time
- 0 CurrentTime
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetSelectionOwner
- 1 23 opcode
- 1 unused
- 2 2 request length
- 4 ATOM selection
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 0 reply length
- 4 WINDOW owner
- 0 None
- 20 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ConvertSelection
- 1 24 opcode
- 1 unused
- 2 6 request length
- 4 WINDOW requestor
- 4 ATOM selection
- 4 ATOM target
- 4 ATOM property
- 0 None
- 4 TIMESTAMP time
- 0 CurrentTime
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SendEvent
- 1 25 opcode
- 1 BOOL propagate
- 2 11 request length
- 4 WINDOW destination
- 0 PointerWindow
- 1 InputFocus
- 4 SETofEVENT event-mask
- 32 event
- standard event format (see the Events section)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GrabPointer
- 1 26 opcode
- 1 BOOL owner-events
- 2 6 request length
- 4 WINDOW grab-window
- 2 SETofPOINTEREVENT event-mask
- 1 pointer-mode
- 0 Synchronous
- 1 Asynchronous
- 1 keyboard-mode
- 0 Synchronous
- 1 Asynchronous
- 4 WINDOW confine-to
- 0 None
- 4 CURSOR cursor
- 0 None
- 4 TIMESTAMP time
- 0 CurrentTime
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 status
- 0 Success
- 1 AlreadyGrabbed
- 2 InvalidTime
- 3 NotViewable
- 4 Frozen
- 2 CARD16 sequence number
- 4 0 reply length
- 24 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN UngrabPointer
- 1 27 opcode
- 1 unused
- 2 2 request length
- 4 TIMESTAMP time
- 0 CurrentTime
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GrabButton
- 1 28 opcode
- 1 BOOL owner-events
- 2 6 request length
- 4 WINDOW grab-window
- 2 SETofPOINTEREVENT event-mask
- 1 pointer-mode
- 0 Synchronous
- 1 Asynchronous
- 1 keyboard-mode
- 0 Synchronous
- 1 Asynchronous
- 4 WINDOW confine-to
- 0 None
- 4 CURSOR cursor
- 0 None
- 1 BUTTON button
- 0 AnyButton
- 1 unused
- 2 SETofKEYMASK modifiers
- #x8000 AnyModifier
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN UngrabButton
- 1 29 opcode
- 1 BUTTON button
- 0 AnyButton
- 2 3 request length
- 4 WINDOW grab-window
- 2 SETofKEYMASK modifiers
- #x8000 AnyModifier
- 2 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ChangeActivePointerGrab
- 1 30 opcode
- 1 unused
- 2 4 request length
- 4 CURSOR cursor
- 0 None
- 4 TIMESTAMP time
- 0 CurrentTime
- 2 SETofPOINTEREVENT event-mask
- 2 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GrabKeyboard
- 1 31 opcode
- 1 BOOL owner-events
- 2 4 request length
- 4 WINDOW grab-window
- 4 TIMESTAMP time
- 0 CurrentTime
- 1 pointer-mode
- 0 Synchronous
- 1 Asynchronous
- 1 keyboard-mode
- 0 Synchronous
- 1 Asynchronous
- 2 unused
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 status
- 0 Success
- 1 AlreadyGrabbed
- 2 InvalidTime
- 3 NotViewable
- 4 Frozen
- 2 CARD16 sequence number
- 4 0 reply length
- 24 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN UngrabKeyboard
- 1 32 opcode
- 1 unused
- 2 2 request length
- 4 TIMESTAMP time
- 0 CurrentTime
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .PN GrabKey
- 1 33 opcode
- 1 BOOL owner-events
- 2 4 request length
- 4 WINDOW grab-window
- 2 SETofKEYMASK modifiers
- #x8000 AnyModifier
- 1 KEYCODE key
- 0 AnyKey
- 1 pointer-mode
- 0 Synchronous
- 1 Asynchronous
- 1 keyboard-mode
- 0 Synchronous
- 1 Asynchronous
- 3 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN UngrabKey
- 1 34 opcode
- 1 KEYCODE key
- 0 AnyKey
- 2 3 request length
- 4 WINDOW grab-window
- 2 SETofKEYMASK modifiers
- #x8000 AnyModifier
- 2 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN AllowEvents
- 1 35 opcode
- 1 mode
- 0 AsyncPointer
- 1 SyncPointer
- 2 ReplayPointer
- 3 AsyncKeyboard
- 4 SyncKeyboard
- 5 ReplayKeyboard
- 6 AsyncBoth
- 7 SyncBoth
- 2 2 request length
- 4 TIMESTAMP time
- 0 CurrentTime
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GrabServer
- 1 36 opcode
- 1 unused
- 2 1 request length
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN UngrabServer
- 1 37 opcode
- 1 unused
- 2 1 request length
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN QueryPointer
- 1 38 opcode
- 1 unused
- 2 2 request length
- 4 WINDOW window
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 BOOL same-screen
- 2 CARD16 sequence number
- 4 0 reply length
- 4 WINDOW root
- 4 WINDOW child
- 0 None
- 2 INT16 root-x
- 2 INT16 root-y
- 2 INT16 win-x
- 2 INT16 win-y
- 2 SETofKEYBUTMASK mask
- 6 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetMotionEvents
- 1 39 opcode
- 1 unused
- 2 4 request length
- 4 WINDOW window
- 4 TIMESTAMP start
- 0 CurrentTime
- 4 TIMESTAMP stop
- 0 CurrentTime
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 2n reply length
- 4 n number of TIMECOORDs in events
- 20 unused
- 8n LISTofTIMECOORD events
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- TIMECOORD
- 4 TIMESTAMP time
- 2 INT16 x
- 2 INT16 y
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN TranslateCoordinates
- 1 40 opcode
- 1 unused
- 2 4 request length
- 4 WINDOW src-window
- 4 WINDOW dst-window
- 2 INT16 src-x
- 2 INT16 src-y
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 BOOL same-screen
- 2 CARD16 sequence number
- 4 0 reply length
- 4 WINDOW child
- 0 None
- 2 INT16 dst-x
- 2 INT16 dst-y
- 16 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN WarpPointer
- 1 41 opcode
- 1 unused
- 2 6 request length
- 4 WINDOW src-window
- 0 None
- 4 WINDOW dst-window
- 0 None
- 2 INT16 src-x
- 2 INT16 src-y
- 2 CARD16 src-width
- 2 CARD16 src-height
- 2 INT16 dst-x
- 2 INT16 dst-y
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SetInputFocus
- 1 42 opcode
- 1 revert-to
- 0 None
- 1 PointerRoot
- 2 Parent
- 2 3 request length
- 4 WINDOW focus
- 0 None
- 1 PointerRoot
- 4 TIMESTAMP time
- 0 CurrentTime
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetInputFocus
- 1 43 opcode
- 1 unused
- 2 1 request length
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 revert-to
- 0 None
- 1 PointerRoot
- 2 Parent
- 2 CARD16 sequence number
- 4 0 reply length
- 4 WINDOW focus
- 0 None
- 1 PointerRoot
- 20 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN QueryKeymap
- 1 44 opcode
- 1 unused
- 2 1 request length
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 2 reply length
- 32 LISTofCARD8 keys
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN OpenFont
- 1 45 opcode
- 1 unused
- 2 3+(n+p)/4 request length
- 4 FONT fid
- 2 n length of name
- 2 unused
- n STRING8 name
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CloseFont
- 1 46 opcode
- 1 unused
- 2 2 request length
- 4 FONT font
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN QueryFont
- 1 47 opcode
- 1 unused
- 2 2 request length
- 4 FONTABLE font
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 7+2n+3m reply length
- 12 CHARINFO min-bounds
- 4 unused
- 12 CHARINFO max-bounds
- 4 unused
- 2 CARD16 min-char-or-byte2
- 2 CARD16 max-char-or-byte2
- 2 CARD16 default-char
- 2 n number of FONTPROPs in properties
- 1 draw-direction
- 0 LeftToRight
- 1 RightToLeft
- 1 CARD8 min-byte1
- 1 CARD8 max-byte1
- 1 BOOL all-chars-exist
- 2 INT16 font-ascent
- 2 INT16 font-descent
- 4 m number of CHARINFOs in char-infos
- 8n LISTofFONTPROP properties
- 12m LISTofCHARINFO char-infos
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- FONTPROP
- 4 ATOM name
- 4 <32-bits> value
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- CHARINFO
- 2 INT16 left-side-bearing
- 2 INT16 right-side-bearing
- 2 INT16 character-width
- 2 INT16 ascent
- 2 INT16 descent
- 2 CARD16 attributes
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN QueryTextExtents
- 1 48 opcode
- 1 BOOL odd length, True if p = 2
- 2 2+(2n+p)/4 request length
- 4 FONTABLE font
- 2n STRING16 string
- p unused, p=pad(2n)
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 draw-direction
- 0 LeftToRight
- 1 RightToLeft
- 2 CARD16 sequence number
- 4 0 reply length
- 2 INT16 font-ascent
- 2 INT16 font-descent
- 2 INT16 overall-ascent
- 2 INT16 overall-descent
- 4 INT32 overall-width
- 4 INT32 overall-left
- 4 INT32 overall-right
- 4 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ListFonts
- 1 49 opcode
- 1 unused
- 2 2+(n+p)/4 request length
- 2 CARD16 max-names
- 2 n length of pattern
- n STRING8 pattern
- p unused, p=pad(n)
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 (n+p)/4 reply length
- 2 CARD16 number of STRs in names
- 22 unused
- n LISTofSTR names
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ListFontsWithInfo
- 1 50 opcode
- 1 unused
- 2 2+(n+p)/4 request length
- 2 CARD16 max-names
- 2 n length of pattern
- n STRING8 pattern
- p unused, p=pad(n)
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- => (except for last in series)
- 1 1 Reply
- 1 n length of name in bytes
- 2 CARD16 sequence number
- 4 7+2m+(n+p)/4 reply length
- 12 CHARINFO min-bounds
- 4 unused
- 12 CHARINFO max-bounds
- 4 unused
- 2 CARD16 min-char-or-byte2
- 2 CARD16 max-char-or-byte2
- 2 CARD16 default-char
- 2 m number of FONTPROPs in properties
- 1 draw-direction
- 0 LeftToRight
- 1 RightToLeft
- 1 CARD8 min-byte1
- 1 CARD8 max-byte1
- 1 BOOL all-chars-exist
- 2 INT16 font-ascent
- 2 INT16 font-descent
- 4 CARD32 replies-hint
- 8m LISTofFONTPROP properties
- n STRING8 name
- p unused, p=pad(n)
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- FONTPROP
- encodings are the same as for QueryFont
-
- CHARINFO
- encodings are the same as for QueryFont
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- => (last in series)
- 1 1 Reply
- 1 0 last-reply indicator
- 2 CARD16 sequence number
- 4 7 reply length
- 52 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SetFontPath
- 1 51 opcode
- 1 unused
- 2 2+(n+p)/4 request length
- 2 CARD16 number of STRs in path
- 2 unused
- n LISTofSTR path
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetFontPath
- 1 52 opcode
- 1 unused
- 2 1 request list
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 (n+p)/4 reply length
- 2 CARD16 number of STRs in path
- 22 unused
- n LISTofSTR path
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CreatePixmap
- 1 53 opcode
- 1 CARD8 depth
- 2 4 request length
- 4 PIXMAP pid
- 4 DRAWABLE drawable
- 2 CARD16 width
- 2 CARD16 height
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN FreePixmap
- 1 54 opcode
- 1 unused
- 2 2 request length
- 4 PIXMAP pixmap
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CreateGC
- 1 55 opcode
- 1 unused
- 2 4+n request length
- 4 GCONTEXT cid
- 4 DRAWABLE drawable
- 4 BITMASK value-mask (has n bits set to 1)
- #x00000001 function
- #x00000002 plane-mask
- #x00000004 foreground
- #x00000008 background
- #x00000010 line-width
- #x00000020 line-style
- #x00000040 cap-style
- #x00000080 join-style
- #x00000100 fill-style
- #x00000200 fill-rule
- #x00000400 tile
- #x00000800 stipple
- #x00001000 tile-stipple-x-origin
- #x00002000 tile-stipple-y-origin
- #x00004000 font
- #x00008000 subwindow-mode
- #x00010000 graphics-exposures
- #x00020000 clip-x-origin
- #x00040000 clip-y-origin
- #x00080000 clip-mask
- #x00100000 dash-offset
- #x00200000 dashes
- #x00400000 arc-mode
- 4n LISTofVALUE value-list
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- VALUEs
- 1 function
- 0 Clear
- 1 And
- 2 AndReverse
- 3 Copy
- 4 AndInverted
- 5 NoOp
- 6 Xor
- 7 Or
- 8 Nor
- 9 Equiv
- 10 Invert
- 11 OrReverse
- 12 CopyInverted
- 13 OrInverted
- 14 Nand
- 15 Set
- 4 CARD32 plane-mask
- 4 CARD32 foreground
- 4 CARD32 background
- 2 CARD16 line-width
- 1 line-style
- 0 Solid
- 1 OnOffDash
- 2 DoubleDash
- 1 cap-style
- 0 NotLast
- 1 Butt
- 2 Round
- 3 Projecting
- 1 join-style
- 0 Miter
- 1 Round
- 2 Bevel
- 1 fill-style
- 0 Solid
- 1 Tiled
- 2 Stippled
- 3 OpaqueStippled
- 1 fill-rule
- 0 EvenOdd
- 1 Winding
- 4 PIXMAP tile
- 4 PIXMAP stipple
- 2 INT16 tile-stipple-x-origin
- 2 INT16 tile-stipple-y-origin
- 4 FONT font
- 1 subwindow-mode
- 0 ClipByChildren
- 1 IncludeInferiors
- 1 BOOL graphics-exposures
- 2 INT16 clip-x-origin
- 2 INT16 clip-y-origin
- 4 PIXMAP clip-mask
- 0 None
- 2 CARD16 dash-offset
- 1 CARD8 dashes
- 1 arc-mode
- 0 Chord
- 1 PieSlice
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ChangeGC
- 1 56 opcode
- 1 unused
- 2 3+n request length
- 4 GCONTEXT gc
- 4 BITMASK value-mask (has n bits set to 1)
- encodings are the same as for CreateGC
- 4n LISTofVALUE value-list
- encodings are the same as for CreateGC
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CopyGC
- 1 57 opcode
- 1 unused
- 2 4 request length
- 4 GCONTEXT src-gc
- 4 GCONTEXT dst-gc
- 4 BITMASK value-mask
- encodings are the same as for CreateGC
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SetDashes
- 1 58 opcode
- 1 unused
- 2 3+(n+p)/4 request length
- 4 GCONTEXT gc
- 2 CARD16 dash-offset
- 2 n length of dashes
- n LISTofCARD8 dashes
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SetClipRectangles
- 1 59 opcode
- 1 ordering
- 0 UnSorted
- 1 YSorted
- 2 YXSorted
- 3 YXBanded
- 2 3+2n request length
- 4 GCONTEXT gc
- 2 INT16 clip-x-origin
- 2 INT16 clip-y-origin
- 8n LISTofRECTANGLE rectangles
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN FreeGC
- 1 60 opcode
- 1 unused
- 2 2 request length
- 4 GCONTEXT gc
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ClearArea
- 1 61 opcode
- 1 BOOL exposures
- 2 4 request length
- 4 WINDOW window
- 2 INT16 x
- 2 INT16 y
- 2 CARD16 width
- 2 CARD16 height
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CopyArea
- 1 62 opcode
- 1 unused
- 2 7 request length
- 4 DRAWABLE src-drawable
- 4 DRAWABLE dst-drawable
- 4 GCONTEXT gc
- 2 INT16 src-x
- 2 INT16 src-y
- 2 INT16 dst-x
- 2 INT16 dst-y
- 2 CARD16 width
- 2 CARD16 height
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CopyPlane
- 1 63 opcode
- 1 unused
- 2 8 request length
- 4 DRAWABLE src-drawable
- 4 DRAWABLE dst-drawable
- 4 GCONTEXT gc
- 2 INT16 src-x
- 2 INT16 src-y
- 2 INT16 dst-x
- 2 INT16 dst-y
- 2 CARD16 width
- 2 CARD16 height
- 4 CARD32 bit-plane
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN PolyPoint
- 1 64 opcode
- 1 coordinate-mode
- 0 Origin
- 1 Previous
- 2 3+n request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 4n LISTofPOINT points
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN PolyLine
- 1 65 opcode
- 1 coordinate-mode
- 0 Origin
- 1 Previous
- 2 3+n request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 4n LISTofPOINT points
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN PolySegment
- 1 66 opcode
- 1 unused
- 2 3+2n request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 8n LISTofSEGMENT segments
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- SEGMENT
- 2 INT16 x1
- 2 INT16 y1
- 2 INT16 x2
- 2 INT16 y2
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN PolyRectangle
- 1 67 opcode
- 1 unused
- 2 3+2n request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 8n LISTofRECTANGLE rectangles
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN PolyArc
- 1 68 opcode
- 1 unused
- 2 3+3n request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 12n LISTofARC arcs
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN FillPoly
- 1 69 opcode
- 1 unused
- 2 4+n request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 1 shape
- 0 Complex
- 1 Nonconvex
- 2 Convex
- 1 coordinate-mode
- 0 Origin
- 1 Previous
- 2 unused
- 4n LISTofPOINT points
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN PolyFillRectangle
- 1 70 opcode
- 1 unused
- 2 3+2n request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 8n LISTofRECTANGLE rectangles
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN PolyFillArc
- 1 71 opcode
- 1 unused
- 2 3+3n request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 12n LISTofARC arcs
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN PutImage
- 1 72 opcode
- 1 format
- 0 Bitmap
- 1 XYPixmap
- 2 ZPixmap
- 2 6+(n+p)/4 request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 2 CARD16 width
- 2 CARD16 height
- 2 INT16 dst-x
- 2 INT16 dst-y
- 1 CARD8 left-pad
- 1 CARD8 depth
- 2 unused
- n LISTofBYTE data
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetImage
- 1 73 opcode
- 1 format
- 1 XYPixmap
- 2 ZPixmap
- 2 5 request length
- 4 DRAWABLE drawable
- 2 INT16 x
- 2 INT16 y
- 2 CARD16 width
- 2 CARD16 height
- 4 CARD32 plane-mask
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 CARD8 depth
- 2 CARD16 sequence number
- 4 (n+p)/4 reply length
- 4 VISUALID visual
- 0 None
- 20 unused
- n LISTofBYTE data
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN PolyText8
- 1 74 opcode
- 1 unused
- 2 4+(n+p)/4 request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 2 INT16 x
- 2 INT16 y
- n LISTofTEXTITEM8 items
- p unused, p=pad(n) (p is always 0 or 1)
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- TEXTITEM8
- 1 m length of string (cannot be 255)
- 1 INT8 delta
- m STRING8 string
- or
- 1 255 font-shift indicator
- 1 font byte 3 (most-significant)
- 1 font byte 2
- 1 font byte 1
- 1 font byte 0 (least-significant)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN PolyText16
- 1 75 opcode
- 1 unused
- 2 4+(n+p)/4 request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 2 INT16 x
- 2 INT16 y
- n LISTofTEXTITEM16 items
- p unused, p=pad(n) (p must be 0 or 1)
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- TEXTITEM16
- 1 m number of CHAR2Bs in string (cannot be 255)
- 1 INT8 delta
- 2m STRING16 string
- or
- 1 255 font-shift indicator
- 1 font byte 3 (most-significant)
- 1 font byte 2
- 1 font byte 1
- 1 font byte 0 (least-significant)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ImageText8
- 1 76 opcode
- 1 n length of string
- 2 4+(n+p)/4 request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 2 INT16 x
- 2 INT16 y
- n STRING8 string
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ImageText16
- 1 77 opcode
- 1 n number of CHAR2Bs in string
- 2 4+(2n+p)/4 request length
- 4 DRAWABLE drawable
- 4 GCONTEXT gc
- 2 INT16 x
- 2 INT16 y
- 2n STRING16 string
- p unused, p=pad(2n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CreateColormap
- 1 78 opcode
- 1 alloc
- 0 None
- 1 All
- 2 4 request length
- 4 COLORMAP mid
- 4 WINDOW window
- 4 VISUALID visual
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN FreeColormap
- 1 79 opcode
- 1 unused
- 2 2 request length
- 4 COLORMAP cmap
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CopyColormapAndFree
- 1 80 opcode
- 1 unused
- 2 3 request length
- 4 COLORMAP mid
- 4 COLORMAP src-cmap
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN InstallColormap
- 1 81 opcode
- 1 unused
- 2 2 request length
- 4 COLORMAP cmap
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN UninstallColormap
- 1 82 opcode
- 1 unused
- 2 2 request length
- 4 COLORMAP cmap
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ListInstalledColormaps
- 1 83 opcode
- 1 unused
- 2 2 request length
- 4 WINDOW window
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 n reply length
- 2 n number of COLORMAPs in cmaps
- 22 unused
- 4n LISTofCOLORMAP cmaps
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN AllocColor
- 1 84 opcode
- 1 unused
- 2 4 request length
- 4 COLORMAP cmap
- 2 CARD16 red
- 2 CARD16 green
- 2 CARD16 blue
- 2 unused
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 0 reply length
- 2 CARD16 red
- 2 CARD16 green
- 2 CARD16 blue
- 2 unused
- 4 CARD32 pixel
- 12 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN AllocNamedColor
- 1 85 opcode
- 1 unused
- 2 3+(n+p)/4 request length
- 4 COLORMAP cmap
- 2 n length of name
- 2 unused
- n STRING8 name
- p unused, p=pad(n)
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 0 reply length
- 4 CARD32 pixel
- 2 CARD16 exact-red
- 2 CARD16 exact-green
- 2 CARD16 exact-blue
- 2 CARD16 visual-red
- 2 CARD16 visual-green
- 2 CARD16 visual-blue
- 8 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN AllocColorCells
- 1 86 opcode
- 1 BOOL contiguous
- 2 3 request length
- 4 COLORMAP cmap
- 2 CARD16 colors
- 2 CARD16 planes
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 n+m reply length
- 2 n number of CARD32s in pixels
- 2 m number of CARD32s in masks
- 20 unused
- 4n LISTofCARD32 pixels
- 4m LISTofCARD32 masks
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN AllocColorPlanes
- 1 87 opcode
- 1 BOOL contiguous
- 2 4 request length
- 4 COLORMAP cmap
- 2 CARD16 colors
- 2 CARD16 reds
- 2 CARD16 greens
- 2 CARD16 blues
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 n reply length
- 2 n number of CARD32s in pixels
- 2 unused
- 4 CARD32 red-mask
- 4 CARD32 green-mask
- 4 CARD32 blue-mask
- 8 unused
- 4n LISTofCARD32 pixels
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN FreeColors
- 1 88 opcode
- 1 unused
- 2 3+n request length
- 4 COLORMAP cmap
- 4 CARD32 plane-mask
- 4n LISTofCARD32 pixels
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN StoreColors
- 1 89 opcode
- 1 unused
- 2 2+3n request length
- 4 COLORMAP cmap
- 12n LISTofCOLORITEM items
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- COLORITEM
- 4 CARD32 pixel
- 2 CARD16 red
- 2 CARD16 green
- 2 CARD16 blue
- 1 do-red, do-green, do-blue
- #x01 do-red (1 is True, 0 is False)
- #x02 do-green (1 is True, 0 is False)
- #x04 do-blue (1 is True, 0 is False)
- #xF8 unused
- 1 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN StoreNamedColor
- 1 90 opcode
- 1 do-red, do-green, do-blue
- #x01 do-red (1 is True, 0 is False)
- #x02 do-green (1 is True, 0 is False)
- #x04 do-blue (1 is True, 0 is False)
- #xF8 unused
- 2 4+(n+p)/4 request length
- 4 COLORMAP cmap
- 4 CARD32 pixel
- 2 n length of name
- 2 unused
- n STRING8 name
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN QueryColors
- 1 91 opcode
- 1 unused
- 2 2+n request length
- 4 COLORMAP cmap
- 4n LISTofCARD32 pixels
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 2n reply length
- 2 n number of RGBs in colors
- 22 unused
- 8n LISTofRGB colors
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- RGB
- 2 CARD16 red
- 2 CARD16 green
- 2 CARD16 blue
- 2 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN LookupColor
- 1 92 opcode
- 1 unused
- 2 3+(n+p)/4 request length
- 4 COLORMAP cmap
- 2 n length of name
- 2 unused
- n STRING8 name
- p unused, p=pad(n)
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 0 reply length
- 2 CARD16 exact-red
- 2 CARD16 exact-green
- 2 CARD16 exact-blue
- 2 CARD16 visual-red
- 2 CARD16 visual-green
- 2 CARD16 visual-blue
- 12 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CreateCursor
- 1 93 opcode
- 1 unused
- 2 8 request length
- 4 CURSOR cid
- 4 PIXMAP source
- 4 PIXMAP mask
- 0 None
- 2 CARD16 fore-red
- 2 CARD16 fore-green
- 2 CARD16 fore-blue
- 2 CARD16 back-red
- 2 CARD16 back-green
- 2 CARD16 back-blue
- 2 CARD16 x
- 2 CARD16 y
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CreateGlyphCursor
- 1 94 opcode
- 1 unused
- 2 8 request length
- 4 CURSOR cid
- 4 FONT source-font
- 4 FONT mask-font
- 0 None
- 2 CARD16 source-char
- 2 CARD16 mask-char
- 2 CARD16 fore-red
- 2 CARD16 fore-green
- 2 CARD16 fore-blue
- 2 CARD16 back-red
- 2 CARD16 back-green
- 2 CARD16 back-blue
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN FreeCursor
- 1 95 opcode
- 1 unused
- 2 2 request length
- 4 CURSOR cursor
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN RecolorCursor
- 1 96 opcode
- 1 unused
- 2 5 request length
- 4 CURSOR cursor
- 2 CARD16 fore-red
- 2 CARD16 fore-green
- 2 CARD16 fore-blue
- 2 CARD16 back-red
- 2 CARD16 back-green
- 2 CARD16 back-blue
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN QueryBestSize
- 1 97 opcode
- 1 class
- 0 Cursor
- 1 Tile
- 2 Stipple
- 2 3 request length
- 4 DRAWABLE drawable
- 2 CARD16 width
- 2 CARD16 height
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 0 reply length
- 2 CARD16 width
- 2 CARD16 height
- 20 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN QueryExtension
- 1 98 opcode
- 1 unused
- 2 2+(n+p)/4 request length
- 2 n length of name
- 2 unused
- n STRING8 name
- p unused, p=pad(n)
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 0 reply length
- 1 BOOL present
- 1 CARD8 major-opcode
- 1 CARD8 first-event
- 1 CARD8 first-error
- 20 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ListExtensions
- 1 99 opcode
- 1 unused
- 2 1 request length
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 CARD8 number of STRs in names
- 2 CARD16 sequence number
- 4 (n+p)/4 reply length
- 24 unused
- n LISTofSTR names
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ChangeKeyboardMapping
- 1 100 opcode
- 1 n keycode-count
- 2 2+nm request length
- 1 KEYCODE first-keycode
- 1 m keysyms-per-keycode
- 2 unused
- 4nm LISTofKEYSYM keysyms
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetKeyboardMapping
- 1 101 opcode
- 1 unused
- 2 2 request length
- 1 KEYCODE first-keycode
- 1 m count
- 2 unused
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 n keysyms-per-keycode
- 2 CARD16 sequence number
- 4 nm reply length (m = count field from the request)
- 24 unused
- 4nm LISTofKEYSYM keysyms
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ChangeKeyboardControl
- 1 102 opcode
- 1 unused
- 2 2+n request length
- 4 BITMASK value-mask (has n bits set to 1)
- #x0001 key-click-percent
- #x0002 bell-percent
- #x0004 bell-pitch
- #x0008 bell-duration
- #x0010 led
- #x0020 led-mode
- #x0040 key
- #x0080 auto-repeat-mode
- 4n LISTofVALUE value-list
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- VALUEs
- 1 INT8 key-click-percent
- 1 INT8 bell-percent
- 2 INT16 bell-pitch
- 2 INT16 bell-duration
- 1 CARD8 led
- 1 led-mode
- 0 Off
- 1 On
- 1 KEYCODE key
- 1 auto-repeat-mode
- 0 Off
- 1 On
- 2 Default
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetKeyboardControl
- 1 103 opcode
- 1 unused
- 2 1 request length
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 global-auto-repeat
- 0 Off
- 1 On
- 2 CARD16 sequence number
- 4 5 reply length
- 4 CARD32 led-mask
- 1 CARD8 key-click-percent
- 1 CARD8 bell-percent
- 2 CARD16 bell-pitch
- 2 CARD16 bell-duration
- 2 unused
- 32 LISTofCARD8 auto-repeats
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Bell
- 1 104 opcode
- 1 INT8 percent
- 2 1 request length
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ChangePointerControl
- 1 105 opcode
- 1 unused
- 2 3 request length
- 2 INT16 acceleration-numerator
- 2 INT16 acceleration-denominator
- 2 INT16 threshold
- 1 BOOL do-acceleration
- 1 BOOL do-threshold
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetPointerControl
- 1 106 opcode
- 1 unused
- 2 1 request length
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 0 reply length
- 2 CARD16 acceleration-numerator
- 2 CARD16 acceleration-denominator
- 2 CARD16 threshold
- 18 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SetScreenSaver
- 1 107 opcode
- 1 unused
- 2 3 request length
- 2 INT16 timeout
- 2 INT16 interval
- 1 prefer-blanking
- 0 No
- 1 Yes
- 2 Default
- 1 allow-exposures
- 0 No
- 1 Yes
- 2 Default
- 2 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetScreenSaver
- 1 108 opcode
- 1 unused
- 2 1 request length
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 unused
- 2 CARD16 sequence number
- 4 0 reply length
- 2 CARD16 timeout
- 2 CARD16 interval
- 1 prefer-blanking
- 0 No
- 1 Yes
- 1 allow-exposures
- 0 No
- 1 Yes
- 18 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ChangeHosts
- 1 109 opcode
- 1 mode
- 0 Insert
- 1 Delete
- 2 2+(n+p)/4 request length
- 1 family
- 0 Internet
- 1 DECnet
- 2 Chaos
- 1 unused
- 2 n length of address
- n LISTofCARD8 address
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ListHosts
- 1 110 opcode
- 1 unused
- 2 1 request length
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 mode
- 0 Disabled
- 1 Enabled
- 2 CARD16 sequence number
- 4 n/4 reply length
- 2 CARD16 number of HOSTs in hosts
- 22 unused
- n LISTofHOST hosts (n always a multiple of 4)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SetAccessControl
- 1 111 opcode
- 1 mode
- 0 Disable
- 1 Enable
- 2 1 request length
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SetCloseDownMode
- 1 112 opcode
- 1 mode
- 0 Destroy
- 1 RetainPermanent
- 2 RetainTemporary
- 2 1 request length
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN KillClient
- 1 113 opcode
- 1 unused
- 2 2 request length
- 4 CARD32 resource
- 0 AllTemporary
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN RotateProperties
- 1 114 opcode
- 1 unused
- 2 3+n request length
- 4 WINDOW window
- 2 n number of properties
- 2 INT16 delta
- 4n LISTofATOM properties
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ForceScreenSaver
- 1 115 opcode
- 1 mode
- 0 Reset
- 1 Activate
- 2 1 request length
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SetPointerMapping
- 1 116 opcode
- 1 n length of map
- 2 1+(n+p)/4 request length
- n LISTofCARD8 map
- p unused, p=pad(n)
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 status
- 0 Success
- 1 Busy
- 2 CARD16 sequence number
- 4 0 reply length
- 24 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetPointerMapping
- 1 117 opcode
- 1 unused
- 2 1 request length
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 n length of map
- 2 CARD16 sequence number
- 4 (n+p)/4 reply length
- 24 unused
- n LISTofCARD8 map
- p unused, p=pad(n)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SetModifierMapping
- 1 118 opcode
- 1 n keycodes-per-modifier
- 2 1+2n request length
- 8n LISTofKEYCODE keycodes
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 status
- 0 Success
- 1 Busy
- 2 Failed
- 2 CARD16 sequence number
- 4 0 reply length
- 24 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GetModifierMapping
- 1 119 opcode
- 1 unused
- 2 1 request length
- .De
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- =>
- 1 1 Reply
- 1 n keycodes-per-modifier
- 2 CARD16 sequence number
- 4 2n reply length
- 24 unused
- 8n LISTofKEYCODE keycodes
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN NoOperation
- 1 127 opcode
- 1 unused
- 2 1 request length
- .De
- .ps 11
- .nr PS 11
- .SH
- Events
- .LP
- .ps 9
- .nr PS 9
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN KeyPress
- 1 2 code
- 1 KEYCODE detail
- 2 CARD16 sequence number
- 4 TIMESTAMP time
- 4 WINDOW root
- 4 WINDOW event
- 4 WINDOW child
- 0 None
- 2 INT16 root-x
- 2 INT16 root-y
- 2 INT16 event-x
- 2 INT16 event-y
- 2 SETofKEYBUTMASK state
- 1 BOOL same-screen
- 1 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN KeyRelease
- 1 3 code
- 1 KEYCODE detail
- 2 CARD16 sequence number
- 4 TIMESTAMP time
- 4 WINDOW root
- 4 WINDOW event
- 4 WINDOW child
- 0 None
- 2 INT16 root-x
- 2 INT16 root-y
- 2 INT16 event-x
- 2 INT16 event-y
- 2 SETofKEYBUTMASK state
- 1 BOOL same-screen
- 1 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ButtonPress
- 1 4 code
- 1 BUTTON detail
- 2 CARD16 sequence number
- 4 TIMESTAMP time
- 4 WINDOW root
- 4 WINDOW event
- 4 WINDOW child
- 0 None
- 2 INT16 root-x
- 2 INT16 root-y
- 2 INT16 event-x
- 2 INT16 event-y
- 2 SETofKEYBUTMASK state
- 1 BOOL same-screen
- 1 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ButtonRelease
- 1 5 code
- 1 BUTTON detail
- 2 CARD16 sequence number
- 4 TIMESTAMP time
- 4 WINDOW root
- 4 WINDOW event
- 4 WINDOW child
- 0 None
- 2 INT16 root-x
- 2 INT16 root-y
- 2 INT16 event-x
- 2 INT16 event-y
- 2 SETofKEYBUTMASK state
- 1 BOOL same-screen
- 1 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN MotionNotify
- 1 6 code
- 1 detail
- 0 Normal
- 1 Hint
- 2 CARD16 sequence number
- 4 TIMESTAMP time
- 4 WINDOW root
- 4 WINDOW event
- 4 WINDOW child
- 0 None
- 2 INT16 root-x
- 2 INT16 root-y
- 2 INT16 event-x
- 2 INT16 event-y
- 2 SETofKEYBUTMASK state
- 1 BOOL same-screen
- 1 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN EnterNotify
- 1 7 code
- 1 detail
- 0 Ancestor
- 1 Virtual
- 2 Inferior
- 3 Nonlinear
- 4 NonlinearVirtual
- 2 CARD16 sequence number
- 4 TIMESTAMP time
- 4 WINDOW root
- 4 WINDOW event
- 4 WINDOW child
- 0 None
- 2 INT16 root-x
- 2 INT16 root-y
- 2 INT16 event-x
- 2 INT16 event-y
- 2 SETofKEYBUTMASK state
- 1 mode
- 0 Normal
- 1 Grab
- 2 Ungrab
- 1 same-screen, focus
- #x01 focus (1 is True, 0 is False)
- #x02 same-screen (1 is True, 0 is False)
- #xFC unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN LeaveNotify
- 1 8 code
- 1 detail
- 0 Ancestor
- 1 Virtual
- 2 Inferior
- 3 Nonlinear
- 4 NonlinearVirtual
- 2 CARD16 sequence number
- 4 TIMESTAMP time
- 4 WINDOW root
- 4 WINDOW event
- 4 WINDOW child
- 0 None
- 2 INT16 root-x
- 2 INT16 root-y
- 2 INT16 event-x
- 2 INT16 event-y
- 2 SETofKEYBUTMASK state
- 1 mode
- 0 Normal
- 1 Grab
- 2 Ungrab
- 1 same-screen, focus
- #x01 focus (1 is True, 0 is False)
- #x02 same-screen (1 is True, 0 is False)
- #xFC unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN FocusIn
- 1 9 code
- 1 detail
- 0 Ancestor
- 1 Virtual
- 2 Inferior
- 3 Nonlinear
- 4 NonlinearVirtual
- 5 Pointer
- 6 PointerRoot
- 7 None
- 2 CARD16 sequence number
- 4 WINDOW event
- 1 mode
- 0 Normal
- 1 Grab
- 2 Ungrab
- 3 WhileGrabbed
- 23 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN FocusOut
- 1 10 code
- 1 detail
- 0 Ancestor
- 1 Virtual
- 2 Inferior
- 3 Nonlinear
- 4 NonlinearVirtual
- 5 Pointer
- 6 PointerRoot
- 7 None
- 2 CARD16 sequence number
- 4 WINDOW event
- 1 mode
- 0 Normal
- 1 Grab
- 2 Ungrab
- 3 WhileGrabbed
- 23 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN KeymapNotify
- 1 11 code
- 31 LISTofCARD8 keys (byte for keycodes 0\-7 is omitted)
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN Expose
- 1 12 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW window
- 2 CARD16 x
- 2 CARD16 y
- 2 CARD16 width
- 2 CARD16 height
- 2 CARD16 count
- 14 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GraphicsExposure
- 1 13 code
- 1 unused
- 2 CARD16 sequence number
- 4 DRAWABLE drawable
- 2 CARD16 x
- 2 CARD16 y
- 2 CARD16 width
- 2 CARD16 height
- 2 CARD16 minor-opcode
- 2 CARD16 count
- 1 CARD8 major-opcode
- 11 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN NoExposure
- 1 14 code
- 1 unused
- 2 CARD16 sequence number
- 4 DRAWABLE drawable
- 2 CARD16 minor-opcode
- 1 CARD8 major-opcode
- 21 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN VisibilityNotify
- 1 15 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW window
- 1 state
- 0 Unobscured
- 1 PartiallyObscured
- 2 FullyObscured
- 23 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CreateNotify
- 1 16 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW parent
- 4 WINDOW window
- 2 INT16 x
- 2 INT16 y
- 2 CARD16 width
- 2 CARD16 height
- 2 CARD16 border-width
- 1 BOOL override-redirect
- 9 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN DestroyNotify
- 1 17 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW event
- 4 WINDOW window
- 20 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN UnmapNotify
- 1 18 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW event
- 4 WINDOW window
- 1 BOOL from-configure
- 19 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN MapNotify
- 1 19 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW event
- 4 WINDOW window
- 1 BOOL override-redirect
- 19 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN MapRequest
- 1 20 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW parent
- 4 WINDOW window
- 20 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ReparentNotify
- 1 21 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW event
- 4 WINDOW window
- 4 WINDOW parent
- 2 INT16 x
- 2 INT16 y
- 1 BOOL override-redirect
- 11 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ConfigureNotify
- 1 22 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW event
- 4 WINDOW window
- 4 WINDOW above-sibling
- 0 None
- 2 INT16 x
- 2 INT16 y
- 2 CARD16 width
- 2 CARD16 height
- 2 CARD16 border-width
- 1 BOOL override-redirect
- 5 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ConfigureRequest
- 1 23 code
- 1 stack-mode
- 0 Above
- 1 Below
- 2 TopIf
- 3 BottomIf
- 4 Opposite
- 2 CARD16 sequence number
- 4 WINDOW parent
- 4 WINDOW window
- 4 WINDOW sibling
- 0 None
- 2 INT16 x
- 2 INT16 y
- 2 CARD16 width
- 2 CARD16 height
- 2 CARD16 border-width
- 2 BITMASK value-mask
- #x0001 x
- #x0002 y
- #x0004 width
- #x0008 height
- #x0010 border-width
- #x0020 sibling
- #x0040 stack-mode
- 4 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN GravityNotify
- 1 24 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW event
- 4 WINDOW window
- 2 INT16 x
- 2 INT16 y
- 16 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ResizeRequest
- 1 25 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW window
- 2 CARD16 width
- 2 CARD16 height
- 20 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CirculateNotify
- 1 26 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW event
- 4 WINDOW window
- 4 WINDOW unused
- 1 place
- 0 Top
- 1 Bottom
- 15 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN CirculateRequest
- 1 27 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW parent
- 4 WINDOW window
- 4 unused
- 1 place
- 0 Top
- 1 Bottom
- 15 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN PropertyNotify
- 1 28 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW window
- 4 ATOM atom
- 4 TIMESTAMP time
- 1 state
- 0 NewValue
- 1 Deleted
- 15 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SelectionClear
- 1 29 code
- 1 unused
- 2 CARD16 sequence number
- 4 TIMESTAMP time
- 4 WINDOW owner
- 4 ATOM selection
- 16 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SelectionRequest
- 1 30 code
- 1 unused
- 2 CARD16 sequence number
- 4 TIMESTAMP time
- 0 CurrentTime
- 4 WINDOW owner
- 4 WINDOW requestor
- 4 ATOM selection
- 4 ATOM target
- 4 ATOM property
- 0 None
- 4 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN SelectionNotify
- 1 31 code
- 1 unused
- 2 CARD16 sequence number
- 4 TIMESTAMP time
- 0 CurrentTime
- 4 WINDOW requestor
- 4 ATOM selection
- 4 ATOM target
- 4 ATOM property
- 0 None
- 8 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ColormapNotify
- 1 32 code
- 1 unused
- 2 CARD16 sequence number
- 4 WINDOW window
- 4 COLORMAP colormap
- 0 None
- 1 BOOL new
- 1 state
- 0 Uninstalled
- 1 Installed
- 18 unused
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN ClientMessage
- 1 33 code
- 1 CARD8 format
- 2 CARD16 sequence number
- 4 WINDOW window
- 4 ATOM type
- 20 data
- .De
- .LP
- .Ds 0
- .TA .2i .5i 1.5i 2.5i
- .ta .2i .5i 1.5i 2.5i
- .R
- .PN MappingNotify
- 1 34 code
- 1 unused
- 2 CARD16 sequence number
- 1 request
- 0 Modifier
- 1 Keyboard
- 2 Pointer
- 1 KEYCODE first-keycode
- 1 CARD8 count
- 25 unused
- .De
- .ps 11
- .nr PS 11
- .bp
-