1<appendix id='protocol_encoding'>
2<title>Protocol Encoding</title>
3
4<sect1 id='Syntactic_Conventions'>
5<title>Syntactic Conventions</title>
6
7<para>
8This document uses the same syntactic conventions as the encoding of the core X
9protocol, with the following additions:
10</para>
11
12<para>
13A LISTofITEMs contains zero or more items of variable type and size. The encode
14form for a LISTofITEMs is:
15</para>
16
17<literallayout class='monospaced'>
18v     LISTofITEMs           NAME
19
20      TYPE                  MASK-EXPRESSION
21      value1                corresponding field(s)
22      ...
23      valuen                corresponding field(s)
24</literallayout>
25
26<para>
27The MASK-EXPRESSION is an expression using C-style boolean operators and fields
28of the request which specifies the bitmask used to determine whether or not a
29member of the LISTofITEMs is present. If present, TYPE specifies the
30interpretation of the resulting bitmask and the values are listed using the
31symbolic names of the members of the set. If TYPE is blank, the values are
32numeric constants.
33</para>
34
35
36<para>
37It is possible for a single bit in the MASK-EXPRESSION to control more than one
38ITEM — if the bit is set, all listed ITEMs are present. It is also possible
39for multiple bits in the MASK-EXPRESSION to control a single ITEM — if any of
40the bits associated with an ITEM are set, it is present in the LISTofITEMs.
41</para>
42
43
44<para>
45The size of a LISTofITEMS is derived from the items that are present in the
46list, so it is always given as a variable in the request description, and the
47request is followed by a section of the form:
48</para>
49
50<literallayout class='monospaced'>
51ITEMs
52encode-form
53...
54encode-form
55</literallayout>
56
57<para>
58listing an encode-form for each ITEM. The NAME in each encode-form keys to the
59fields listed as corresponding to each bit in the MASK-EXPRESSION. Items are
60not necessarily the same size, and the size specified in the encoding form is
61the size that the item occupies if it is present.
62</para>
63
64
65<para>
66Some types are of variable size. The encode-form for a list of items of a
67single type but variable size is:
68</para>
69
70<literallayout class='monospaced'>
71S0+..Ss     LISTofTYPE     name
72</literallayout>
73
74<para>
75Which indicates that the list has <emphasis>
76s</emphasis>
77 elements of variable size and that the size of the list is the sum of the
78sizes of all of the elements that make up the list. The notation Sn refers to
79the size of the <emphasis>
80n</emphasis>
81th element of the list and the notation S* refers to the size of the list as a
82whole.
83</para>
84
85
86<para>
87The definition of a type of variable size includes an expression which
88specifies the size. The size is specified as a constant plus a variable
89expression; the constant specifies the size of the fields that are always
90present and the variables which make up the variable expression are defined in
91the constant portion of the structure. For example, the following definition
92specifies a counted string with a two-byte length field preceding the string:
93</para>
94
95
96<literallayout class='monospaced'>
97TYPE             2+n+p
982     n          length
99n     STRING8    string
100p                unused,p=pad(n)
101</literallayout>
102
103<para>
104Some fields are optional. The size of an optional field has the form:
105"[<emphasis>
106expr</emphasis>
107]" where expr specifies the size of the field if it is present. An explanation
108of the conditions under which the field is present follows the name in the
109encode form:
110</para>
111
112<literallayout class='monospaced'>
1131       BOOL          more
1143                     unused
115[4]     CARD32        optData, if more==TRUE
116</literallayout>
117
118<para>
119This portion of the structure is four bytes long if more is FALSE or eight
120bytes long if more is TRUE. This notation can also be used in size expressions;
121for example, the size of the previous structure is written as "4+[4]" bytes.
122</para>
123
124
125</sect1>
126<sect1 id='appD::Common_Types'>
127<title>Common Types</title>
128<literallayout class='monospaced'>
129SETofKB_EVENTTYPE
130     #x0001                  XkbNewKeyboardNotify
131     #x0002                  XkbMapNotify
132     #x0004                  XkbStateNotify
133     #x0008                  XkbControlsNotify
134     #x0010                  XkbIndicatorStateNotify
135     #x0020                  XkbIndicatorMapNotify
136     #x0040                  XkbNamesNotify
137     #x0080                  XkbCompatMapNotify
138     #x0100                  XkbBellNotify
139     #x0200                  XkbActionMessage
140     #x0400                  XkbAccessXNotify
141     #x0800                  XkbExtensionDeviceNotify
142</literallayout>
143
144<literallayout class='monospaced'>SETofKB_NKNDETAIL
145     #x01                    XkbNKN_Keycodes
146     #x02                    XkbNKN_Geometry
147     #x04                    XkbNKN_DeviceID
148</literallayout>
149
150<literallayout class='monospaced'>SETofKB_AXNDETAIL
151     #x01                    XkbAXN_SKPress
152     #x02                    XkbAXN_SKAccept
153     #x04                    XkbAXN_SKReject
154     #x08                    XkbAXN_SKRelease
155     #x10                    XkbAXN_BKAccept
156     #x20                    XkbAXN_BKReject
157     #x40                    XkbAXN_AXKWarning
158</literallayout>
159
160<literallayout class='monospaced'>SETofKB_MAPPART
161     #x0001                  XkbKeyTypes
162     #x0002                  XkbKeySyms
163     #x0004                  XkbModifierMap
164     #x0008                  XkbExplicitComponents
165     #x0010                  XkbKeyActions
166     #x0020                  XkbKeyBehaviors
167     #x0040                  XkbVirtualMods
168     #x0080                  XkbVirtualModMap
169</literallayout>
170
171<literallayout class='monospaced'>SETofKB_STATEPART
172     #x0001                  XkbModifierState
173     #x0002                  XkbModifierBase
174     #x0004                  XkbModifierLatch
175     #x0008                  XkbModifierLock
176     #x0010                  XkbGroupState
177     #x0020                  XkbGroupBase
178     #x0040                  XkbGroupLatch
179     #x0080                  XkbGroupLock
180     #x0100                  XkbCompatState
181     #x0200                  XkbGrabMods
182     #x0400                  XkbCompatGrabMods
183     #x0800                  XkbLookupMods
184     #x1000                  XkbCompatLookupMods
185     #x2000                  XkbPointerButtons
186</literallayout>
187
188<literallayout class='monospaced'>SETofKB_BOOLCTRL
189     #x00000001                  XkbRepeatKeys
190     #x00000002                  XkbSlowKeys
191     #x00000004                  XkbBounceKeys
192     #x00000008                  XkbStickyKeys
193     #x00000010                  XkbMouseKeys
194     #x00000020                  XkbMouseKeysAccel
195     #x00000040                  XkbAccessXKeys
196     #x00000080                  XkbAccessXTimeoutMask
197     #x00000100                  XkbAccessXFeedbackMask
198     #x00000200                  XkbAudibleBellMask
199     #x00000400                  XkbOverlay1Mask
200     #x00000800                  XkbOverlay2Mask
201     #x00001000                  XkbIgnoreGroupLockMask
202</literallayout>
203
204<literallayout class='monospaced'>SETofKB_CONTROL
205     Encodings are the same as for SETofKB_BOOLCTRL, with the addition of:
206     #x080000000                  XkbGroupsWrap
207     #x100000000                  XkbInternalMods
208     #x200000000                  XkbIgnoreLockMods
209     #x400000000                  XkbPerKeyRepeat
210     #x800000000                  XkbControlsEnabled
211</literallayout>
212
213<literallayout class='monospaced'>SETofKB_AXFBOPT
214     #x0001                  XkbAX_SKPressFB
215     #x0002                  XkbAX_SKAcceptFB
216     #x0004                  XkbAX_FeatureFB
217     #x0008                  XkbAX_SlowWarnFB
218     #x0010                  XkbAX_IndicatorFB
219     #x0020                  XkbAX_StickyKeysFB
220     #x0100                  XkbAX_SKReleaseFB
221     #x0200                  XkbAX_SKRejectFB
222     #x0400                  XkbAX_BKRejectFB
223     #x0800                  XkbAX_DumbBell
224</literallayout>
225
226<literallayout class='monospaced'>SETofKB_AXSKOPT
227     #x0040                  XkbAX_TwoKeys
228     #x0080                  XkbAX_LatchToLock
229</literallayout>
230
231<literallayout class='monospaced'>SETofKB_AXOPTION
232     Encoding same as the bitwise union of :
233     SETofKB_AXFBOPT
234     SETofKB_AXSKOPT
235</literallayout>
236
237<literallayout class='monospaced'>KB_DEVICESPEC
238     0..255     input extension device id
239     #x100      XkbUseCoreKbd
240     #x200      XkbUseCorePtr
241</literallayout>
242
243<literallayout class='monospaced'>KB_LEDCLASSRESULT
244     0     KbdFeedbackClass
245     4     LedFeedbackClass
246</literallayout>
247
248<literallayout class='monospaced'>KB_LEDCLASSSPEC
249     Encoding same as KB_LEDCLASSRESULT, with the addition of:
250     #x0300     XkbDfltXIClass
251     #x0500     XkbAllXIClasses
252</literallayout>
253
254<literallayout class='monospaced'>KB_BELLCLASSRESULT
255     0     KbdFeedbackClass
256     5     BellFeedbackClass
257</literallayout>
258
259<literallayout class='monospaced'>KB_BELLCLASSSPEC
260     Encoding same as KB_BELLCLASSRESULT, with the addition of:
261     #x0300     XkbDfltXIClass
262</literallayout>
263
264<literallayout class='monospaced'>KB_IDSPEC
265     0..255     input extension feedback id
266     #x0400     XkbDfltXIId
267</literallayout>
268
269<literallayout class='monospaced'>KB_IDRESULT
270     Encoding same as KB_IDSPEC, with the addition of:
271     #xff00     XkbXINone
272</literallayout>
273
274<literallayout class='monospaced'>KB_MULTIIDSPEC
275     encodings same as KB_IDSPEC, with the addition of:
276     #x0500     XkbAllXIIds
277</literallayout>
278
279<literallayout class='monospaced'>KB_GROUP
280     0     XkbGroup1
281     1     XkbGroup2
282     2     XkbGroup3
283     3     XkbGroup4
284</literallayout>
285
286<literallayout class='monospaced'>KB_GROUPS
287     Encoding same as KB_GROUP, with the addition of:
288     254     XkbAnyGroup
289     255     XkbAllGroups
290</literallayout>
291
292<literallayout class='monospaced'>SETofKB_GROUP
293     #x01     XkbGroup1
294     #x02     XkbGroup2
295     #x04     XkbGroup3
296     #x08     XkbGroup4
297</literallayout>
298
299<literallayout class='monospaced'>SETofKB_GROUPS
300     Encoding same as SETofKB_GROUP, with the addition of:
301     #x80     XkbAnyGroup
302</literallayout>
303
304<literallayout class='monospaced'>KB_GROUPSWRAP
305     #x00     XkbWrapIntoRange
306     #x40     XkbClampIntoRange
307     #x80     XkbRedirectIntoRange
308</literallayout>
309
310<literallayout class='monospaced'>SETofKB_VMODSHIGH
311     #x80     virtual modifier 15
312     #x40     virtual modifier 14
313     #x20     virtual modifier 13
314     #x10     virtual modifier 12
315     #x08     virtual modifier 11
316     #x04     virtual modifier 10
317     #x02     virtual modifier 9
318     #x01     virtual modifier 8
319</literallayout>
320
321<literallayout class='monospaced'>SETofKB_VMODSLOW
322     #x80     virtual modifier 7
323     #x40     virtual modifier 6
324     #x20     virtual modifier 5
325     #x10     virtual modifier 4
326     #x08     virtual modifier 3
327     #x04     virtual modifier 2
328     #x02     virtual modifier 1
329     #x01     virtual modifier 0
330</literallayout>
331
332<literallayout class='monospaced'>SETofKB_VMOD
333     #x8000     virtual modifier 15
334     #x4000     virtual modifier 14
335     #x2000     virtual modifier 13
336     #x1000     virtual modifier 12
337     #x0800     virtual modifier 11
338     #x0400     virtual modifier 10
339     #x0200     virtual modifier 9
340     #x0100     virtual modifier 8
341     #x0080     virtual modifier 7
342     #x0040     virtual modifier 6
343     #x0020     virtual modifier 5
344     #x0010     virtual modifier 4
345     #x0008     virtual modifier 3
346     #x0004     virtual modifier 2
347     #x0002     virtual modifier 1
348     #x0001     virtual modifier 0
349</literallayout>
350
351<literallayout class='monospaced'>SETofKB_EXPLICIT
352     #x80     XkbExplicitVModMap
353     #x40     XkbExplicitBehavior
354     #x20     XkbExplicitAutoRepeat
355     #x10     XkbExplicitInterpret
356     #x08     XkbExplicitKeyType4
357     #x04     XkbExplicitKeyType3
358     #x02     XkbExplicitKeyType2
359     #x01     XkbExplicitKeyType1
360</literallayout>
361
362<literallayout class='monospaced'>KB_SYMINTERPMATCH
363     #x80     XkbSI_LevelOneOnly
364     #x7f     operation, one of the following:
365          0 XkbSI_NoneOf
366          1 XkbSI_AnyOfOrNone
367          2 XkbSI_AnyOf
368          3 XkbSI_AllOf
369          4 XkbSI_Exactly
370</literallayout>
371
372<literallayout class='monospaced'>SETofKB_IMFLAG
373     #x80     XkbIM_NoExplicit
374     #x40     XkbIM_NoAutomatic
375     #x20     XkbIM_LEDDrivesKB
376</literallayout>
377
378<literallayout class='monospaced'>SETofKB_IMMODSWHICH
379     #x10     XkbIM_UseCompat
380     #x08     XkbIM_UseEffective
381     #x04     XkbIM_UseLocked
382     #x02     XkbIM_UseLatched
383     #x01     XkbIM_UseBase
384</literallayout>
385
386<literallayout class='monospaced'>SETofKB_IMGROUPSWHICH
387     #x10     XkbIM_UseCompat
388     #x08     XkbIM_UseEffective
389     #x04     XkbIM_UseLocked
390     #x02     XkbIM_UseLatched
391     #x01     XkbIM_UseBase
392</literallayout>
393
394<literallayout class='monospaced'>KB_INDICATORMAP
3951     SETofKB_IMFLAGS          flags
3961     SETofKB_IMGROUPSWHICH          whichGroups
3971     SETofKB_GROUP          groups
3981     SETofKB_IMMODSWHICH          whichMods
3991     SETofKEYMASK          mods
4001     SETofKEYMASK          realMods
4012     SETofKB_VMOD          vmods
4024     SETofKB_BOOLCTRL          ctrls
403</literallayout>
404
405<literallayout class='monospaced'>SETofKB_CMDETAIL
406     #x01     XkbSymInterp
407     #x02     XkbGroupCompat
408</literallayout>
409
410<literallayout class='monospaced'>SETofKB_NAMEDETAIL
411     #x0001     XkbKeycodesName
412     #x0002     XkbGeometryName
413     #x0004     XkbSymbolsName
414     #x0008     XkbPhysSymbolsName
415     #x0010     XkbTypesName
416     #x0020     XkbCompatName
417     #x0040     XkbKeyTypeNames
418     #x0080     XkbKTLevelNames
419     #x0100     XkbIndicatorNames
420     #x0200     XkbKeyNames
421     #x0400     XkbKeyAliases
422     #x0800     XkbVirtualModNames
423     #x1000     XkbGroupNames
424     #x2000     XkbRGNames
425</literallayout>
426
427<literallayout class='monospaced'>SETofKB_GBNDETAIL
428     #x01     XkbGBN_Types
429     #x02     XkbGBN_CompatMap
430     #x04     XkbGBN_ClientSymbols
431     #x08     XkbGBN_ServerSymbols
432     #x10     XkbGBN_IndicatorMaps
433     #x20     XkbGBN_KeyNames
434     #x40     XkbGBN_Geometry
435     #x80     XkbGBN_OtherNames
436</literallayout>
437
438<literallayout class='monospaced'>SETofKB_XIEXTDEVFEATURE
439     #x02     XkbXI_ButtonActions
440     #x04     XkbXI_IndicatorNames
441     #x08     XkbXI_IndicatorMaps
442     #x10     XkbXI_IndicatorState
443</literallayout>
444
445<literallayout class='monospaced'>SETofKB_XIFEATURE
446     Encoding same as SETofKB_XIEXTDEVFEATURE, with the addition of:
447     #x01     XkbXI_Keyboards
448</literallayout>
449
450<literallayout class='monospaced'>SETofKB_XIDETAIL
451     Encoding same as SETofKB_XIFEATURE, with the addition of:
452     #x8000     XkbXI_UnsupportedFeature
453</literallayout>
454
455<literallayout class='monospaced'>SETofKB_PERCLIENTFLAG
456     #x01     XkbDetectableAutorepeat
457     #x02     XkbGrabsUseXKBState
458     #x04     XkbAutoResetControls
459     #x08     XkbLookupStateWhenGrabbed
460     #x10     XkbSendEventUsesXKBState
461</literallayout>
462
463<literallayout class='monospaced'>KB_MODDEF
4641     SETofKEYMASK          mask
4651     SETofKEYMASK          realMods
4662     SETofVMOD          vmods
467</literallayout>
468
469<literallayout class='monospaced'>KB_COUNTED_STRING8
4701     l          length
471l     STRING8          string
472</literallayout>
473
474<literallayout class='monospaced'>KB_COUNTED_STRING16
4752     l          length
476l     STRING8          string
477</literallayout>
478
479<literallayout class='monospaced'>KB_COUNTED_STRING16
480p               unused,p=pad(2+l)
481</literallayout>
482
483</sect1>
484<sect1 id='appD::Errors'>
485<title>Errors</title>
486
487<literallayout class='monospaced'>1     0          Error
4882     ??          code
4892     CARD16          sequence
4904     CARD32          error value
491     most significant 8 bits of error value have the meaning:
492     0xff     XkbErrBadDevice
493     0xfe     XkbErrBadClass
494     0xfd     XkbErrBadId
495     the least significant 8 bits of the error value contain the device id,
496class, or feedback
497     id which failed.
4982     CARD16          minor opcode
4991     CARD8          major opcode
50021               unused
501</literallayout>
502
503</sect1>
504<sect1 id='appD::Key_Actions'>
505<title>Key Actions</title>
506
507<literallayout class='monospaced'>1     0          type
5087               unused
509</literallayout>
510
511<literallayout class='monospaced'>1     1          type
5121     BITMASK          flags
513     #x01     XkbSA_ClearLocks
514     #x02     XkbSA_LatchToLock
515     #x04     XkbSA_UseModMapMods
5161     SETofKEYMASK          mask
5171     SETofKEYMASK          real modifiers
5181     SETofKB_VMODSHIGH          virtual modifiers high
5191     SETofKB_VMODSLOW          virtual modifiers low
5202               unused
521</literallayout>
522
523<literallayout class='monospaced'>1     2          type
5241     BITMASK          flags
525     #x01     XkbSA_ClearLocks
526     #x02     XkbSA_LatchToLock
527     #x04     XkbSA_UseModMapMods
5281     SETofKEYMASK          mask
5291     SETofKEYMASK          real modifiers
5301     SETofKB_VMODSHIGH          virtual modifiers high
5311     SETofKB_VMODSLOW          virtual modifiers low
5322               unused
533</literallayout>
534
535<literallayout class='monospaced'>1     3          type
5361     BITMASK          flags
537     #x01     XkbSA_LockNoLock
538     #x02     XkbSA_LockNoUnlock
539     #x04     XkbSA_UseModMapMods
5401     SETofKEYMASK          mask
5411     SETofKEYMASK          real modifiers
5421     SETofKB_VMODSHIGH          virtual modifiers high
5431     SETofKB_VMODSLOW          virtual modifiers low
5442               unused
545</literallayout>
546
547<literallayout class='monospaced'>1     4          type
5481     BITMASK          flags
549     #x01     XkbSA_ClearLocks
550     #x02     XkbSA_LatchToLock
551     #x04     XkbSA_GroupAbsolute
5521     INT8          group
5535               unused
554</literallayout>
555
556<literallayout class='monospaced'>1     5          type
5571     BITMASK          flags
558     #x01     XkbSA_ClearLocks
559     #x02     XkbSA_LatchToLock
560     #x04     XkbSA_GroupAbsolute
5611     INT8          group
5625               unused
563</literallayout>
564
565<literallayout class='monospaced'>1     6          type
5661     BITMASK          flags
567     #x01     XkbSA_LockNoLock
568     #x02     XkbSA_LockNoUnlock
569     #x04     XkbSA_GroupAbsolute
5701     INT8          group
5715               unused
572</literallayout>
573
574<literallayout class='monospaced'>1     7          type
5751     BITMASK          flags
576     #x01     XkbSA_NoAcceleration
577     #x02     XkbSA_MoveAbsoluteX
578     #x04     XkbSA_MoveAbsoluteY
5791     INT8          x high
5801     CARD8          x low
5811     INT8          y high
5821     CARD8          y low
5832               unused
584</literallayout>
585
586<literallayout class='monospaced'>1     8          type
5871     BITMASK          flags
5881     CARD8          count
5891     CARD8          button
5904               unused
591</literallayout>
592
593<literallayout class='monospaced'>1     9          type
5941     BITMASK          flags
5951               unused
5961     CARD8          button
5974               unused
598</literallayout>
599
600<literallayout class='monospaced'>1     10          type
6011     BITMASK          flags
602     #x04     XkbSA_DfltBtnAbsolute
6031     BITMASK          affect
604     #x01     XkbSA_AffectDfltBtn
6051     INT8          value
6064               unused
607</literallayout>
608
609<literallayout class='monospaced'>1     11          type
6101     BITMASK          flags
611     #x01     XkbSA_LockNoLock
612     #x02     XkbSA_LockNoUnlock
613     #x04     XkbSA_UseModMapMods (if SA_ISODfltIsGroup is 0)
614     #x04     XkbSA_GroupAbsolute (if SA_ISODfltIsGroup is 1)
615     #x80     XkbSA_ISODfltIsGroup
6161     SETofKEYMASK          mask
6171     SETofKEYMASK          real modifiers
6181     INT8          group
6191     BITMASK          affect
620     #x08     XkbSA_ISONoAffectCtrls
621     #x10     XkbSA_ISONoAffectPtr
622     #x20     XkbSA_ISONoAffectGroup
623     #x40     XkbSA_ISONoAffectMods
6241     SETofKB_VMODSHIGH          virtual modifiers high
6251     SETofKB_VMODSLOW          virtual modifiers low
626</literallayout>
627
628<literallayout class='monospaced'>1     12          type
6297               unused
630</literallayout>
631
632<literallayout class='monospaced'>1     13          type
6331     BITMASK          flags
634     #x01     XkbSA_SwitchApplication
635     #x04     XkbSA_SwitchAbsolute
6361     INT8          new screen
6375               unused (must be 0)
638</literallayout>
639
640<literallayout class='monospaced'>1     14          type
6413               unused (must be 0)
6421     BITMASK          boolean controls high
643     #x01     XkbAccessXFeedbackMask
644     #x02     XkbAudibleBellMask
645     #x04     XkbOverlay1Mask
646     #x08     XkbOverlay2Mask
647     #x10     XkbIgnoreGroupLockMask
6481     BITMASK          boolean controls low
649     #x01     XkbRepeatKeys
650     #x02     XkbSlowKeys
651     #x04     XkbBounceKeys
652     #x08     XkbStickyKeys
653     #x10     XkbMouseKeys
654     #x20     XkbMouseKeysAccel
655     #x40     XkbAccessXKeys
656     #x80     XkbAccessXTimeoutMask
6572          unused (must be 0)
658</literallayout>
659
660<literallayout class='monospaced'>1     15          type
6613               unused (must be 0)
6621     BITMASK          boolean controls high
663     #x01     XkbAccessXFeedbackMask
664     #x02     XkbAudibleBellMask
665     #x04     XkbOverlay1Mask
666     #x08     XkbOverlay2Mask
667     #x10     XkbIgnoreGroupLockMask
6681     BITMASK          boolean controls low
669     #x01     XkbRepeatKeys
670     #x02     XkbSlowKeys
671     #x04     XkbBounceKeys
672     #x08     XkbStickyKeys
673     #x10     XkbMouseKeys
674     #x20     XkbMouseKeysAccel
675     #x40     XkbAccessXKeys
676     #x80     XkbAccessXTimeoutMask
677</literallayout>
678
679<literallayout class='monospaced'>1     16          type
6802               unused (must be 0)
681</literallayout>
682
683<literallayout class='monospaced'>1     16          type
6841     BITMASK          flags
685     #x01          XkbSA_MessageOnPress
686     #x02          XkbSA_MessageOnRelease
687     #x04          XkbSA_MessageGenKeyEvent
6886     STRING          message
689</literallayout>
690
691<literallayout class='monospaced'>1     17          type
6921     KEYCODE          new key
6931     SETofKEYMASK          mask
6941     SETofKEYMASK          real modifiers
6951     SETofKB_VMODSHIGH          virtual modifiers mask high
6961     SETofKB_VMODSLOW          virtual modifiers mask low
6971     SETofKB_VMODSHIGH          virtual modifiers high
6981     SETofKB_VMODSLOW          virtual modifiers low
699</literallayout>
700
701<literallayout class='monospaced'>1     18          type
7021     0          flags
7031     CARD8          count
7041     CARD8          button
7051     CARD8          device
7063               unused (must be 0)
707</literallayout>
708
709<literallayout class='monospaced'>1     19          type
7101     BITMASK          flags
711     #x01          XkbSA_LockNoLock
712     #x02          XkbSA_LockNoUnlock
7131               unused
7141     CARD8          button
7151     CARD8          device
716</literallayout>
717
718<literallayout class='monospaced'>1     20          type
7191     CARD8          device
7201     KB_SA_VALWHAT          valuator 1 what
721     #x00          XkbSA_IgnoreVal
722     #x01          XkbSA_SetValMin
723     #x02          XkbSA_SetValCenter
724     #x03          XkbSA_SetValMax
725     #x04          XkbSA_SetValRelative
726     #x05          XkbSA_SetValAbsolute
7271     CARD8          valuator 1 index
7281     CARD8          valuator 1 value
7291     KB_SA_VALWHAT          valuator 2 what
730     Encodings as for "valuator 1 what" above
7311     CARD8          valuator 2 index
7321     CARD8          valuator 2 value
733</literallayout>
734
735</sect1>
736<sect1 id='Key_Behaviors'>
737<title>Key Behaviors</title>
738
739<literallayout class='monospaced'>1     #x00          type
7401               unused
741</literallayout>
742
743<literallayout class='monospaced'>1     #x01          type
7441               unused
745</literallayout>
746
747<literallayout class='monospaced'>1     #x02          type
7481     0..31          group
749</literallayout>
750
751<literallayout class='monospaced'>1     #x03          type
7521     KEYCODE          key
753</literallayout>
754
755<literallayout class='monospaced'>1     #x04          type
7561     CARD8          key
757</literallayout>
758
759<literallayout class='monospaced'>1     #x81          type
7601               unused
761</literallayout>
762
763<literallayout class='monospaced'>1     #x82          type
7641     0..31          group
765</literallayout>
766
767<literallayout class='monospaced'>1     #x83          type
7681     KEYCODE          key
769</literallayout>
770
771<literallayout class='monospaced'>1     #x84          type
7721     KEYCODE          key
773</literallayout>
774
775</sect1>
776<sect1 id='appD::Requests'>
777<title>Requests</title>
778
779<literallayout class='monospaced'>1     ??          opcode
7801     0          xkb-opcode
7812     2          request-length
7822     CARD16          wantedMajor
7832     CARD16          wantedMinor
784</literallayout>
785
786<literallayout class='monospaced'>1     1          Reply
7871     BOOL          supported
7882     CARD16          sequence number
7894     0           reply length
7902     1          serverMajor
7912     0          serverMinor
79220               unused
793</literallayout>
794
795
796<literallayout class='monospaced'>1     ??          opcode
7971     1          xkb-opcode
7982     4+(V+p)/4          request-length
7992     KB_DEVICESPEC           deviceSpec
8002     SETofKB_EVENTTYPE          affectWhich
8012     SETofKB_EVENTTYPE          clear
8022     SETofKB_EVENTTYPE          selectAll
8032     SETofKB_MAPDETAILS          affectMap
8042     SETofKB_MAPDETAILS          map
805V     LISTofITEMs          details
806     SETofKB_EVENTTYPE
807(affectWhich&amp;(~clear)&amp;(~selectAll))
808     XkbNewKeyboardNotify     affectNewKeyboard, newKeyboardDetails
809     XkbStateNotify     affectState, stateDetails
810     XkbControlsNotify     affectCtrls, ctrlDetails
811     XkbIndicatorStateNotify     affectIndicatorState, indicatorStateDetails
812     XkbIndicatorMapNotify     affectIndicatorMap, indicatorMapDetails
813     XkbNamesNotify     affectNames, namesDetails
814     XkbCompatMapNotify     affectCompat, compatDetails
815     XkbBellNotify     affectBell, bellDetails
816     XkbActionMessage     affectMsgDetails, msgDetails
817     XkbExtensionDeviceNotify     affectExtDev, extdevDetails
818</literallayout>
819
820<literallayout class='monospaced'>ITEMs
821p          unused, p=pad(V)
822</literallayout>
823
824<literallayout class='monospaced'>ITEMs
8252     SETofKB_NKNDETAIL          affectNewKeyboard
8262     SETofKB_NKNDETAIL          newKeyboardDetails
8272     SETofKB_STATEPART          affectState
8282     SETofKB_STATEPART          stateDetails
8294     SETofKB_CONTROL          affectCtrls
8304     SETofKB_CONTROL          ctrlDetails
8314     SETofKB_INDICATOR          affectIndicatorState
8324     SETofKB_INDICATOR          indicatorStateDetails
8334     SETofKB_INDICATOR          affectIndicatorMaps
8344     SETofKB_INDICATOR          indicatorMapDetails
8352     SETofKB_NAME_DETAIL          affectNames
8362     SETofKB_NAME_DETAIL          namesDetails
8371     SETofKB_CMDETAIL          affectCompat
8381     SETofKB_CMDETAIL          compatDetails
8391     SETofKB_BELLDETAIL          affectBell
8401     SETofKB_BELLDETAIL          bellDetails
8411     SETofKB_MSGDETAIL          affectMsgDetails
8421     SETofKB_MSGDETAIL          msgDetails
8432     SETofKB_AXNDETAIL          affectAccessX
8442     SETofKB_AXNDETAIL          accessXDetails
8452     SETofKB_XIDETAIL          affectExtDev
8462     SETofKB_XIDETAIL          extdevDetails
847</literallayout>
848
849
850<literallayout class='monospaced'>1     ??          opcode
8511     3          xkb-opcode
8522     7          request-length
8532     KB_DEVICESPEC           deviceSpec
8542     KB_BELLCLASSSPEC          bellClass
8552     KB_IDSPEC          bellID
8561     INT8          percent
8571     BOOL          forceSound
8581     BOOL          eventOnly
8591               unused
8602     INT16          pitch
8612     INT16          duration
8622               unused
8634     ATOM          name
8644     WINDOW          window
865</literallayout>
866
867<literallayout class='monospaced'>1     ??          opcode
8681     4          xkb-opcode
8692     2          request-length
8702     KB_DEVICESPEC           deviceSpec
8712               unused
872</literallayout>
873
874<literallayout class='monospaced'>1     1          Reply
8751     CARD8          deviceID
8762     CARD16          sequence number
8774     0          length
8781     SETofKEYMASK          mods
8791     SETofKEYMASK          baseMods
8801     SETofKEYMASK          latchedMods
8811     SETofKEYMASK          lockedMods
8821     KP_GROUP          group
8831     KP_GROUP          lockedGroup
8842     INT16          baseGroup
8852     INT16          latchedGroup
8861     SETofKEYMASK          compatState
8871     SETofKEYMASK          grabMods
8881     SETofKEYMASK          compatGrabMods
8891     SETofKEYMASK          lookupMods
8901     SETofKEYMASK          compatLookupMods
8911               unused
8922     SETofBUTMASK          ptrBtnState
8936               unused
894</literallayout>
895
896
897<literallayout class='monospaced'>1     ??          opcode
8981     5          xkb-opcode
8992     4          request-length
9002     KB_DEVICESPEC           deviceSpec
9011     SETofKEYMASK          affectModLocks
9021     SETofKEYMASK          modLocks
9031     BOOL          lockGroup
9041     KB_GROUP          groupLock
9051     SETofKEYMASK          affectModLatches
9061     SETofKEYMASK          modLatches
9071               unused
9081     BOOL          latchGroup
9092     INT16          groupLatch
910</literallayout>
911
912<literallayout class='monospaced'>1     ??          opcode
9131     6          xkb-opcode
9142     2          request-length
9152     KB_DEVICESPEC           deviceSpec
9162               unused
917</literallayout>
918
919<literallayout class='monospaced'>1     1          Reply
9201     CARD8          deviceID
9212     CARD16          sequence number
9224     15          length
9231     CARD8          mouseKeysDfltBtn
9241     CARD8          numGroups
9251     CARD8          groupsWrap
9261     SETofKEYMASK          internalMods.mask
9271     SETofKEYMASK          ignoreLockMods.mask
9281     SETofKEYMASK          internalMods.realMods
9291     SETofKEYMASK          ignoreLockMods.realMods
9301               unused
9312     SETofKB_VMOD          internalMods.vmods
9322     SETofKB_VMOD          ignoreLockMods.vmods
9332     CARD16          repeatDelay
9342     CARD16          repeatInterval
9352     CARD16          slowKeysDelay
9362     CARD16          debounceDelay
9372     CARD16          mouseKeysDelay
9382     CARD16          mouseKeysInterval
9392     CARD16          mouseKeysTimeToMax
9402     CARD16          mouseKeysMaxSpeed
9412     INT16          mouseKeysCurve
9422     SETofKB_AXOPTION          accessXOptions
9432     CARD16          accessXTimeout
9442     SETofKB_AXOPTION          accessXTimeoutOptionsMask
9452     SETofKB_AXOPTION          accessXTimeoutOptionValues
9462               unused
9474     SETofKB_BOOLCTRL          accessXTimeoutMask
9484     SETofKB_BOOLCTRL          accessXTimeoutValues
9494     SETofKB_BOOLCTRL          enabledControls
95032     LISTofCARD8          perKeyRepeat
951</literallayout>
952
953
954<literallayout class='monospaced'>1     ??          opcode
9551     7          xkb-opcode
9562     25          request-length
9572     KB_DEVICESPEC           deviceSpec
9581     SETofKEYMASK          affectInternalRealMods
9591     SETofKEYMASK          internalRealMods
9601     SETofKEYMASK          affectIgnoreLockRealMods
9611     SETofKEYMASK          ignoreLockRealMods
9622     SETofKB_VMOD          affectInternalVirtualMods
9632     SETofKB_VMOD          internalVirtualMods
9642     SETofKB_VMOD          affectIgnoreLockVirtualMods
9652     SETofKB_VMOD          ignoreLockVirtualMods
9661     CARD8          mouseKeysDfltBtn
9671     CARD8          groupsWrap
9682     SETofKB_AXOPTION          accessXOptions
9692               unused
9704     SETofKB_BOOLCTRL          affectEnabledControls
9714     SETofKB_BOOLCTRL          enabledControls
9724     SETofKB_CONTROL          changeControls
9732     CARD16          repeatDelay
9742     CARD16          repeatInterval
9752     CARD16          slowKeysDelay
9762     CARD16          debounceDelay
9772     CARD16          mouseKeysDelay
9782     CARD16          mouseKeysInterval
9792     CARD16          mouseKeysTimeToMax
9802     CARD16          mouseKeysMaxSpeed
9812     INT16          mouseKeysCurve
9822     CARD16          accessXTimeout
9834     SETofKB_BOOLCTRL          accessXTimeoutMask
9844     SETofKB_BOOLCTRL          accessXTimeoutValues
9852     SETofKB_AXOPTION          accessXTimeoutOptionsMask
9862     SETofKB_AXOPTION          accessXTimeoutOptionsValues
98732     LISTofCARD8          perKeyRepeat
988</literallayout>
989
990<literallayout class='monospaced'>1     CARD8          opcode
9911     8          xkb-opcode
9922     7          request-length
9932     KB_DEVICESPEC           deviceSpec
9942     SETofKB_MAPPART          full
9952     SETofKB_MAPPART          partial
9961     CARD8          firstType
9971     CARD8          nTypes
9981     KEYCODE          firstKeySym
9991     CARD8          nKeySyms
10001     KEYCODE          firstKeyAction
10011     CARD8          nKeyActions
10021     KEYCODE          firstKeyBehavior
10031     CARD8          nKeyBehaviors
10042     SETofKB_VMOD          virtualMods
10051     KEYCODE          firstKeyExplicit
10061     CARD8          nKeyExplicit
10071     KEYCODE          firstModMapKey
10081     CARD8          nModMapKeys
10091     KEYCODE          firstVModMapKey
10101     CARD8          nVModMapKeys
10112               unused
1012</literallayout>
1013
1014<literallayout class='monospaced'>1     1          Reply
10151     CARD8          deviceID
10162     CARD16          sequence number
10174     2+(I/4)          length
10182               unused
10191     KEYCODE          minKeyCode
10201     KEYCODE          maxKeyCode
10212     SETofKB_MAPPART          present
10221     CARD8          firstType
10231     t          nTypes
10241     CARD8          totalTypes
10251     KEYCODE          firstKeySym
10262     S          totalSyms
10271     s          nKeySyms
10281     KEYCODE          firstKeyAction
10292     A          totalActions
10301     a          nKeyActions
10311     KEYCODE          firstKeyBehavior
10321     b          nKeyBehaviors
10331     B          totalKeyBehaviors
10341     KEYCODE          firstKeyExplicit
10351     e          nKeyExplicit
10361     E          totalKeyExplicit
10371     KEYCODE          firstModMapKey
10381     m          nModMapKeys
10391     M          totalModMapKeys
10401     KEYCODE          firstVModMapKey
10411     0          nVModMapKeys
10421     V          totalVModMapKeys
10431               unused
10442     SETofKB_VMOD          virtualMods (has v bits set to 1)
1045I     LISTofITEMs          map
1046     SETofKB_MAPPART               (present)
1047     XkbKeyTypes     typesRtrn
1048     XkbKeySyms     symsRtrn
1049     XkbKeyActions     actsRtrn.count, actsRtrn.acts
1050     XkbKeyBehaviors     behaviorsRtrn
1051     XkbVirtualMods     vmodsRtrn
1052     XkbExplicitComponents     explicitRtrn
1053     XkbModifierMap     modmapRtrn
1054     XkbVirtualModMap     vmodMapRtrn
1055</literallayout>
1056
1057<literallayout class='monospaced'>ITEMs
1058T1+..Tt     LISTofKB_KEYTYPE          typesRtrn
10598s+4S     LISTofKB_KEYSYMMAP          symsRtrn
1060a     LISTofCARD8          actsRtrn.count
1061p               unused,p=pad(a)
10628A     LISTofKB_ACTION          actsRtrn.acts
10634B     LISTofKB_SETBEHAVIOR          behaviorsRtrn
1064v     LISTofSETofKEYMASK          vmodsRtrn
1065p               unused, p=pad(v)
10662E     LISTofKB_SETEXPLICIT          explicitRtrn
1067p               unused,p=pad(2E)
10682M     LISTofKB_KEYMODMAP          modmapRtrn
1069p               unused, p=pad(2M)
10704V     LISTofKB_KEYVMODMAP          vmodMapRtrn
1071</literallayout>
1072
1073<literallayout class='monospaced'>KB_KEYTYPE     8+8m+[4m]
10741     SETofKEYMASK          mods.mask
10751     SETofKEYMASK          mods.mods
10762     SETofKB_VMOD          mods.vmods
10771     CARD8          numLevels
10781     m          nMapEntries
10791     BOOL          hasPreserve
10801               unused
10818m     LISTofKB_KTMAPENTRY          map
1082[4m]     LISTofKB_MODDEF          preserve
1083</literallayout>
1084
1085<literallayout class='monospaced'>KB_KTMAPENTRY
10861     BOOL          active
10871     SETofKEYMASK          mods.mask
10881     CARD8          level
10891     SETofKEYMASK          mods.mods
10902     SETofKB_VMOD          mods.vmods
10912               unused
1092</literallayout>
1093
1094<literallayout class='monospaced'>KB_KEYSYMMAP     8+4n
10954     LISTofCARD8          ktIndex
10961     CARD8          groupInfo
10971     CARD8          width
10982     n          nSyms
10994n     LISTofKEYSYM          syms
1100</literallayout>
1101
1102<literallayout class='monospaced'>KB_SETBEHAVIOR
11031     KEYCODE          keycode
11042     KB_BEHAVIOR          behavior
11051               unused
1106</literallayout>
1107
1108<literallayout class='monospaced'>KB_SETEXPLICIT
11091     KEYCODE          keycode
11101     SETofKB_EXPLICIT          explicit
1111</literallayout>
1112
1113<literallayout class='monospaced'>KB_KEYMODMAP
11141     KEYCODE          keycode
11151     SETofKB_KEYMASK          mods
1116</literallayout>
1117
1118<literallayout class='monospaced'>KB_KEYVMODMAP
11191     KEYCODE          keycode
11201               unused
11212     SETofKB_VMOD          vmods
1122</literallayout>
1123
1124
1125<literallayout class='monospaced'>1     CARD8          opcode
11261     9          xkb-opcode
11272     9+(I/4)          request-length
11282     KB_DEVICESPEC           deviceSpec
11292     SETofKB_MAPPART          present
11302     SETofKB_SETMAPFLAGS          flags
1131     #0001     SetMapResizeTypes
1132     #0002     SetMapRecomputeActions
11331     KEYCODE          minKeyCode
11341     KEYCODE          maxKeyCode
11351     CARD8          firstType
11361     t          nTypes
11371     KEYCODE          firstKeySym
11381     s          nKeySyms
11392     S          totalSyms
11401     KEYCODE          firstKeyAction
11411     a          nKeyActions
11422     A          totalActions
11431     KEYCODE          firstKeyBehavior
11441     b          nKeyBehaviors
11451     B          totalKeyBehaviors
11461     KEYCODE          firstKeyExplicit
11471     e          nKeyExplicit
11481     E          totalKeyExplicit
11491     KEYCODE          firstModMapKey
11501     m          nModMapKeys
11511     M          totalModMapKeys
11521     KEYCODE          firstVModMapKey
11531     v          nVModMapKeys
11541     V          totalVModMapKeys
11552     SETofKB_VMOD          virtualMods (has n bits set to 1)
1156I     LISTofITEMs          values
1157     SETofKB_MAPPART          (present)
1158     XkbKeyTypes     types
1159     XkbKeySymbols     syms
1160     XkbKeyActions     actions.count,actions.actions
1161     XkbKeyBehaviors     behaviors
1162     XkbVirtualMods     vmods
1163     XkbExplicitComponents     explicit
1164     XkbModifierMap     modmap
1165     XkbVirtualModMap     vmodmap
1166</literallayout>
1167
1168<literallayout class='monospaced'>ITEMs
1169T0+..Tt     LISTofKB_SETKEYTYPE          types
11708s+4S     LISTofKB_KEYSYMMAP          syms
1171a     LISTofCARD8          actions.count
1172p               unused,p=pad(a)
11738A     LISTofKB_ACTION          actions.actions
11744B     LISTofKB_SETBEHAVIOR          behaviors
1175v     LISTofSETofKEYMASK          vmods
1176p               unused, p=pad(v)
11772E     LISTofKB_SETEXPLICIT          explicit
1178p               unused,p=pad(2E)
11792M     LISTofKB_KEYMODMAP          modmap
1180P               unused, p=pad(2M)
11814V     LISTofKB_KEYVMODMAP          vmodmap
1182</literallayout>
1183
1184<literallayout class='monospaced'>KB_SETKEYTYPE     8+4m+[4m]
11851     SETofKEYMASK          mask
11861     SETofKEYMASK          realMods
11872     SETofKB_VMOD          virtualMods
11881     CARD8          numLevels
11891     m          nMapEntries
11901     BOOL          preserve
11911               unused
11924m     LISTofKB_KTSETMAPENTRY          entries
1193[4m]     LISTofKB_MODDEF          preserveEntries (if preserve==TRUE)
1194</literallayout>
1195
1196<literallayout class='monospaced'>KB_KTSETMAPENTRY
11971     CARD8          level
11981     SETofKEYMASK          realMods
11992     SETofKB_VMOD          virtualMods
1200</literallayout>
1201
1202
1203<literallayout class='monospaced'>1     ??          opcode
12041     10          xkb-opcode
12052     3          request-length
12062     KB_DEVICESPEC           deviceSpec
12071     SETofKB_GROUP          groups
12081     BOOL          getAllSI
12092     CARD16          firstSI
12102     CARD16          nSI
1211</literallayout>
1212
1213<literallayout class='monospaced'>1     1          Reply
12141     CARD8          deviceID
12152     CARD16          sequence number
12164     (16n+4g)/4          length
12171     SETofKB_GROUP          groupsRtrn (has g bits set to 1)
12181               unused
12192     CARD16          firstSIRtrn
12202     n          nSIRtrn
12212     CARD16          nTotalSI
122216               unused
122316n     LISTofKB_SYMINTERPRET          siRtrn
12244g     LISTofKB_MODDEF          groupRtrn
1225</literallayout>
1226
1227
1228<literallayout class='monospaced'>1     ??          opcode
12291     11          xkb-opcode
12302     4+(16n+4g)          request-length
12312     KB_DEVICESPEC           deviceSpec
12321               unused
12331     BOOL          recomputeActions
12341     BOOL          truncateSI
12351     SETofKB_GROUP          groups (has g bits set to 1)
12362     CARD16          firstSI
12372     n          nSI
12382               unused
123916n     LISTofKB_SYMINTERPRET          si
12404g     LISTofKB_MODDEF          groupMaps
1241</literallayout>
1242
1243<literallayout class='monospaced'>1     ??          opcode
12441     12          xkb-opcode
12452     2          request-length
12462     KB_DEVICESPEC           deviceSpec
1247</literallayout>
1248
1249<literallayout class='monospaced'>ITEMs
12502               unused
1251</literallayout>
1252
1253<literallayout class='monospaced'>1     1          Reply
12541     CARD8          deviceID
12552     CARD16          sequence number
12564     0          length
12574     SETofKB_INDICATOR          state
125820               unused
1259</literallayout>
1260
1261
1262<literallayout class='monospaced'>1     ??          opcode
12631     13          xkb-opcode
12642     3          request-length
12652     KB_DEVICESPEC           deviceSpec
12662               unused
12674     SETofKB_INDICATOR          which
1268</literallayout>
1269
1270<literallayout class='monospaced'>1     1          Reply
12711     CARD8          deviceID
12722     CARD16          sequence number
12734     12n/4          length
12744     SETofKB_INDICATOR          which (has n bits set to 1)
12754     SETofKB_INDICATOR          realIndicators
12761     n          nIndicators
127715               unused
127812n     LISTofKB_INDICATORMAP          maps
1279</literallayout>
1280
1281
1282<literallayout class='monospaced'>1     ??          opcode
12831     14          xkb-opcode
12842     3+3n          request-length
12852     KB_DEVICESPEC           deviceSpec
12862               unused
12874     SETofKB_INDICATOR          which (has n bits set to 1)
128812n     LISTofKB_INDICATORMAP          maps
1289</literallayout>
1290
1291<literallayout class='monospaced'>1     CARD8          opcode
12921     15          xkb-opcode
12932     4          request-length
12942     KB_DEVICESPEC           deviceSpec
12952     KB_LEDCLASSSPEC          ledClass
12962     KB_IDSPEC          ledID
12972               unused
12984     ATOM          indicator
1299</literallayout>
1300
1301<literallayout class='monospaced'>1     1          Reply
13021     CARD8          deviceID
13032     CARD16          sequence number
13044     0          length
13054     ATOM          indicator
13061     BOOL          found
13071     BOOL          on
13081     BOOL          realIndicator
13091     KB_INDICATOR          ndx
13101     SETofKB_IMFLAGS          map.flags
13111     SETofKB_IMGROUPSWHICH          map.whichGroups
13121     SETofKB_GROUPS          map.groups
13131     SETofKB_IMMODSWHICH          map.whichMods
13141     SETofKEYMASK          map.mods
13151     SETofKEYMASK          map.realMods
13162     SETofKB_VMOD          map.vmods
13174     SETofKB_BOOLCTRL          map.ctrls
13181     BOOL          supported
13193               unused
1320</literallayout>
1321
1322
1323<literallayout class='monospaced'>1     ??          opcode
13241     16          xkb-opcode
13252     8          request-length
13262     KB_DEVICESPEC           deviceSpec
13272     KB_LEDCLASSSPEC          ledClass
13282     KB_IDSPEC          ledID
13292               unused
13304     ATOM          indicator
13311     BOOL          setState
13321     BOOL          on
13331     BOOL          setMap
13341     BOOL          createMap
13351               unused
13361     SETofKB_IMFLAGS          map.flags
13371     SETofKB_IMGROUPSWHICH          map.whichGroups
13381     SETofKB_GROUP          map.groups
13391     SETofKB_IMMODSWHICH          map.whichMods
13401     SETofKEYMASK          map.realMods
13412     SETofKB_VMOD          map.vmods
13424     SETofKB_BOOLCTRL          map.ctrls
1343</literallayout>
1344
1345<literallayout class='monospaced'>1     CARD8          opcode
13461     17          xkb-opcode
13472     3          request-length
13482     KB_DEVICESPEC           deviceSpec
13492               unused
13504     SETofKB_NAMEDETAIL          which
1351</literallayout>
1352
1353<literallayout class='monospaced'>1     1          Reply
13541     CARD8          deviceID
13552     CARD16          sequence number
13564     V/4          length
13574     SETofKB_NAMEDETAIL          which
13581     KEYCODE          minKeyCode
13591     KEYCODE          maxKeyCode
13601     t          nTypes
13611     SETofKB_GROUP          groupNames (has g bits set to 1)
13622     SETofKB_VMOD          virtualMods (has v bits set to 1)
13631     KEYCODE          firstKey
13641     k          nKeys
13654     SETofKB_INDICATOR          indicators (has i bits set to 1)
13661     r          nRadioGroups
13671     a          nKeyAliases
13682     l          nKTLevels
13694               unused
1370V     LISTofITEMs          valueList
1371     SETofKB_NAMEDETAIL          (which)
1372     XkbKeycodesName     keycodesName
1373     XkbGeometryName     geometryName
1374     XkbSymbolsName     symbolsName
1375     XkbPhySymbolsName     physSymbolsName
1376     XkbTypesName     typesName
1377     XkbCompatName     compatName
1378     XkbKeyTypeNames     typeNames
1379     XkbKTLevelNames     nLevelsPerType, ktLevelNames
1380     XkbIndicatorNames     indicatorNames
1381     XkbVirtualModNames     virtualModNames
1382     XkbGroupNames     groupNames
1383     XkbKeyNames     keyNames
1384     XkbKeyAliases     keyAliases
1385     XkbRGNames     radioGroupNames
1386</literallayout>
1387
1388<literallayout class='monospaced'>ITEMs
13894     ATOM          keycodesName
13904     ATOM          geometryName
13914     ATOM          symbolsName
13924     ATOM          physSymbolsName
13934     ATOM          typesName
13944     ATOM          compatName
13954t     LISTofATOM          typeNames
1396l     LISTofCARD8          nLevelsPerType, sum of all elements=L
1397p               unused, p=pad(l)
13984L     LISTofATOM          ktLevelNames
13994i     LISTofATOM          indicatorNames
14004v     LISTofATOM          virtualModNames
14014g     LISTofATOM          groupNames
14024k     LISTofKB_KEYNAME          keyNames
14038a     LISTofKB_KEYALIAS          keyAliases
14044r     LISTofATOM          radioGroupNames
1405</literallayout>
1406
1407
1408<literallayout class='monospaced'>1     CARD8          opcode
14091     18          xkb-opcode
14102     7+(V/4)          request-length
14112     KB_DEVICESPEC           deviceSpec
14122     SETofKB_VMOD          virtualMods
14134     SETofKB_NAMEDETAIL          which
14141     CARD8          firstType
14151     t          nTypes
14161     CARD8          firstKTLevel
14171     l          nKTLevels
14184     SETofKB_INDICATOR          indicators (has i bits set to 1)
14191     SETofKB_GROUP          groupNames (has g bits set to 1)
14201     r          nRadioGroups
14211     KEYCODE          firstKey
14221     k          nKeys
14231     a          nKeyAliases
14241               unused
14252     L          totalKTLevelNames
1426V     LISTofITEMs          values
1427     SETofKB_NAMEDETAIL          (which)
1428     XkbKeycodesName     keycodesName
1429     XkbGeometryName     geometryName
1430     XkbSymbolsName     symbolsName
1431     XkbPhySymbolsName     physSymbolsName
1432     XkbTypesName     typesName
1433     XkbCompatName     compatName
1434     XkbKeyTypeNames     typeNames
1435     XkbKTLevelNames     nLevelsPerType, ktLevelNames
1436     XkbIndicatorNames     indicatorNames
1437     XkbVirtualModNames     virtualModNames
1438     XkbGroupNames     groupNames
1439     XkbKeyNames     keyNames
1440     XkbKeyAliases     keyAliases
1441     XkbRGNames     radioGroupNames
1442</literallayout>
1443
1444<literallayout class='monospaced'>ITEMs
14454     ATOM          keycodesName
14464     ATOM          geometryName
14474     ATOM          symbolsName
14484     ATOM          physSymbolsName
14494     ATOM          typesName
14504     ATOM          compatName
14514t     LISTofATOM          typeNames
1452l     LISTofCARD8          nLevelsPerType
1453p               unused, p=pad(l)
14544L     LISTofATOM          ktLevelNames
14554i     LISTofATOM          indicatorNames
14564v     LISTofATOM          virtualModNames
14574g     LISTofATOM          groupNames
14584k     LISTofKB_KEYNAME          keyNames
14598a     LISTofKB_KEYALIAS          keyAliases
14604r     LISTofATOM          radioGroupNames
1461</literallayout>
1462
1463
1464<literallayout class='monospaced'>1     CARD8          opcode
14651     19          xkb-opcode
14662     3          request-length
14672     KB_DEVICESPEC           deviceSpec
14682               unused
14694     ATOM          name
1470</literallayout>
1471
1472<literallayout class='monospaced'>1     1          Reply
14731     CARD8          deviceID
14742     CARD16          sequence number
14754     (f+8p+C*+H*+S*+D*+A*)/4          length
14764     ATOM          name
14771     BOOL          found
14781               unused
14792     CARD16          widthMM
14802     CARD16          heightMM
14812     p          nProperties
14822     c          nColors
14832     h          nShapes
14842     s          nSections
14852     d          nDoodads
14862     a          nKeyAliases
14871     CARD8          baseColorNdx
14881     CARD8          labelColorNdx
1489f     KB_COUNTED_STRING16          labelFont
14908p     LISTofKB_PROPERTY          properties
1491C0+..Cc     LISTofKB_COUNTED_STRING16          colors
1492H0+..Hh     LISTofKB_SHAPE          shapes
1493S0+..Ss     LISTofKB_SECTION          sections
1494D0+..Dd     LISTofKB_DOODAD          doodads
1495A0+..Aa     LISTofKB_KEYALIAS          keyAliases
1496</literallayout>
1497
1498<literallayout class='monospaced'>KB_PROPERTY     4+n+v
14992     n          nameLength
1500n     STRING8          name
15012     v          valueLength
1502v     STRING8          value
1503</literallayout>
1504
1505<literallayout class='monospaced'>KB_SHAPE     8+O*
15064     ATOM          name
15071     o          nOutlines
15081     CARD8          primaryNdx
15091     CARD8          approxNdx
15101               unused
1511O0+..Oo     LISTofKB_OUTLINE          outlines
1512</literallayout>
1513
1514<literallayout class='monospaced'>KB_OUTLINE     4+4p
15151     p          nPoints
15161     CARD8          cornerRadius
15172               unused
15184p     LISTofKB_POINT          points
1519</literallayout>
1520
1521<literallayout class='monospaced'>KB_POINT
15222     INT16          x
15232     INT16          y
1524</literallayout>
1525
1526<literallayout class='monospaced'>KB_SECTION     20+R*+D*+O*
15274     ATOM          name
15282     INT16          top
15292     INT16          left
15302     CARD16          width
15312     CARD16          height
15322     INT16          angle
15331     CARD8          priority
15341     r          nRows
15351     d          nDoodads
15361     o          nOverlays
15372               unused
1538R0+..Rr     LISTofKB_ROW          rows
1539D0+..Dd     LISTofKB_DOODAD          doodads
1540O0+..Oo     LISTofKB_OVERLAY          overlays
1541</literallayout>
1542
1543<literallayout class='monospaced'>KB_ROW     8+8k
15442     INT16          top
15452     INT16          left
15461     k          nKeys
15471     BOOL          vertical
15482               unused
15498k     LISTofKB_KEY          keys
1550</literallayout>
1551
1552<literallayout class='monospaced'>KB_KEY
15534     STRING8          name
15542     INT16          gap
15551     CARD8          shapeNdx
15561     CARD8          colorNdx
1557</literallayout>
1558
1559<literallayout class='monospaced'>KB_OVERLAY     8+R*
15604     ATOM          name
15611     r          nRows
15623               unused
1563R0+..Rr     LISTofKB_OVERLAYROW          rows
1564</literallayout>
1565
1566<literallayout class='monospaced'>KB_OVERLAYROW     4+8k
15671     CARD8          rowUnder
15681     k          nKeys
15692               unused
15708k     LISTofKB_OVERLAYKEY          keys
1571</literallayout>
1572
1573<literallayout class='monospaced'>KB_OVERLAYKEY
15744     STRING8          over
15754     STRING8          under
1576</literallayout>
1577
1578<literallayout class='monospaced'>KB_SHAPEDOODAD
15794     ATOM          name
15801     CARD8          type
1581</literallayout>
1582
1583<literallayout class='monospaced'>KB_SHAPEDOODAD
1584     #1     XkbOutlineDoodad
1585     #2     XkbSolidDoodad
15861     CARD8          priority
15872     INT16          top
15882     INT16          left
15892     INT16          angle
15901     CARD8          colorNdx
15911     CARD8          shapeNdx
15926               unused
1593</literallayout>
1594
1595<literallayout class='monospaced'>KB_TEXTDOODAD     20+t+f
15964     ATOM          name
15971     CARD8          type
1598     #3     XkbTextDoodad
15991     CARD8          priority
16002     INT16          top
16012     INT16          left
16022     INT16          angle
16032     CARD16          width
16042     CARD16          height
16051     CARD8          colorNdx
16063               unused
1607t     KB_COUNTED_STRING16          text
1608f     KB_COUNTED_STRING16          font
1609</literallayout>
1610
1611<literallayout class='monospaced'>KB_INDICATORDOODAD
16124     ATOM          name
16131     CARD8          type
1614     #4     XkbIndicatorDoodad
16151     CARD8          priority
16162     INT16          top
16172     INT16          left
16182     INT16          angle
16191     CARD8          shapeNdx
16201     CARD8          onColorNdx
16211     CARD8          offColorNdx
16225               unused
1623</literallayout>
1624
1625<literallayout class='monospaced'>KB_LOGODOODAD     20+n
16264     ATOM          name
16271     CARD8          type
1628     #5     XkbLogoDoodad
16291     CARD8          priority
16302     INT16          top
16312     INT16          left
16322     INT16          angle
16331     CARD8          colorNdx
16341     CARD8          shapeNdx
16356               unused
1636n     KB_COUNTED_STRING16          logoName
1637</literallayout>
1638
1639<literallayout class='monospaced'>KB_DOODAD:
1640     KB_SHAPEDOODAD, or KB_TEXTDOODAD, or
1641     KB_INDICATORDOODAD, or KB_LOGODOODAD
1642</literallayout>
1643
1644
1645<literallayout class='monospaced'>1     CARD8          opcode
16461     20          xkb-opcode
16472     7+(f+8p+C*+H*+S*+D*+A*)/4          request-length
16482     KB_DEVICESPEC           deviceSpec
16491     h          nShapes
16501     s          nSections
16514     ATOM          name
16522     CARD16          widthMM
16532     CARD16          heightMM
16542     p          nProperties
16552     c          nColors
16562     d          nDoodads
16572     a          nKeyAliases
16581     CARD8          baseColorNdx
16591     CARD8          labelColorNdx
16602               unused
1661f     KB_COUNTED_STRING16          labelFont
16628p     LISTofKB_PROPERTY          properties
1663C0+..Cc     LISTofKB_COUNTED_STRING16          colors
1664H0+..Hh     LISTofKB_SHAPE          shapes
1665S0+..Ss     LISTofKB_SECTION          sections
1666D0+..Dd     LISTofKB_DOODAD          doodads
1667A0+..Aa     LISTofKB_KEYALIAS          keyAliases
1668</literallayout>
1669
1670<literallayout class='monospaced'>1     CARD8          opcode
16711     21          xkb-opcode
16722     7          request-length
16732     KB_DEVICESPEC          deviceSpec
16742               unused
16754     SETofKB_PERCLIENTFLAG          change
16764     SETofKB_PERCLIENTFLAG          value
16774     SETofKB_BOOLCTRL          ctrlsToChange
16784     SETofKB_BOOLCTRL          autoCtrls
16794     SETofKB_BOOLCTRL          autoCtrlValues
1680</literallayout>
1681
1682<literallayout class='monospaced'>1     1          Reply
16831     CARD8          deviceID
16842     CARD16          sequence number
16854     0          length
16864     SETofKB_PERCLIENTFLAG          supported
16874     SETofKB_PERCLIENTFLAG          value
16884     SETofKB_BOOLCTRL          autoCtrls
16894     SETofKB_BOOLCTRL          autoCtrlValues
16908               unused
1691</literallayout>
1692
1693
1694<literallayout class='monospaced'>1     CARD8          opcode
16951     22          xkb-opcode
16962     2+(6+m+k+t+c+s+g+p)/4          request-length
16972     KB_DEVICESPEC           deviceSpec
16982     CARD16          maxNames
16991     m          keymapsSpecLen
1700m     STRING          keymapsSpec
17011     k          keycodesSpecLen
1702k     STRING          keycodesSpec
17031     t          typesSpecLen
1704t     STRING          typesSpec
17051     c          compatMapSpecLen
1706c     STRING          compatMapSpec
17071     s          symbolsSpecLen
1708s     STRING          symbolsSpec
17091     g          geometrySpecLen
1710g     STRING          geometrySpec
1711p               unused,p=pad(6+m+k+t+c+s+g)
1712</literallayout>
1713
1714<literallayout class='monospaced'>1     1          Reply
17151     CARD8          deviceID
17162     CARD16          sequence number
17174     (M*+K*+T*+C*+S*+G*+p)/4          length
17182     m          nKeymaps
17192     k          nKeycodes
17202     t          nTypes
17212     c          nCompatMaps
17222     s          nSymbols
17232     g          nGeometries
17242     CARD16          extra
172510               unused
1726M0+..Mm     LISTofKB_LISTING          keymaps
1727K0+..Kk     LISTofKB_LISTING          keycodes
1728T0+..Tt     LISTofKB_LISTING          types
1729C0+..Cc     LISTofKB_LISTING          compatMaps
1730S0+..Ss     LISTofKB_LISTING          symbols
1731G0+..Gg     LISTofKB_LISTING          geometries
1732p               unused,p=pad(M*+K*+T*+C*+S*+G*)
1733</literallayout>
1734
1735<literallayout class='monospaced'>KB_LISTING     4+n+p
17362     CARD16          flags
17372     n          length
1738n     STRING8          string
1739p               unused,p=pad(n) to a 2-byte boundary
1740</literallayout>
1741
1742
1743<literallayout class='monospaced'>1     CARD8          opcode
17441     23          xkb-opcode
17452     3+(6+m+k+t+c+s+g+p)/4          request-length
17462     KB_DEVICESPEC           deviceSpec
17472     SETofKB_GBNDETAILMASK          need
17482     SETofKB_GBNDETAILMASK          want
17491     BOOL          load
17501               unused
17511     m          keymapsSpecLen
1752m     STRING8          keymapsSpec
17531     k          keycodesSpecLen
1754k     STRING8          keycodesSpec
17551     t          typesSpecLen
1756t     STRING8          typesSpec
17571     c          compatMapSpecLen
1758c     STRING8          compatMapSpec
17591     s          symbolsSpecLen
1760s     STRING8          symbolsSpec
17611     g          geometrySpecLen
1762g     STRING8          geometrySpec
1763p               unused,p=pad(6+m+k+t+c+s+g)
1764</literallayout>
1765
1766<literallayout class='monospaced'>1     1          Reply
17671     CARD8          deviceID
17682     CARD16          sequence number
17694     V/4          length
17701     KEYCODE          minKeyCode
17711     KEYCODE          maxKeyCode
17721     BOOL          loaded
17731     BOOL          newKeyboard
17742     SETofKB_GBNDETAILMASK          found
17752     SETofKB_GBNDETAILMASK          reported
177616               unused
1777V     LISTofITEMs          replies
1778     SETofKB_GBNDETAILMASK          (reported)
1779     XkbGBN_Types     map
1780     XkbGBN_CompatMap     compat
1781     XkbGBN_ClientSymbols     map
1782     XkbGBN_ServerSymbols     map
1783     XkbGBN_IndicatorMap     indicators
1784     XkbGBN_KeyNames     names
1785     XkbGBN_OtherNames     names
1786     XkbGBN_Geometry     geometry
1787</literallayout>
1788
1789<literallayout class='monospaced'>ITEMs
1790M     XkbGetMap reply          map
1791C     XkbGetCompatMap reply          compat
1792I     XkbGetIndicatorMap reply          indicators
1793N     XkbGetNames reply          names
1794G     XkbGetGeometry reply          geometry
1795</literallayout>
1796
1797
1798<literallayout class='monospaced'>1     CARD8          opcode
17991     24          xkb-opcode
18002     4          request-length
18012     KB_DEVICESPEC           deviceSpec
18022     SETofKB_DEVFEATURE          wanted
18031     BOOL          allButtons
18041     CARD8          firstButton
18051     CARD8          nButtons
18061               unused
18072     KB_LEDCLASSSPEC          ledClass
18082     KB_IDSPEC          ledID
1809</literallayout>
1810
1811<literallayout class='monospaced'>1     1          Reply
18121     CARD8          deviceID
18132     CARD16          sequence number
18144     (2+n+p+8b+L*)/4          length
18152     SETofKB_DEVFEATURE          present
18162     SETofKB_FEATURE          supported
18172     SETofKB_FEATURE          unsupported
18182     l          nDeviceLedFBs
18191     CARD8          firstBtnWanted
18201     CARD8          nBtnsWanted
18211     CARD8          firstBtnRtrn
18221     b          nBtnsRtrn
18231     CARD8          totalBtns
18241     BOOL          hasOwnState
18252     SETofKB_IDRESULT          dfltKbdFB
18262     SETofKB_IDRESULT          dfltLedFB
18272               unused
18284     ATOM          devType
18292     n          nameLen
1830n     STRING8          name
1831p               unused,p=pad(2+n)
18328b     LISTofKB_ACTION          btnActions
1833L0+..Ll     LISTofKB_DEVICELEDINFO          leds
1834</literallayout>
1835
1836<literallayout class='monospaced'>KB_DEVICELEDINFO     20+4n+12m
18372     KB_LEDCLASSSPEC          ledClass
18382     KB_IDSPEC          ledID
18394     SETofKB_INDICATOR          namesPresent (has n bits set to 1)
18404     SETofKB_INDICATOR          mapsPresent (has m bits set to 1)
18414     SETofKB_INDICATOR          physIndicators
18424     SETofKB_INDICATOR          state
18434n     LISTofATOM          names
184412m     LISTofKB_INDICATORMAP          maps
1845</literallayout>
1846
1847
1848<literallayout class='monospaced'>1     ??          opcode
18491     25          xkb-opcode
18502     3+(8b+L*)/4          request-length
18512     KB_DEVICESPEC           deviceSpec
18521     CARD8          firstBtn
18531     b          nBtns
18542     SETofKB_DEVFEATURE          change
18552     l          nDeviceLedFBs
18568b     LISTofKB_ACTION          btnActions
1857L0+..Ll     LISTofKB_DEVICELEDINFO          leds
1858     Encoding of KB_DEVICELEDINFO is as for XkbGetDeviceInfo
1859</literallayout>
1860
1861<literallayout class='monospaced'>1     ??          opcode
18621     101          xkb-opcode
18632     6+(n+p)/4          request-length
18642     n          msgLength
18652               unused
18664     CARD32          affectFlags
18674     CARD32          flags
18684     CARD32          affectCtrls
18694     CARD32          ctrls
1870n     STRING8          message
1871p               unused, p=pad(n)
1872</literallayout>
1873
1874<literallayout class='monospaced'>1     1          Reply
18751               unused
18762     CARD16          sequence number
18774     0          length
18784     CARD32          currentFlags
18794     CARD32          currentCtrls
18804     CARD32          supportedFlags
18814     CARD32          supportedCtrls
18828               unused
1883</literallayout>
1884
1885
1886</sect1>
1887<sect1 id='appD::Events'>
1888<title>Events</title>
1889
1890<literallayout class='monospaced'>1     ??          code
18911     0          xkb code
18922     CARD16          sequence number
18934     TIMESTAMP          time
18941     CARD8          deviceID
18951     CARD8          oldDeviceID
18961     KEYCODE          minKeyCode
18971     KEYCODE          maxKeyCode
18981     KEYCODE          oldMinKeyCode
18991     KEYCODE          oldMaxKeyCode
19001     CARD8          requestMajor
19011     CARD8          requestMinor
19022     SETofKB_NKNDETAIL          changed
190314               unused
1904</literallayout>
1905
1906<literallayout class='monospaced'>1     ??          code
19071     1          xkb code
19082     CARD16          sequence number
19094     TIMESTAMP          time
19101     CARD8          deviceID
19111     SETofBUTMASK          ptrBtnActions
19122     SETofKB_MAPPART          changed
19131     KEYCODE          minKeyCode
19141     KEYCODE          maxKeyCode
19151     CARD8          firstType
19161     CARD8          nTypes
19171     KEYCODE          firstKeySym
19181     CARD8          nKeySyms
19191     KEYCODE          firstKeyAct
19201     CARD8          nKeyActs
19211     KEYCODE          firstKeyBehavior
19221     CARD8          nKeyBehavior
19231     KEYCODE          firstKeyExplicit
19241     CARD8          nKeyExplicit
19251     KEYCODE          firstModMapKey
19261     CARD8          nModMapKeys
19271     KEYCODE          firstVModMapKey
19281     CARD8          nVModMapKeys
19292     SETofKB_VMOD          virtualMods
19302               unused
1931</literallayout>
1932
1933<literallayout class='monospaced'>1     ??          code
19341     2          xkb code
19352     CARD16          sequence number
19364     TIMESTAMP          time
19371     CARD8          deviceID
19381     SETofKEYMASK          mods
19391     SETofKEYMASK          baseMods
19401     SETofKEYMASK          latchedMods
19411     SETofKEYMASK          lockedMods
19421     KB_GROUP          group
19432     INT16          baseGroup
19442     INT16          latchedGroup
19451     KB_GROUP          lockedGroup
19461     SETofKEYMASK          compatState
19471     SETofKEYMASK          grabMods
19481     SETofKEYMASK          compatGrabMods
19491     SETofKEYMASK          lookupMods
19501     SETofKEYMASK          compatLookupMods
19512     SETofBUTMASK          ptrBtnState
19522     SETofKB_STATEPART          changed
19531     KEYCODE          keycode
19541     CARD8          eventType
19551     CARD8          requestMajor
19561     CARD8          requestMinor
1957</literallayout>
1958
1959<literallayout class='monospaced'>1     ??          code
19601     3          xkb code
19612     CARD16          sequence number
19624     TIMESTAMP          time
19631     CARD8          deviceID
19641     CARD8          numGroups
19652               unused
19664     SETofKB_CONTROL          changedControls
19674     SETofKB_BOOLCTRL          enabledControls
19684     SETofKB_BOOLCTRL          enabledControlChanges
19691     KEYCODE          keycode
19701     CARD8          eventType
19711     CARD8          requestMajor
19721     CARD8          requestMinor
19734               unused
1974</literallayout>
1975
1976<literallayout class='monospaced'>1     ??          code
19771     4          xkb code
19782     CARD16          sequence number
19794     TIMESTAMP          time
19801     CARD8          deviceID
19813               unused
19824     SETofKB_INDICATOR          state
19834     SETofKB_INDICATOR          stateChanged
198412               unused
1985</literallayout>
1986
1987<literallayout class='monospaced'>1     ??          code
19881     5          xkb code
19892     CARD16          sequence number
19904     TIMESTAMP          time
19911     CARD8          deviceID
19923               unused
19934     SETofKB_INDICATOR          state
19944     SETofKB_INDICATOR          mapChanged
199512               unused
1996</literallayout>
1997
1998<literallayout class='monospaced'>1     ??          code
19991     6          xkb code
20002     CARD16          sequence number
20014     TIMESTAMP          time
20021     CARD8          deviceID
20031               unused
20042     SETofKB_NAMEDETAIL          changed
20051     CARD8          firstType
20061     CARD8          nTypes
20071     CARD8          firstLevelName
20081     CARD8          nLevelNames
20091               unused
20101     CARD8          nRadioGroups
20111     CARD8          nKeyAliases
20121     SETofKB_GROUP          changedGroupNames
20132     SETofKB_VMOD          changedVirtualMods
20141     KEYCODE          firstKey
20151     CARD8          nKeys
20164     SETofKB_INDICATOR          changedIndicators
20174               unused
2018</literallayout>
2019
2020<literallayout class='monospaced'>1     ??          code
20211     7          xkb code
20222     CARD16          sequence number
20234     TIMESTAMP          time
20241     CARD8          deviceID
20251     SETofKB_GROUP          changedGroups
20262     CARD16          firstSI
20272     CARD16          nSI
20282     CARD16          nTotalSI
202916               unused
2030</literallayout>
2031
2032<literallayout class='monospaced'>1     ??          code
20331     8          xkb code
20342     CARD16          sequence number
20354     TIMESTAMP          time
20361     CARD8          deviceID
20371     KB_BELLCLASSRESULT          bellClass
20381     CARD8          bellID
20391     CARD8          percent
20402     CARD16          pitch
20412     CARD16          duration
20424     ATOM          name
20434     WINDOW          window
20441     BOOL          eventOnly
20457               unused
2046</literallayout>
2047
2048<literallayout class='monospaced'>1     ??          code
20491     9          xkb code
20502     CARD16          sequence number
20514     TIMESTAMP          time
20521     CARD8          deviceID
20531     KEYCODE          keycode
20541     BOOL          press
20551     BOOL          keyEventFollows
20561     SETofKEYMASK          mods
20571     KB_GROUP          group
20588     STRING8          message
205910               unused
2060</literallayout>
2061
2062<literallayout class='monospaced'>1     ??          code
20631     10          xkb code
20642     CARD16          sequence number
20654     TIMESTAMP          time
20661     CARD8          deviceID
20671     KEYCODE          keycode
20682     SETofKB_AXNDETAIL          detail
20692     CARD16          slowKeysDelay
20702     CARD16          debounceDelay
2071</literallayout>
2072
2073<literallayout class='monospaced'>1     ??          code
207416               unused
2075</literallayout>
2076
2077<literallayout class='monospaced'>1     ??          code
20781     11          xkb code
20792     CARD16          sequence number
20804     TIMESTAMP          time
20811     CARD8          deviceID
20821               unused
20832     SETofKB_XIDETAIL          reason
20842     KB_LEDCLASSRESULT          ledClass
20852     CARD8          ledID
20864     SETofKB_INDICATOR          ledsDefined
20874     SETofKB_INDICATOR          ledState
20881     CARD8          firstButton
20891     CARD8          nButtons
20902     SETofKB_XIFEATURE          supported
20912     SETofKB_XIFEATURE          unsupported
20922               unused
2093</literallayout>
2094
2095</sect1>
2096</appendix>
2097