1;;; -*- Mode: Lisp; Package: XLIB; Syntax: COMMON-LISP; Base: 10; Lowercase: Yes; -*-
2
3;;; Describe X11 protocol requests
4
5;;;
6;;;			 TEXAS INSTRUMENTS INCORPORATED
7;;;				  P.O. BOX 2909
8;;;			       AUSTIN, TEXAS 78769
9;;;
10;;; Copyright (C) 1987 Texas Instruments Incorporated.
11;;;
12;;; Permission is granted to any individual or institution to use, copy, modify,
13;;; and distribute this software, provided that this complete copyright and
14;;; permission notice is maintained, intact, in all copies and supporting
15;;; documentation.
16;;;
17;;; Texas Instruments Incorporated provides this software "as is" without
18;;; express or implied warranty.
19;;;
20
21;;; Created 07/15/87 by LaMott G. OREN
22
23(in-package :xlib)
24
25(defparameter *request-parameters* (make-array (length *request-names*)))
26
27(defmacro x-request (name &rest fields)
28  (unless (zerop (mod (length fields) 3))
29    (format t "~%Field length not a multiple of 3 for ~a" name))
30  (let ((request (position name *request-names* :test #'string-equal)))
31     (if request
32	 `(setf (aref *request-parameters* ,request) ',fields)
33       `(format t "~%~s isn't an X11 request name" ',name))))
34
35(defun print-history-description (buffer &optional (start 0))
36  ;; Display an output history
37  (reading-event (buffer)
38    (let ((request (card8-get start))
39	  (length (* 4 (card16-get (+ start 2))))
40	  (margin 5))
41      (format t "~a (~d) length ~d"
42	      (request-name request) request length)
43      (when (>= request (length *request-parameters*))
44	(setq request 0))
45      (do ((parms (aref *request-parameters* request) (cdddr parms))
46	   (j start))
47	  ((or (endp parms) (>= j length)))
48	(let ((len (first parms))
49	      (type (second parms))
50	      (doc (third parms))
51	      value)
52	  (setq value (case len
53			(1 (card8-get j))
54			(2 (card16-get j))
55			(4 (card32-get j))))
56	  (format t "~%~v@t" margin)
57	  (if value
58	      (progn
59		(print-value j value type doc)
60		     (incf j len))
61	    (progn
62	      (format t "~2d ~10a ~a"
63		      j type doc)
64	      (case type
65		((listofvalue listofcard32 listofatom)
66		 (format t " Words:~%~v@t" margin)
67		 (dotimes (k (floor (- length (- j start)) 4))
68		   (format t " ~d" (card32-get j))
69		   (incf j 4)))
70		(listofrectangle
71		 (format t " Half-Words:~%~v@t" margin)
72		 (dotimes (k (floor (- length (- j start)) 2))
73		   (format t " ~d" (card16-get j))
74		   (incf j 2)))
75		(x (when (integerp len) (incf j len)))	; Unused
76		(string8
77		 (format t " Bytes:~%~v@t" margin)
78		 (dotimes (k (- length (- j start)))
79		   (format t "~a" (code-char (card8-get j)))
80		   (incf j)))
81		(otherwise
82		 (format t " Bytes:~%~v@t" margin)
83		 (dotimes (k (- length (- j start)))
84		   (format t " ~d" (card8-get j))
85		   (incf j)))))))))))
86
87(defun print-value (i value type doc &aux temp)
88  (format t "~2d ~3d " i value)
89  (if (consp type)
90      (case (first type)
91	(bitmask (format t "~a" (nreverse (decode-mask (symbol-value (second type)) value)))
92		 (setq type (car type)))
93	(member (if (null (setq temp (nth value (cdr type))))
94		    (format t "*****ERROR*****")
95		  (format t "~a" temp))
96		(setq type (car type))))
97    (case type
98      ((window pixmap drawable cursor font gcontext colormap atom)
99       (format t "[#x~x]" value)
100       #+comment
101       (let ((temp (lookup-resource-id display value)))
102	 (when (eq (first type) 'atom)
103	   (setq temp (lookup-xatom display value)))
104	 (when temp (format t " (~s)" (type-of temp)))))
105      (int16 (setq temp (card16->int16 value))
106	     (when (minusp temp) (format t "~d" temp)))
107      (otherwise
108       (when (and (numberp type) (not (= type value)))
109	 (format t "*****ERROR*****")))))
110  (format t "~30,10t ~10a ~a" type doc))
111
112(x-request Error
113   1	1			opcode
114   1	CARD8			data
115   2	8+n			request-length
116   n	LISTofBYTE		data
117   )
118
119(x-request CreateWindow
120   1	1			opcode
121   1	CARD8			depth
122   2	8+n			request-length
123   4	WINDOW			wid
124   4	WINDOW			parent
125   2	INT16			x
126   2	INT16			y
127   2	CARD16			width
128   2	CARD16			height
129   2	CARD16			border-width
130   2	(MEMBER CopyFromParent InputOutput InputOnly) class
131   4	(OR (MEMBER CopyFromParent) VISUALID)		visual
132   4	(BITMASK *create-bitmask*) value-mask
133  4n	LISTofVALUE		value-list
134  )
135
136(defparameter *create-bitmask*
137	     '#(background-pixmap background-pixel border-pixmap border-pixel bit-gravity
138		win-gravity backing-store backing-planes backing-pixel override-redirect
139		save-under event-mask do-not-propagate-mask colormap cursor))
140
141(x-request ChangeWindowAttributes
142   1	2			opcode
143   1	x			unused
144   2	3+n			request-length
145   4	WINDOW			window
146   4	(BITMASK *create-bitmask*) value-mask
147  4n	LISTofVALUE		value-list
148  )
149
150(x-request GetWindowAttributes
151   1	3			opcode
152   1	x			unused
153   2	2			request-length
154   4	WINDOW			window
155)
156
157(x-request DestroyWindow
158   1	4			opcode
159   1	x			unused
160   2	2			request-length
161   4	WINDOW			window
162)
163
164(x-request DestroySubwindows
165   1	5			opcode
166   1	x			unused
167   2	2			request-length
168   4	WINDOW			window
169)
170
171(x-request ChangeSaveSet
172   1	6			opcode
173   1	(MEMBER insert delete)	mode
174   2	2			request-length
175   4	WINDOW			window
176)
177
178(x-request ReparentWindow
179  1	7			opcode
180   1	x			unused
181   2	4			request-length
182   4	WINDOW			window
183   4	WINDOW			parent
184   2	INT16			x
185   2	INT16			y
186)
187
188(x-request MapWindow
189   1	8			opcode
190   1	x			unused
191   2	2			request-length
192   4	WINDOW			window
193)
194
195(x-request MapSubwindows
196   1	9			opcode
197   1	x			unused
198   2	2			request-length
199   4	WINDOW			window
200)
201
202(x-request UnmapWindow
203   1	10			opcode
204   1	x			unused
205   2	2			request-length
206   4	WINDOW			window
207)
208
209(x-request UnmapSubwindows
210   1	11			opcode
211   1	x			unused
212   2	2			request-length
213   4	WINDOW			window
214)
215
216(x-request ConfigureWindow
217   1	12			opcode
218   1	x			unused
219   2	3+n			request-length
220   4	WINDOW			window
221   2	BITMASK			value-mask
222   2	x			unused
223  4n	LISTofVALUE		value-list
224)
225
226(x-request CirculateWindow
227   1	13			opcode
228   1	(MEMBER RaiseLowest LowerHighest) direction
229   2	2			request-length
230   4	WINDOW			window
231)
232
233(x-request GetGeometry
234   1	14			opcode
235   1	x			unused
236   2	2			request-length
237   4	DRAWABLE		drawable
238)
239
240(x-request QueryTree
241   1	15			opcode
242   1	x			unused
243   2	2			request-length
244   4	WINDOW			window
245)
246
247(x-request InternAtom
248   1	16			opcode
249   1	BOOL			only-if-exists
250   2	|2+(n+p)/4|		request-length
251   2	n			length-of-name
252   2	x			unused
253   n	STRING8			name
254   p	x			unused
255)
256
257(x-request GetAtomName
258   1	17			opcode
259   1	x			unused
260   2	2			request-length
261   4	ATOM			atom
262)
263
264(x-request ChangeProperty
265   1	18			opcode
266   1	(MEMBER replace prepend append)	mode
267   2	|6+(n+p)/4|		request-length
268   4	WINDOW			window
269   4	ATOM			property
270   4	ATOM			type
271   1	CARD8			format
272   3	x			unused
273   4	CARD32			length-of-data-in-format-units
274   n	LISTofBYTE		data
275   p	x			unused
276)
277
278(x-request DeleteProperty
279   1	19			opcode
280   1	x			unused
281   2	3			request-length
282   4	WINDOW			window
283   4	ATOM			property
284)
285
286(x-request GetProperty
287   1	20			opcode
288   1	BOOL			delete
289   2	6			request-length
290   4	WINDOW			window
291   4	ATOM			property
292   4	(OR (MEMBER anypropertytype) ATOM) type
293   4	CARD32			long-offset
294   4	CARD32			long-length
295)
296
297(x-request ListProperties
298   1	21			opcode
299   1	x			unused
300   2	2			request-length
301   4	WINDOW			window
302)
303
304(x-request SetSelectionOwner
305   1	22			opcode
306   1	x			unused
307   2	4			request-length
308   4	(OR (MEMBER none) WINDOW) owner
309   4	ATOM			selection
310   4	(OR (MEMBER currenttime) TIMESTAMP) time
311)
312
313(x-request GetSelectionOwner
314   1	23			opcode
315   1	x			unused
316   2	2			request-length
317   4	ATOM			selection
318)
319
320(x-request ConvertSelection
321   1	24			opcode
322   1	x			unused
323   2	6			request-length
324   4	WINDOW			requestor
325   4	ATOM			selection
326   4	ATOM			target
327   4	(OR (MEMBER none) ATOM)	property
328   4	(OR (MEMBER currenttime) TIMESTAMP) time
329)
330
331(x-request SendEvent
332   1	25			opcode
333   1	BOOL			propagate
334   2	11			request-length
335   4	(OR (MEMBER pointerwindow inputfocus) WINDOW) destination
336   4	SETofEVENT		event-mask
337  32	n			event
338)
339
340(x-request GrabPointer
341   1	26			opcode
342   1	BOOL			owner-events
343   2	6			request-length
344   4	WINDOW			grab-window
345   2	SETofPOINTEREVENT	event-mask
346   1	(MEMBER Synchronous Asynchronous) pointer-mode
347   1	(MEMBER Synchronous Asynchronous) keyboard-mode
348   4	(OR (MEMBER none) WINDOW) confine-to
349   4	(OR (MEMBER none) CURSOR) cursor
350   4	(OR (MEMBER currenttime) TIMESTAMP) timestamp
351)
352
353(x-request UngrabPointer
354   1	27			opcode
355   1	x			unused
356   2	2			request-length
357   4	(OR (MEMBER currenttime) TIMESTAMP) time
358)
359
360(x-request GrabButton
361   1	28			opcode
362   1	BOOL			owner-events
363   2	6			request-length
364   4	WINDOW			grab-window
365   2	SETofPOINTEREVENT	event-mask
366   1	(MEMBER Synchronous Asynchronous) pointer-mode
367   1	(MEMBER Synchronous Asynchronous) keyboard-mode
368   4	(OR (MEMBER none) WINDOW) confine-to
369   4	(OR (MEMBER none) CURSOR) cursor
370   1	(OR (MEMBER anybutton) BUTTON)button
371   1	x			unused
372   2	SETofKEYMASK		modifiers
373)
374
375(x-request UngrabButton
376   1	29			opcode
377   1	(OR (MEMBER anybutton) BUTTON) button
378   2	3			request-length
379   4	WINDOW			grab-window
380   2	SETofKEYMASK		modifiers
381   2	x			unused
382)
383
384(x-request ChangeActivePointerGrab
385   1	30			opcode
386   1	x			unused
387   2	4			request-length
388   4	(OR (MEMBER none) CURSOR) cursor
389   4	(OR (MEMBER currenttime) TIMESTAMP) time
390   2	SETofPOINTEREVENT	event-mask
391   2	x			unused
392)
393
394(x-request GrabKeyboard
395   1	31			opcode
396   1	BOOL			owner-events
397   2	4			request-length
398   4	WINDOW			grab-window
399   4	(OR (MEMBER currenttime) TIMESTAMP) time
400   1	(MEMBER Synchronous Asynchronous) pointer-mode
401   1	(MEMBER Synchronous Asynchronous) keyboard-mode
402   2	x			unused
403)
404
405(x-request UngrabKeyboard
406   1	32			opcode
407   1	x			unused
408   2	2			request-length
409   4	(OR (MEMBER currenttime) TIMESTAMP) time
410)
411
412(x-request GrabKey
413   1	33			opcode
414   1	BOOL			owner-events
415   2	4			request-length
416   4	WINDOW			grab-window
417   2	SETofKEYMASK		modifiers
418   1	(OR (MEMBER anykey) KEYCODE) key
419   1	(MEMBER Synchronous Asynchronous) pointer-mode
420   1	(MEMBER Synchronous Asynchronous) keyboard-mode
421   3	x			unused
422)
423
424(x-request UngrabKey
425   1	34			opcode
426   1	(OR (MEMBER anykey) KEYCODE) key
427   2	3			request-length
428   4	WINDOW			grab-window
429   2	SETofKEYMASK		modifiers
430   2	x			unused
431)
432
433(x-request AllowEvents
434   1	35			opcode
435   1	(MEMBER AsyncPointer SyncPointer ReplayPointer AsyncKeyboard SyncKeyboard ReplayKeyboard) mode
436   2	2			request-length
437   4	(OR (MEMBER currenttime) TIMESTAMP) time
438)
439
440(x-request GrabServer
441   1	36			opcode
442   1	x			unused
443   2	1			request-length
444)
445
446(x-request UngrabServer
447   1	37			opcode
448   1	x			unused
449   2	1			request-length
450)
451
452(x-request QueryPointer
453   1	38			opcode
454   1	x			unused
455   2	2			request-length
456   4	WINDOW			window
457)
458
459(x-request GetMotionEvents
460   1	39			opcode
461   1	x			unused
462   2	4			request-length
463   4	WINDOW			window
464   4	(OR (MEMBER CURRENTTIME) TIMESTAMP)		start
465   4	(OR (MEMBER CURRENTTIME) TIMESTAMP)		stop
466)
467
468(x-request TranslateCoords
469   1	40			opcode
470   1	x			unused
471   2	4			request-length
472   4	WINDOW			src-window
473   4	WINDOW			dst-window
474   2	INT16			src-x
475   2	INT16			src-y
476)
477
478(x-request WarpPointer
479   1	41			opcode
480   1	x			unused
481   2	6			request-length
482   4	(OR (MEMBER none) WINDOW)			src-window
483   4	WINDOW			dst-window
484   2	INT16			src-x
485   2	INT16			src-y
486   2	CARD16			src-width
487   2	CARD16			src-height
488   2	INT16			dst-x
489   2	INT16			dst-y
490)
491
492(x-request SetInputFocus
493   1	42			opcode
494   1	(MEMBER none pointerroot parent) revert-to
495   2	3			request-length
496   4	(OR (MEMBER none pointerroot) WINDOW) focus
497   4	(OR (MEMBER CURRENTTIME) TIMESTAMP)		time
498)
499
500(x-request GetInputFocus
501   1	43			opcode
502   1	x			unused
503   2	1			request-length
504)
505
506(x-request QueryKeymap
507   1	44			opcode
508   1	x			unused
509   2	1			request-length
510)
511
512(x-request OpenFont
513   1	45			opcode
514   1	x			unused
515   2	|3+(n+p)/4|		request-length
516   4	FONT			fid
517   2	n			length-of-name
518   2	x			unused
519   n	STRING8			name
520   p	x			unused
521)
522
523(x-request CloseFont
524   1	46			opcode
525   1	x			unused
526   2	2			request-length
527   4	FONT			font
528)
529
530(x-request QueryFont
531   1	47			opcode
532   1	x			unused
533   2	2			request-length
534   4	FONTABLE		font
535)
536
537(x-request QueryTextExtents
538   1	48			opcode
539   1	BOOL			odd-length-p
540   2	|2+(2n+p)/4|		request-length
541   4	FONTABLE		font
542  2n	STRING16		string
543   p	x			unused
544)
545
546(x-request ListFonts
547   1	49			opcode
548   1	x			unused
549   2	|2+(n+p)/4|		request-length
550   2	CARD16			max-names
551   2	n			length-of-pattern
552   n	STRING8			pattern
553   p	x			unused
554)
555
556(x-request ListFontsWithInfo
557   1	50			opcode
558   1	x			unused
559   2	|2+(n+p)/4|		request-length
560   2	CARD16			max-names
561   2	n			length-of-pattern
562   n	STRING8			pattern
563   p	x			unused
564)
565
566(x-request SetFontPath
567   1	51			opcode
568   1	x			unused
569   2	|2+(n+p)/4|		request-length
570   2	CARD16			number-of-STRs-in-path
571   2	x			unused
572   n	LISTofSTR		path
573   p	x			unused
574)
575
576(x-request GetFontPath
577   1	52			opcode
578   1	x			unused
579   2	1			request-list
580)
581
582(x-request CreatePixmap
583   1	53			opcode
584   1	CARD8			depth
585   2	4			request-length
586   4	PIXMAP			pid
587   4	DRAWABLE		drawable
588   2	CARD16			width
589   2	CARD16			height
590)
591
592(x-request FreePixmap
593   1	54			opcode
594   1	x			unused
595   2	2			request-length
596   4	PIXMAP			pixmap
597)
598
599(x-request CreateGC
600   1	55			opcode
601   1	x			unused
602   2	4+n			request-length
603   4	GCONTEXT		cid
604   4	DRAWABLE		drawable
605   4	(BITMASK *gc-bitmask*)	value-mask
606  4n	LISTofVALUE		value-list
607)
608
609(defconstant *gc-bitmask*
610	    '#(function plane-mask foreground
611	       background line-width line-style cap-style join-style
612	       fill-style fill-rule tile stipple tile-stipple-x-origin
613	       tile-stipple-y-origin font subwindow-mode graphics-exposures clip-x-origin
614	       clip-y-origin clip-mask dash-offset dashes arc-mode))
615
616
617(x-request ChangeGC
618   1	56			opcode
619   1	x			unused
620   2	3+n			request-length
621   4	GCONTEXT		gc
622   4	(BITMASK *gc-bitmask*)	value-mask
623  4n	LISTofVALUE		value-list
624)
625
626(x-request CopyGC
627   1	57			opcode
628   1	x			unused
629   2	4			request-length
630   4	GCONTEXT		src-gc
631   4	GCONTEXT		dst-gc
632   4	(BITMASK *gc-bitmask*)	value-mask
633)
634
635(x-request SetDashes
636   1	58			opcode
637   1	x			unused
638   2	|3+(n+p)/4|		request-length
639   4	GCONTEXT		gc
640   2	CARD16			dash-offset
641   2	n			length-of-dashes
642   n	LISTofCARD8		dashes
643   p	x			unused
644)
645
646(x-request SetClipRectangles
647   1	59			opcode
648   1	(MEMBER UnSorted YSorted YXSorted YXBanded) ordering
649   2	3+2n			request-length
650   4	GCONTEXT		gc
651   2	INT16			clip-x-origin
652   2	INT16			clip-y-origin
653  8n	LISTofRECTANGLE		rectangles
654)
655
656(x-request FreeGC
657   1	60			opcode
658   1	x			unused
659   2	2			request-length
660   4	GCONTEXT		gc
661)
662
663(x-request ClearToBackground
664   1	61			opcode
665   1	BOOL			exposures
666   2	4			request-length
667   4	WINDOW			window
668   2	INT16			x
669   2	INT16			y
670   2	CARD16			width
671   2	CARD16			height
672)
673
674(x-request CopyArea
675   1	62			opcode
676   1	x			unused
677   2	7			request-length
678   4	DRAWABLE		src-drawable
679   4	DRAWABLE		dst-drawable
680   4	GCONTEXT		gc
681   2	INT16			src-x
682   2	INT16			src-y
683   2	INT16			dst-x
684   2	INT16			dst-y
685   2	CARD16			width
686   2	CARD16			height
687)
688
689(x-request CopyPlane
690   1	63			opcode
691   1	x			unused
692   2	8			request-length
693   4	DRAWABLE		src-drawable
694   4	DRAWABLE		dst-drawable
695   4	GCONTEXT		gc
696   2	INT16			src-x
697   2	INT16			src-y
698   2	INT16			dst-x
699   2	INT16			dst-y
700   2	CARD16			width
701   2	CARD16			height
702   4	CARD32			bit-plane
703)
704
705(x-request PolyPoint
706   1	64			opcode
707   1	(MEMBER origin previous) coordinate-mode
708   2	3+n			request-length
709   4	DRAWABLE		drawable
710   4	GCONTEXT		gc
711  4n	LISTofPOINT		points
712)
713
714(x-request PolyLine
715   1	65			opcode
716   1	(MEMBER origin previous) coordinate-mode
717   2	3+n			request-length
718   4	DRAWABLE		drawable
719   4	GCONTEXT		gc
720  4n	LISTofPOINT		points
721)
722
723(x-request PolySegment
724   1	66			opcode
725   1	x			unused
726   2	3+2n			request-length
727   4	DRAWABLE		drawable
728   4	GCONTEXT		gc
729  8n	LISTofSEGMENT		segments
730)
731
732(x-request PolyRectangle
733   1	67			opcode
734   1	x			unused
735   2	3+2n			request-length
736   4	DRAWABLE		drawable
737   4	GCONTEXT		gc
738  8n	LISTofRECTANGLE		rectangles
739)
740
741(x-request PolyArc
742   1	68			opcode
743   1	x			unused
744   2	3+3n			request-length
745   4	DRAWABLE		drawable
746   4	GCONTEXT		gc
747 12n	LISTofARC		arcs
748)
749
750(x-request FillPoly
751   1	69			opcode
752   1	x			unused
753   2	4+n			request-length
754   4	DRAWABLE		drawable
755   4	GCONTEXT		gc
756   1	(MEMBER complex nonconvex convex) shape
757   1	(MEMBER origin previous) coordinate-mode
758   2	x			unused
759  4n	LISTofPOINT		points
760)
761
762(x-request PolyFillRectangle
763   1	70			opcode
764   1	x			unused
765   2	3+2n			request-length
766   4	DRAWABLE		drawable
767   4	GCONTEXT		gc
768  8n	LISTofRECTANGLE		rectangles
769)
770
771(x-request PolyFillArc
772   1	71			opcode
773   1	x			unused
774   2	3+3n			request-length
775   4	DRAWABLE		drawable
776   4	GCONTEXT		gc
777 12n	LISTofARC		arcs
778)
779
780(x-request PutImage
781   1	72			opcode
782   1	(bitmap xypixmap zpixmap) format
783   2	|6+(n+p)/4|		request-length
784   4	DRAWABLE		drawable
785   4	GCONTEXT		gc
786   2	CARD16			width
787   2	CARD16			height
788   2	INT16			dst-x
789   2	INT16			dst-y
790   1	CARD8			left-pad
791   1	CARD8			depth
792   2	x			unused
793   n	LISTofBYTE		data
794   p	x			unused
795)
796
797(x-request GetImage
798   1	73			opcode
799   1	(MEMBER error xypixmap zpixmap)	format
800   2	5			request-length
801   4	DRAWABLE		drawable
802   2	INT16			x
803   2	INT16			y
804   2	CARD16			width
805   2	CARD16			height
806   4	CARD32			plane-mask
807)
808
809(x-request PolyText8
810   1	74			opcode
811   1	x			unused
812   2	|4+(n+p)/4|		request-length
813   4	DRAWABLE		drawable
814   4	GCONTEXT		gc
815   2	INT16			x
816   2	INT16			y
817   n	LISTofTEXTITEM8		items
818   p	x			unused
819)
820
821(x-request PolyText16
822   1	75			opcode
823   1	x			unused
824   2	|4+(n+p)/4|		request-length
825   4	DRAWABLE		drawable
826   4	GCONTEXT		gc
827   2	INT16			x
828   2	INT16			y
829   n	LISTofTEXTITEM16	items
830   p	x			unused
831)
832
833(x-request ImageText8
834   1	76			opcode
835   1	n			length-of-string
836   2	|4+(n+p)/4|		request-length
837   4	DRAWABLE		drawable
838   4	GCONTEXT		gc
839   2	INT16			x
840   2	INT16			y
841   n	STRING8			string
842   p	x			unused
843)
844
845(x-request ImageText16
846   1	77			opcode
847   1	n			number-of-CHAR2Bs-in-string
848   2	|4+(2n+p)/4|		request-length
849   4	DRAWABLE		drawable
850   4	GCONTEXT		gc
851   2	INT16			x
852   2	INT16			y
853  2n	STRING16		string
854   p	x			unused
855)
856
857(x-request CreateColormap
858   1	78			opcode
859   1	(MEMBER none all)	alloc
860   2	4			request-length
861   4	COLORMAP		mid
862   4	WINDOW			window
863   4	VISUALID		visual
864)
865
866(x-request FreeColormap
867   1	79			opcode
868   1	x			unused
869   2	2			request-length
870   4	COLORMAP		cmap
871)
872
873(x-request CopyColormapAndFree
874   1	80			opcode
875   1	x			unused
876   2	3			request-length
877   4	COLORMAP		mid
878   4	COLORMAP		src-cmap
879)
880
881(x-request InstallColormap
882   1	81			opcode
883   1	x			unused
884   2	2			request-length
885   4	COLORMAP		cmap
886)
887
888(x-request UninstallColormap
889   1	82			opcode
890   1	x			unused
891   2	2			request-length
892   4	COLORMAP		cmap
893)
894
895(x-request ListInstalledColormaps
896   1	83			opcode
897   1	x			unused
898   2	2			request-length
899   4	WINDOW			window
900)
901
902(x-request AllocColor
903   1	84			opcode
904   1	x			unused
905   2	4			request-length
906   4	COLORMAP		cmap
907   2	CARD16			red
908   2	CARD16			green
909   2	CARD16			blue
910   2	x			unused
911)
912
913(x-request AllocNamedColor
914   1	85			opcode
915   1	x			unused
916   2	|3+(n+p)/4|		request-length
917   4	COLORMAP		cmap
918   2	n			length-of-name
919   2	x			unused
920   n	STRING8			name
921   p	x			unused
922)
923
924(x-request AllocColorCells
925   1	86			opcode
926   1	BOOL			contiguous
927   2	3			request-length
928   4	COLORMAP		cmap
929   2	CARD16			colors
930   2	CARD16			planes
931)
932
933(x-request AllocColorPlanes
934   1	87			opcode
935   1	BOOL			contiguous
936   2	4			request-length
937   4	COLORMAP		cmap
938   2	CARD16			colors
939   2	CARD16			reds
940   2	CARD16			greens
941   2	CARD16			blues
942)
943
944(x-request FreeColors
945   1	88			opcode
946   1	x			unused
947   2	3+n			request-length
948   4	COLORMAP		cmap
949   4	CARD32			plane-mask
950  4n	LISTofCARD32		pixels
951)
952
953(x-request StoreColors
954   1	89			opcode
955   1	x			unused
956   2	2+3n			request-length
957   4	COLORMAP		cmap
958 12n	LISTofCOLORITEM		items
959)
960
961(x-request StoreNamedColor
962   1	90			opcode
963   1	color-mask		do-red_do-green_do-blue
964   2	|4+(n+p)/4|		request-length
965   4	COLORMAP		cmap
966   4	CARD32			pixel
967   2	n			length-of-name
968   2	x			unused
969   n	STRING8			name
970   p	x			unused
971)
972
973(x-request QueryColors
974   1	91			opcode
975   1	x			unused
976   2	2+n			request-length
977   4	COLORMAP		cmap
978  4n	LISTofCARD32		pixels
979)
980
981(x-request LookupColor
982   1	92			opcode
983   1	x			unused
984   2	|3+(n+p)/4|		request-length
985   4	COLORMAP		cmap
986   2	n			length-of-name
987   2	x			unused
988   n	STRING8			name
989   p	x			unused
990)
991
992(x-request CreateCursor
993   1	93			opcode
994   1	x			unused
995   2	8			request-length
996   4	CURSOR			cid
997   4	PIXMAP			source
998   4	(OR (MEMBER none) PIXMAP) mask
999   2	CARD16			fore-red
1000   2	CARD16			fore-green
1001   2	CARD16			fore-blue
1002   2	CARD16			back-red
1003   2	CARD16			back-green
1004   2	CARD16			back-blue
1005   2	CARD16			x
1006   2	CARD16			y
1007)
1008
1009(x-request CreateGlyphCursor
1010   1	94			CreateGlyphCursor
1011   1	x			unused
1012   2	8			request-length
1013   4	CURSOR			cid
1014   4	FONT			source-font
1015   4	(OR (MEMBER none) FONT)	mask-font
1016   2	CARD16			source-char
1017   2	CARD16			mask-char
1018   2	CARD16			fore-red
1019   2	CARD16			fore-green
1020   2	CARD16			fore-blue
1021   2	CARD16			back-red
1022   2	CARD16			back-green
1023   2	CARD16			back-blue
1024)
1025
1026(x-request FreeCursor
1027   1	95			opcode
1028   1	x			unused
1029   2	2			request-length
1030   4	CURSOR			cursor
1031)
1032
1033(x-request RecolorCursor
1034   1	96			opcode
1035   1	x			unused
1036   2	5			request-length
1037   4	CURSOR			cursor
1038   2	CARD16			fore-red
1039   2	CARD16			fore-green
1040   2	CARD16			fore-blue
1041   2	CARD16			back-red
1042   2	CARD16			back-green
1043   2	CARD16			back-blue
1044)
1045
1046(x-request QueryBestSize
1047   1	97			opcode
1048   1	(MEMBER cursor tile stipple) class
1049   2	3			request-length
1050   4	DRAWABLE		drawable
1051   2	CARD16			width
1052   2	CARD16			height
1053)
1054
1055(x-request QueryExtension
1056   1	98			opcode
1057   1	x			unused
1058   2	|2+(n+p)/4|		request-length
1059   2	n			length-of-name
1060   2	x			unused
1061   n	STRING8			name
1062   p	x			unused
1063)
1064
1065(x-request ListExtensions
1066   1	99			opcode
1067   1	x			unused
1068   2	1			request-length
1069)
1070
1071(x-request SetKeyboardMapping
1072   1	100			opcode
1073   1	n			keycode-count
1074   2	2+nm			request-length
1075   1	KEYCODE			first-keycode
1076   1	m			keysyms-per-keycode
1077   2	x			unused
1078 4nm	LISTofKEYSYM		keysyms
1079)
1080
1081(x-request GetKeyboardMapping
1082   1	101			opcode
1083   1	x			unused
1084   2	2			request-length
1085   1	KEYCODE			first-keycode
1086   1	CARD8			count
1087   2	x			unused
1088)
1089
1090(x-request ChangeKeyboardControl
1091   1	102			opcode
1092   1	x			unused
1093   2	2+n			request-length
1094   4	BITMASK			value-mask
1095  4n	LISTofVALUE		value-list
1096)
1097
1098(x-request GetKeyboardControl
1099   1	103			opcode
1100   1	x			unused
1101   2	1			request-length
1102)
1103
1104(x-request Bell
1105   1	104			opcode
1106   1	INT8			percent
1107   2	1			request-length
1108)
1109
1110(x-request ChangePointerControl
1111   1	105			opcode
1112   1	x			unused
1113   2	3			request-length
1114   2	INT16			acceleration-numerator
1115   2	INT16			acceleration-denominator
1116   2	INT16			threshold
1117   1	BOOL			do-acceleration
1118   1	BOOL			do-threshold
1119)
1120
1121(x-request GetPointerControl
1122   1	106			GetPointerControl
1123   1	x			unused
1124   2	1			request-length
1125)
1126
1127(x-request SetScreenSaver
1128   1	107			opcode
1129   1	x			unused
1130   2	3			request-length
1131   2	INT16			timeout
1132   2	INT16			interval
1133   1	(MEMBER no yes default)	prefer-blanking
1134   1	(MEMBER no yes default)	allow-exposures
1135   2	x			unused
1136)
1137
1138(x-request GetScreenSaver
1139   1	108			opcode
1140   1	x			unused
1141   2	1			request-length
1142)
1143
1144(x-request ChangeHosts
1145   1	109			opcode
1146   1	(MEMBER insert delete)	mode
1147   2	|2+(n+p)/4|		request-length
1148   1	(MEMBER internet decnet chaos) family
1149   1	x			unused
1150   2	CARD16			length-of-address
1151   n	LISTofCARD8		address
1152   p	x			unused
1153)
1154
1155(x-request ListHosts
1156   1	110			opcode
1157   1	x			unused
1158   2	1			request-length
1159)
1160
1161(x-request ChangeAccessControl
1162   1	111			opcode
1163   1	(MEMBER disable enable)	mode
1164   2	1			request-length
1165)
1166
1167(x-request ChangeCloseDownMode
1168   1	112			opcode
1169   1	(MEMBER destroy retainpermanent retaintemporary) mode
1170   2	1			request-length
1171)
1172
1173(x-request KillClient
1174   1	113			opcode
1175   1	x			unused
1176   2	2			request-length
1177   4	(MEMBER alltemporary CARD32) resource
1178)
1179
1180(x-request RotateProperties
1181   1	114			opcode
1182   1	x			unused
1183   2	3+n			request-length
1184   4	WINDOW			window
1185   2	n			number-of-properties
1186   2	INT16			delta
1187  4n	LISTofATOM		properties
1188)
1189
1190(x-request ForceScreenSaver
1191   1	115			ForceScreenSaver
1192   1	(MEMBER reset activate)	mode
1193   2	1			request-length
1194)
1195
1196(x-request SetPointerMapping
1197   1	116			opcode
1198   1	n			length-of-map
1199   2	|1+(n+p)/4|		request-length
1200   n	LISTofCARD8		map
1201   p	x			unused
1202)
1203
1204(x-request GetPointerMapping
1205   1	117			opcode
1206   1	x			unused
1207   2	1			request-length
1208)
1209
1210(x-request SetModifierMapping
1211   1	118			opcode
1212   1	KEYCODE			Lock
1213   2	5			request-length
1214   1	KEYCODE			Shift_A
1215   1	KEYCODE			Shift_B
1216   1	KEYCODE			Control_A
1217   1	KEYCODE			Control_B
1218   1	KEYCODE			Mod1_A
1219   1	KEYCODE			Mod1_B
1220   1	KEYCODE			Mod2_A
1221   1	KEYCODE			Mod2_B
1222   1	KEYCODE			Mod3_A
1223   1	KEYCODE			Mod3_B
1224   1	KEYCODE			Mod4_A
1225   1	KEYCODE			Mod4_B
1226   1	KEYCODE			Mod5_A
1227   1	KEYCODE			Mod5_B
1228   2	x			unused
1229)
1230
1231(x-request GetModifierMapping
1232   1	119			opcode
1233   1	x			unused
1234   2	1			request-length
1235)
1236
1237#+comment
1238(x-request NoOperation
1239   1	127			opcode
1240   1	x			unused
1241   2	1			request-length
1242)
1243;; End of file
1244