O2 revision 154daed1
1// $Xorg: O2,v 1.3 2000/08/17 19:54:36 cpqbld Exp $
2//
3// Copyright (c) 1996 by Silicon Graphics Computer Systems, Inc.
4//
5// Permission to use, copy, modify, and distribute this
6// software and its documentation for any purpose and without
7// fee is hereby granted, provided that the above copyright
8// notice appear in all copies and that both that copyright
9// notice and this permission notice appear in supporting
10// documentation, and that the name of Silicon Graphics not be 
11// used in advertising or publicity pertaining to distribution 
12// of the software without specific prior written permission.
13// Silicon Graphics makes no representation about the suitability 
14// of this software for any purpose. It is provided "as is"
15// without any express or implied warranty.
16// 
17// SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS 
18// SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 
19// AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
20// GRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL 
21// DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 
22// DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 
23// OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION  WITH
24// THE USE OR PERFORMANCE OF THIS SOFTWARE.
25//
26default xkb_geometry "pc101" {
27
28    // This is an approximate layout for a 101-key (US/ASCII) SGI
29    // keyboard.  I just took a similar layout (101 key PC keyboard)
30    // and adjusted the sizes of a few keys by eye.  I didn't actually
31    // *measure* a real keyboard.
32
33    description= "101-key keyboard for Silicon Graphics O2";
34
35    width= 448;
36    height= 162;
37
38    shape "EDGE" { 
39	cornerRadius= 2, 
40	{ [ 15,    0 ], [ 433,   0 ], [ 433, 10 ], [ 448, 10 ],
41	  [ 448, 162 ], [   0, 162 ], [   0, 10 ], [ 15,  10 ] }
42    };
43    shape.cornerRadius= 1;
44    shape "NORM" { { [ 18,18] }, { [2,1], [16,17] } };
45    shape "BKSP" { { [ 37,18] }, { [2,1], [35,17] } };
46    shape "TABK" { { [ 28,18] }, { [2,1], [26,17] } };
47    shape "BKSL" { { [ 27,18] }, { [2,1], [25,17] } };
48    shape "RTRN" { { [ 40,18] }, { [2,1], [37,17] } };
49    shape "CAPS" { { [ 34,18] }, { [2,1], [29,17] } };
50    shape "RTSH" { { [ 49,18] }, { [2,1], [47,17] } };
51    shape "LFSH" { { [ 44,18] }, { [2,1], [42,17] } };
52    shape "MODK" { { [ 28,18] }, { [2,1], [26,17] } };
53    shape "SPCE" { { [130,18] }, { [2,1], [128,17] } };
54    shape "KP0"  { { [ 37,18] }, { [2,1], [35,17] } };
55    shape "KPAD" { { [ 18,37] }, { [2,1], [16,36] } };
56    shape "LOGO" { { [ 12,12] } };
57
58    outline "Edges" {
59	top= 0;
60	left= 0;
61	shape= "EDGE";
62    };
63
64    section.left= 6;
65    row.left= 1;
66    key.shape= "NORM";
67    key.gap=  1;
68    section "Function" {
69	top= 25;
70	row {
71	    top= 1;
72	    keys {	{ <ESC>, color="grey20" },
73			{ <FK01>, 19}, <FK02>, <FK03>, <FK04>,
74			{ <FK05>, 11}, <FK06>, <FK07>, <FK08>,
75			{ <FK09>, 11}, <FK10>, <FK11>, <FK12>
76	    };
77	};
78    }; // End of "Function" section
79
80    section "Alpha" {
81	top= 58;
82	row {
83	    top= 1;
84	    keys { 	<TLDE>, <AE01>, <AE02>, <AE03>, <AE04>,
85			<AE05>, <AE06>, <AE07>, <AE08>, <AE09>,
86			<AE10>, <AE11>, <AE12>,
87			{ <BKSP>, "BKSP", color="grey20" }
88	    };
89	};
90	row {
91	    top= 20;
92	    keys {	{ <TAB>, "TABK", color= "grey20" },
93			<AD01>, <AD02>, <AD03>, <AD04>, <AD05>, 
94			<AD06>, <AD07>, <AD08>, <AD09>, <AD10>, 
95			<AD11>, <AD12>,
96			{ <BKSL>, "BKSL" }
97	    };	
98	};
99	row {
100	    top= 39;
101	    keys { 	{ <CAPS>, "CAPS", color="grey20" },
102	 		<AC01>, <AC02>, <AC03>, <AC04>, <AC05>, 
103			<AC06>, <AC07>, <AC08>, <AC09>, <AC10>, 
104			<AC11>, { <RTRN>, "RTRN", color="grey20" }
105	    };
106	};
107	row {
108	    top= 58;
109	    keys {	{ <LFSH>, "LFSH", color="grey20" }, 
110	 		<AB01>, <AB02>, <AB03>, <AB04>, <AB05>, 
111			<AB06>, <AB07>, <AB08>, <AB09>, <AB10>, 
112			{ <RTSH>, "RTSH", color="grey20" }
113	    };
114	};
115	row {
116	    top= 77;
117	    key.shape= "MODK";
118	    key.color= "grey20";
119	    keys {	<LCTL>,	{ <LALT>, 20 },
120			{ <SPCE>, "SPCE",color="white" },
121			<RALT>, { <RCTL>, 20 }
122	    };
123	};
124    }; // End of "Alpha" section
125
126    section "Editing" {
127	top= 25;
128	left= 299;
129	key.color= "grey20";
130	row {
131	    top= 1;
132	    keys { <PRSC>, <SCLK>, <PAUS> };
133	};
134	row {
135	    top= 33;
136	    keys { <INS>, <HOME>, <PGUP> };
137	};
138	row {
139	    top= 53;
140	    keys { <DELE>, <END>, <PGDN> };
141	};
142	row {
143	    top= 91;
144	    left= 20;
145	    keys { <UP> };
146	};
147	row {
148	    top= 110;
149	    keys { <LEFT>, <DOWN>, <RGHT> };
150	};
151    }; // End of "Editing" section
152
153    shape "LEDS" { cornerRadius= 0, { [ 76 ,20 ] } };
154    shape "LED"  { cornerRadius= 0, { [  3, 1.5] } };
155    solid "LedPanel" {
156	shape= "LEDS";
157	top=  25;
158	left= 364;
159	color= "grey10";
160    };
161    indicator.onColor= "green";
162    indicator.offColor= "green30";
163    indicator.top= 40.5;
164    indicator.shape= "LED";
165    indicator "Num Lock"     { left= 372; };
166    indicator "Caps Lock"    { left= 397; };
167    indicator "Scro llLock"  { left= 422; };
168
169    text.font= "helvetica";
170    text.weight= "bold";
171    text.slant= "r";
172    text.fontWidth= "normal";
173    text.fontSize= 12;
174    text.top= 39.5;
175    text.color= "black";
176    text "NumLockLabel"		{ left= 376.5; text="1"; };
177    text "CapsLockLabel"	{ left= 401.5; text="A"; };
178    text "ScrollLockLabel"	{ left= 426.5; text="S"; };
179    
180    logo "SGILogoImage" 	{ 
181	top= 26.5;
182	left= 396;
183	name= "SGI"; 
184	shape= "LOGO"; 
185    };
186    text.font= "helvetica";
187    text.weight= "bold";
188    text.slant= "o";
189    text.fontWidth= "narrow";
190    text.fontSize= 18;
191    text "SiliconLogoText"	{
192	top= 27;
193	left= 375;
194	width= 20;
195	text= "Silicon";
196    };
197    text "GraphicsLogoText"	{
198	top= 27;
199	left= 409;
200	width= 20;
201	text= "Graphics";
202    };
203
204    section "Keypad" {
205	top= 58;
206	left= 363;
207	row {
208	    top= 1;
209	    key.color= "grey20";
210	    keys { <NMLK>, <KPDV>, <KPMU>, <KPSU> };
211	};
212	row {
213	    top= 20;
214	    keys { <KP7>, <KP8>, <KP9>, { <KPAD>, "KPAD", color= "grey20" } };
215	};
216	row {
217	    top= 39;
218	    keys { <KP4>, <KP5>, <KP6> };
219    	};
220	row {
221	    top= 58;
222	    keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPAD", color= "grey20" } };
223	};
224	row {
225	    top= 77;
226	    keys { { <KP0>, "KP0" }, <KPDL> };
227	};
228    }; // End of "Keypad" section
229    alias <AC00> = <CAPS>;
230    alias <AA00> = <LCTL>;
231};
232
233xkb_geometry "pc102" {
234
235    // This is an approximate layout for 102-key SGI international
236    // keyboards.  I just took a similar layout (101 key PC keyboard)
237    // and adjusted the sizes of a few keys by eye.  I didn't actually
238    // *measure* a real keyboard.
239
240    description= "Silicon Graphics 102-key Keyboard";
241    width= 470;
242    height= 193;
243
244    shape.cornerRadius= 1;
245    shape "EDGE" { cornerRadius=2, { [ 470, 193 ] } };
246    shape "NORM" { { [18,18] }, { [2,1], [16,17] } };
247    shape "BKSP" { { [35,18] }, { [2,1], [33,17] } };
248    shape "TABK" { { [27,18] }, { [2,1], [25,17] } };
249    shape "RTRN" {
250	approx = { [ 0, 0], [26,37] },
251	{ [ 0, 0], [26, 0], [26,37],
252	  [ 5,37], [ 5,18], [ 0,18] },
253	{ [ 1, 1], [24, 1], [24,36],
254	  [ 7,36], [ 7,17], [ 1,17] }
255    };
256    shape "CAPS" { { [ 32,18] }, { [2,1], [25,17] } };
257    shape "RTSH" { { [ 50,18] }, { [2,1], [48,17] } };
258    shape "LFSH" { { [ 22,18] }, { [2,1], [20,17] } };
259    shape "MODK" { { [ 28,18] }, { [2,1], [26,17] } };
260    shape "SPCE" { { [130,18] }, { [2,1], [128,17] } };
261    shape "KP0"  { { [ 37,18] }, { [2,1], [35,17] } };
262    shape "KPAD" { { [ 18,37] }, { [2,1], [16,36] } };
263    shape "LOGO" { { [ 16,16] } };
264
265    outline "Edges" {
266	top= 0;
267	left= 0;
268	shape= "EDGE";
269    };
270
271    section.left= 19;
272    row.left= 1;
273    key.shape= "NORM";
274    key.gap=  1;
275    section "Function" {
276	top= 50;
277	row {
278	    top= 1;
279	    keys {  	{ <ESC>, color="grey20" },
280			{ <FK01>, 18}, <FK02>, <FK03>, <FK04>,
281			{ <FK05>, 10}, <FK06>, <FK07>, <FK08>,
282			{ <FK09>, 10}, <FK10>, <FK11>, <FK12>
283	    };
284	};
285    }; // End of "Function" section
286
287    section "Alpha" {
288	top= 83;
289	row {
290	    top= 1;
291	    keys { 	<TLDE>, <AE01>, <AE02>, <AE03>, <AE04>,
292			<AE05>, <AE06>, <AE07>, <AE08>, <AE09>,
293			<AE10>, <AE11>, <AE12>,
294			{ <BKSP>, "BKSP", color= "grey20" }
295	    };
296	};
297	row {
298	    top= 20;
299	    keys { 	{ <TAB>, "TABK", color= "grey20" },
300			<AD01>, <AD02>, <AD03>, <AD04>, <AD05>, 
301			<AD06>, <AD07>, <AD08>, <AD09>, <AD10>, 
302			<AD11>, <AD12>,
303			{ <RTRN>, "RTRN", color= "grey20" }
304	    };
305	};
306	row {
307	    top= 39;
308	    keys { 	{ <CAPS>, "CAPS", color= "grey20" },
309			<AC01>, <AC02>, <AC03>, <AC04>, <AC05>, 
310			<AC06>, <AC07>, <AC08>, <AC09>, <AC10>, 
311			<AC11>, <BKSL>
312	    };
313	};
314	row {
315	    top= 58;
316	    keys { 	{ <LFSH>, "LFSH", color= "grey20" }, <LSGT>,
317			<AB01>, <AB02>, <AB03>, <AB04>, <AB05>, 
318			<AB06>, <AB07>, <AB08>, <AB09>, <AB10>, 
319			{ <RTSH>, "RTSH", color= "grey20" }
320	    };
321	};
322	row {
323	    top= 77;
324	    key.shape= "MODK";
325	    key.color= "grey20";
326	    keys {	<LCTL>,
327			{ <LALT>, 19 },
328			{ <SPCE>, "SPCE", color="white" },
329			<RALT>,
330			{ <RCTL>, 19 }
331	    };
332	};
333    }; // End of "Alpha" section
334
335    section "Editing" {
336	top= 50;
337	left= 308;
338	key.color= "grey20";
339	row {
340	    top= 1;
341	    keys { <PRSC>, <SCLK>, <PAUS> };
342	};
343	row {
344	    top= 33;
345	    keys { <INS>, <HOME>, <PGUP> };
346	};
347	row {
348	    top= 53;
349	    keys { <DELE>, <END>, <PGDN> };
350	};
351	row {
352	    top= 91;
353	    left= 20;
354	    keys { <UP> };
355	};
356	row {
357	    top= 110;
358	    keys { <LEFT>, <DOWN>, <RGHT> };
359	};
360    }; // End of "Editing" section
361
362    shape "LEDS" { cornerRadius= 0, { [ 76 ,20 ] } };
363    shape "LED"  { cornerRadius= 0, { [  1,  3 ] } };
364    solid "LedPanel" {
365	shape= "LEDS";
366	top=  50;
367	left= 375;
368	color= "grey10";
369    };
370    indicator.onColor= "green";
371    indicator.offColor= "green30";
372    indicator.top= 64.5;
373    indicator.shape= "LED";
374    indicator "Num Lock"     { left= 384; };
375    indicator "Caps Lock"    { left= 409; };
376    indicator "Scroll Lock"  { left= 434; };
377    text.top= 52;
378    text.color= "black";
379    text "NumLockLabel"		{ left= 380.5; text="Num\nLock"; };
380    text "CapsLockLabel"	{ left= 405; text="Caps\nLock"; };
381    text "ScrollLockLabel"	{ left= 430; text="Scroll\nLock"; };
382
383    logo "SGILogoImage" { 
384	top= 17;
385	left= 22;
386	name= "SGI"; 
387	shape= "LOGO"; 
388    };
389    text "SGILogoText"	{
390	top= 21;
391	left= 40;
392	width= 50;
393	text= "SiliconGraphics";
394	font= "helvetica";
395	slant= "o";
396	weight= "bold";
397	setWidth= "narrow";
398	fontSize= 24;
399    };
400
401    section "Keypad" {
402	top= 83;
403	left= 374;
404	row {
405	    top= 1;
406	    key.color= "grey20";
407	    keys { <NMLK>, <KPDV>, <KPMU>, <KPSU> };
408	};
409	row {
410	    top= 20;
411	    keys { <KP7>, <KP8>, <KP9>, { <KPAD>, "KPAD", color="grey20" } };
412	};
413	row {
414	    top= 39;
415	    keys { <KP4>, <KP5>, <KP6> };
416	};
417	row {
418	    top= 58;
419	    keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPAD", color="grey20" } };
420	};
421	row {
422	    top= 77;
423	    keys { { <KP0>, "KP0" }, <KPDL> };
424	};
425    }; // End of "Keypad" section
426    alias <AC00> = <CAPS>;
427    alias <AA00> = <LCTL>;
428};
429
430xkb_geometry "jp106" {
431    description= "Silicon Graphics 106-key Japanese keyboard";
432    width= 442;
433    height= 167;
434
435    shape "EDGE" { cornerRadius= 2, { [ 442, 167 ] } };
436    shape.cornerRadius= 1;
437    shape "NORM" { { [ 18,18] }, { [2,1], [ 16,17] } };
438    shape "BKSP" { { [ 18,18] }, { [2,1], [ 16,17] } };
439    shape "TABK" { { [ 28,18] }, { [2,1], [ 26,17] } };
440    shape "BKSL" { { [ 27,18] }, { [2,1], [ 25,17] } };
441    shape "RTRN" {
442        { [0,0],[ 27,0],[27,37],[4,37],[4,18],[0,18] } ,
443        { [2,1],[ 25,1],[25,36],[5,36],[5,17],[2,17] } };
444    shape "CAPS" { { [ 32,18] }, { [2,1], [ 30,17] } };
445    shape "LFSH" { { [ 42,18] }, { [2,1], [ 40,17] } };
446    shape "RTSH" { { [ 32,18] }, { [2,1], [ 30,17] } };
447    shape "MODK" { { [ 28,18] }, { [2,1], [ 26,17] } };
448    shape "SPCE" { { [ 46,18] }, { [2,1], [ 44,17] } };
449    shape "KP0"  { { [ 37,18] }, { [2,1], [ 35,17] } };
450    shape "KPAD" { { [ 18,37] }, { [2,1], [ 16,36] } };
451    shape "LOGO" { { [ 16,16] } };
452
453    outline "Edges" {
454	top= 0;
455	left= 0;
456	shape= "EDGE";
457    };
458
459    logo "SGILogoImage" { 
460	top= 5;
461	left= 6;
462	name= "SGI"; 
463	shape= "LOGO"; 
464    };
465
466    text "SGILogoText"	{
467	top= 9;
468	left= 25;
469	width= 50;
470	text= "SiliconGraphics";
471	font= "helvetica";
472	slant= "o";
473	weight= "bold";
474	fontWidth= "narrow";
475	fontSize= 24;
476    };
477
478    shape "LEDS" { cornerRadius= 0.1, { [ 76 ,20 ] } };
479    shape "LED"  { cornerRadius= 0, { [  5,  1 ] } };
480    solid "LedPanel" {
481	shape= "LEDS";
482	top=  25;
483	left= 362;
484	color= "grey10";
485    };
486
487    indicator.onColor= "green";
488    indicator.offColor= "green30";
489    indicator.top= 40;
490    indicator.shape= "LED";
491    indicator "Num Lock"     { left= 366; };
492    indicator "Caps Lock"    { left= 391; };
493    indicator "Scroll Lock"  { left= 416; };
494    text.top= 28;
495    text.color= "black";
496    text "NumLockLabel"		{ left= 366; text="Num\nLock"; };
497    text "CapsLockLabel"	{ left= 391; text="Caps\nLock"; };
498    text "ScrollLockLabel"	{ left= 416; text="Scroll\nLock"; };
499
500    section.left= 5;
501    row.left= 1;
502    key.shape= "NORM";
503    key.gap=  1;
504    section "Function" {
505	top= 25;
506	row {
507	    top= 1;
508	    keys {  { <ESC>, color="grey20" },
509		    { <FK01>, 18 }, <FK02>, <FK03>, <FK04>,
510		    { <FK05>, 11 ,color="grey20"}, {<FK06>,color="grey20"}, 
511		    { <FK07>, color="grey20"}, {<FK08>,color="grey20"},
512		    { <FK09>, 11 }, <FK10>, <FK11>, <FK12>,
513		    { <PRSC>, 8 }, <SCLK>, <PAUS> 
514	    };
515	};
516    }; // End of "Function" section
517
518    section "Alpha" {
519	top= 61;
520	row {
521	    top= 1;
522	    keys { {<HZTG>,color="grey20"}, <AE01>, <AE02>, 
523                    <AE03>, <AE04>, <AE05>, <AE06>, <AE07>, 
524	            <AE08>, <AE09>, <AE10>, <AE11>, <AE12>,
525		    <AE13>, { <BKSP>, "BKSP", color="grey20" }
526	    };
527	};
528	row {
529	    top= 20;
530	    keys { { <TAB>, "TABK", color="grey20" },
531		   <AD01>, <AD02>, <AD03>, <AD04>, <AD05>, 
532		   <AD06>, <AD07>, <AD08>, <AD09>, <AD10>, 
533		   <AD11>, <AD12>, { <RTRN>, 1 ,"RTRN",color="grey20" }
534	    };
535	};
536	row {
537	    top= 39;
538	    keys { { <CAPS>, "CAPS", color="grey20" },
539		   <AC01>, <AC02>, <AC03>, <AC04>, <AC05>, 
540		   <AC06>, <AC07>, <AC08>, <AC09>, <AC10>, 
541		   <AC11>, <AC12>
542	    };
543	};
544	row {
545	    top= 58;
546	    keys { { <LFSH>, "LFSH", color="grey20" },
547		    <AB01>, <AB02>, <AB03>, <AB04>, <AB05>, 
548		    <AB06>, <AB07>, <AB08>, <AB09>, <AB10>, 
549		    <AB11>, { <RTSH>, "RTSH", color="grey20" }
550	    };
551	};
552	row {
553	    top= 77;
554	    key.shape= "MODK";
555	    key.color= "grey20";
556	    keys { <LCTL>, { <LALT>, 20 },<NFER>,
557		   { <SPCE>, "SPCE", color="white" },
558		   <XFER>,<HKTG>,<RALT>, { <RCTL>, 17 }
559	    };
560	};
561    }; // End of "Alpha" section
562
563    section "Editing" {
564	top= 61;
565	left= 296;
566	key.color= "grey20";
567	row {
568	    top= 1;
569	    keys { <INS>, <HOME>, <PGUP> };
570	};
571        row {
572	    top= 20;
573	    keys { <DELE>, <END>, <PGDN> };
574	};
575	row {
576	    top= 58;
577	    left= 20;
578	    keys { <UP> };
579	};
580	row {
581	    top= 77;
582	    keys { <LEFT>, <DOWN>, <RGHT> };
583	};
584    }; // End of "Editing" section
585
586    section "Keypad" {
587	top= 61;
588	left= 361;
589	row {
590	    top= 1;
591	    key.color= "grey20";
592	    keys { <NMLK>, <KPDV>, <KPMU>, <KPSU> };
593	};
594	row {
595	    top= 20;
596	    keys { <KP7>, <KP8>, <KP9>, { <KPAD>, "KPAD", color="grey20" } };
597	};
598	row {
599	    top= 39;
600	    keys { <KP4>, <KP5>, <KP6> };
601	};
602	row {
603	    top= 58;
604	    keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPAD", color="grey20" } };
605	};
606	row {
607	    top= 77;
608	    keys { { <KP0>, "KP0" }, <KPDL> };
609	};
610    }; // End of "Keypad" section
611
612    alias <AC00> = <CAPS>;
613    alias <AA00> = <LCTL>;
614
615}; // End of "jp106" geometry
616
617