1154daed1Smrg//
2154daed1Smrg// Copyright (c) 1996 by Silicon Graphics Computer Systems, Inc.
3154daed1Smrg//
4154daed1Smrg// Permission to use, copy, modify, and distribute this
5154daed1Smrg// software and its documentation for any purpose and without
6154daed1Smrg// fee is hereby granted, provided that the above copyright
7154daed1Smrg// notice appear in all copies and that both that copyright
8154daed1Smrg// notice and this permission notice appear in supporting
9154daed1Smrg// documentation, and that the name of Silicon Graphics not be 
10154daed1Smrg// used in advertising or publicity pertaining to distribution 
11154daed1Smrg// of the software without specific prior written permission.
12154daed1Smrg// Silicon Graphics makes no representation about the suitability 
13154daed1Smrg// of this software for any purpose. It is provided "as is"
14154daed1Smrg// without any express or implied warranty.
15154daed1Smrg// 
16154daed1Smrg// SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS 
17154daed1Smrg// SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 
18154daed1Smrg// AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
19154daed1Smrg// GRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL 
20154daed1Smrg// DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 
21154daed1Smrg// DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 
22154daed1Smrg// OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION  WITH
23154daed1Smrg// THE USE OR PERFORMANCE OF THIS SOFTWARE.
24154daed1Smrg//
25154daed1Smrgdefault xkb_geometry "pc101" {
26154daed1Smrg
27154daed1Smrg    // This is an approximate layout for a 101-key (US/ASCII) SGI
28154daed1Smrg    // keyboard.  I just took a similar layout (101 key PC keyboard)
29154daed1Smrg    // and adjusted the sizes of a few keys by eye.  I didn't actually
30154daed1Smrg    // *measure* a real keyboard.
31154daed1Smrg
32154daed1Smrg    description= "Silicon Graphics 101-key keyboard";
33154daed1Smrg
34154daed1Smrg    width= 472;
35154daed1Smrg    height= 193;
36154daed1Smrg
37154daed1Smrg    shape "EDGE" { cornerRadius= 2, { [ 472, 193 ] } };
38154daed1Smrg    shape.cornerRadius= 1;
39154daed1Smrg    shape "NORM" { { [ 18,18] }, { [2,1], [16,17] } };
40154daed1Smrg    shape "BKSP" { { [ 37,18] }, { [2,1], [35,17] } };
41154daed1Smrg    shape "TABK" { { [ 28,18] }, { [2,1], [26,17] } };
42154daed1Smrg    shape "BKSL" { { [ 27,18] }, { [2,1], [25,17] } };
43154daed1Smrg    shape "RTRN" { { [ 40,18] }, { [2,1], [37,17] } };
44154daed1Smrg    shape "CAPS" { { [ 34,18] }, { [2,1], [29,17] } };
45154daed1Smrg    shape "RTSH" { { [ 49,18] }, { [2,1], [47,17] } };
46154daed1Smrg    shape "LFSH" { { [ 44,18] }, { [2,1], [42,17] } };
47154daed1Smrg    shape "MODK" { { [ 28,18] }, { [2,1], [26,17] } };
48154daed1Smrg    shape "SPCE" { { [130,18] }, { [2,1], [128,17] } };
49154daed1Smrg    shape "KP0"  { { [ 37,18] }, { [2,1], [35,17] } };
50154daed1Smrg    shape "KPAD" { { [ 18,37] }, { [2,1], [16,36] } };
51154daed1Smrg    shape "LOGO" { { [ 16,16] } };
52154daed1Smrg
53154daed1Smrg    outline "Edges" {
54154daed1Smrg	top= 0;
55154daed1Smrg	left= 0;
56154daed1Smrg	shape= "EDGE";
57154daed1Smrg    };
58154daed1Smrg
59154daed1Smrg    section.left= 19;
60154daed1Smrg    row.left= 1;
61154daed1Smrg    key.shape= "NORM";
62154daed1Smrg    key.gap=  1;
63154daed1Smrg    section "Function" {
64154daed1Smrg	top= 50;
65154daed1Smrg	row {
66154daed1Smrg	    top= 1;
67154daed1Smrg	    keys {	{ <ESC>, color="grey20" },
68154daed1Smrg			{ <FK01>, 19}, <FK02>, <FK03>, <FK04>,
69154daed1Smrg			{ <FK05>, 11}, <FK06>, <FK07>, <FK08>,
70154daed1Smrg			{ <FK09>, 11}, <FK10>, <FK11>, <FK12>
71154daed1Smrg	    };
72154daed1Smrg	};
73154daed1Smrg    }; // End of "Function" section
74154daed1Smrg
75154daed1Smrg    section "Alpha" {
76154daed1Smrg	top= 83;
77154daed1Smrg	row {
78154daed1Smrg	    top= 1;
79154daed1Smrg	    keys { 	<TLDE>, <AE01>, <AE02>, <AE03>, <AE04>,
80154daed1Smrg			<AE05>, <AE06>, <AE07>, <AE08>, <AE09>,
81154daed1Smrg			<AE10>, <AE11>, <AE12>,
82154daed1Smrg			{ <BKSP>, "BKSP", color="grey20" }
83154daed1Smrg	    };
84154daed1Smrg	};
85154daed1Smrg	row {
86154daed1Smrg	    top= 20;
87154daed1Smrg	    keys {	{ <TAB>, "TABK", color= "grey20" },
88154daed1Smrg			<AD01>, <AD02>, <AD03>, <AD04>, <AD05>, 
89154daed1Smrg			<AD06>, <AD07>, <AD08>, <AD09>, <AD10>, 
90154daed1Smrg			<AD11>, <AD12>,
91154daed1Smrg			{ <BKSL>, "BKSL" }
92154daed1Smrg	    };	
93154daed1Smrg	};
94154daed1Smrg	row {
95154daed1Smrg	    top= 39;
96154daed1Smrg	    keys { 	{ <CAPS>, "CAPS", color="grey20" },
97154daed1Smrg	 		<AC01>, <AC02>, <AC03>, <AC04>, <AC05>, 
98154daed1Smrg			<AC06>, <AC07>, <AC08>, <AC09>, <AC10>, 
99154daed1Smrg			<AC11>, { <RTRN>, "RTRN", color="grey20" }
100154daed1Smrg	    };
101154daed1Smrg	};
102154daed1Smrg	row {
103154daed1Smrg	    top= 58;
104154daed1Smrg	    keys {	{ <LFSH>, "LFSH", color="grey20" }, 
105154daed1Smrg	 		<AB01>, <AB02>, <AB03>, <AB04>, <AB05>, 
106154daed1Smrg			<AB06>, <AB07>, <AB08>, <AB09>, <AB10>, 
107154daed1Smrg			{ <RTSH>, "RTSH", color="grey20" }
108154daed1Smrg	    };
109154daed1Smrg	};
110154daed1Smrg	row {
111154daed1Smrg	    top= 77;
112154daed1Smrg	    key.shape= "MODK";
113154daed1Smrg	    key.color= "grey20";
114154daed1Smrg	    keys {	<LCTL>,	{ <LALT>, 20 },
115154daed1Smrg			{ <SPCE>, "SPCE",color="white" },
116154daed1Smrg			<RALT>, { <RCTL>, 20 }
117154daed1Smrg	    };
118154daed1Smrg	};
119154daed1Smrg    }; // End of "Alpha" section
120154daed1Smrg
121154daed1Smrg    section "Editing" {
122154daed1Smrg	top= 50;
123154daed1Smrg	left= 312;
124154daed1Smrg	key.color= "grey20";
125154daed1Smrg	row {
126154daed1Smrg	    top= 1;
127154daed1Smrg	    keys { <PRSC>, <SCLK>, <PAUS> };
128154daed1Smrg	};
129154daed1Smrg	row {
130154daed1Smrg	    top= 33;
131154daed1Smrg	    keys { <INS>, <HOME>, <PGUP> };
132154daed1Smrg	};
133154daed1Smrg	row {
134154daed1Smrg	    top= 53;
135154daed1Smrg	    keys { <DELE>, <END>, <PGDN> };
136154daed1Smrg	};
137154daed1Smrg	row {
138154daed1Smrg	    top= 91;
139154daed1Smrg	    left= 20;
140154daed1Smrg	    keys { <UP> };
141154daed1Smrg	};
142154daed1Smrg	row {
143154daed1Smrg	    top= 110;
144154daed1Smrg	    keys { <LEFT>, <DOWN>, <RGHT> };
145154daed1Smrg	};
146154daed1Smrg    }; // End of "Editing" section
147154daed1Smrg
148154daed1Smrg    shape "LEDS" { cornerRadius= 0, { [ 76 ,20 ] } };
149154daed1Smrg    shape "LED"  { cornerRadius= 0, { [  1,  3 ] } };
150154daed1Smrg    solid "LedPanel" {
151154daed1Smrg	shape= "LEDS";
152154daed1Smrg	top=  50;
153154daed1Smrg	left= 377;
154154daed1Smrg	color= "grey10";
155154daed1Smrg    };
156154daed1Smrg    indicator.onColor= "green";
157154daed1Smrg    indicator.offColor= "green30";
158154daed1Smrg    indicator.top= 64.5;
159154daed1Smrg    indicator.shape= "LED";
160154daed1Smrg    indicator "Num Lock"     { left= 386; };
161154daed1Smrg    indicator "Caps Lock"    { left= 411; };
162154daed1Smrg    indicator "Scroll Lock"  { left= 436; };
163154daed1Smrg    text.top= 52;
164154daed1Smrg    text.color= "black";
165154daed1Smrg    text "NumLockLabel"		{ left= 382.5; text="Num\nLock"; };
166154daed1Smrg    text "CapsLockLabel"	{ left= 407; text="Caps\nLock"; };
167154daed1Smrg    text "ScrollLockLabel"	{ left= 432; text="Scroll\nLock"; };
168154daed1Smrg    
169154daed1Smrg    logo "SGILogoImage" 	{ 
170154daed1Smrg	top= 17;
171154daed1Smrg	left= 22;
172154daed1Smrg	name= "SGI"; 
173154daed1Smrg	shape= "LOGO"; 
174154daed1Smrg    };
175154daed1Smrg    text "SGILogoText"	{
176154daed1Smrg	top= 21;
177154daed1Smrg	left= 40;
178154daed1Smrg	width= 50;
179154daed1Smrg	text= "SiliconGraphics";
180154daed1Smrg	font= "helvetica";
181154daed1Smrg	slant= "o";
182154daed1Smrg	weight= "bold";
183154daed1Smrg	fontWidth= "narrow";
184154daed1Smrg	fontSize= 24;
185154daed1Smrg    };
186154daed1Smrg
187154daed1Smrg    section "Keypad" {
188154daed1Smrg	top= 83;
189154daed1Smrg	left= 376;
190154daed1Smrg	row {
191154daed1Smrg	    top= 1;
192154daed1Smrg	    key.color= "grey20";
193154daed1Smrg	    keys { <NMLK>, <KPDV>, <KPMU>, <KPSU> };
194154daed1Smrg	};
195154daed1Smrg	row {
196154daed1Smrg	    top= 20;
197154daed1Smrg	    keys { <KP7>, <KP8>, <KP9>, { <KPAD>, "KPAD", color= "grey20" } };
198154daed1Smrg	};
199154daed1Smrg	row {
200154daed1Smrg	    top= 39;
201154daed1Smrg	    keys { <KP4>, <KP5>, <KP6> };
202154daed1Smrg    	};
203154daed1Smrg	row {
204154daed1Smrg	    top= 58;
205154daed1Smrg	    keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPAD", color= "grey20" } };
206154daed1Smrg	};
207154daed1Smrg	row {
208154daed1Smrg	    top= 77;
209154daed1Smrg	    keys { { <KP0>, "KP0" }, <KPDL> };
210154daed1Smrg	};
211154daed1Smrg    }; // End of "Keypad" section
212154daed1Smrg    alias <AC00> = <CAPS>;
213154daed1Smrg    alias <AA00> = <LCTL>;
214154daed1Smrg};
215154daed1Smrgxkb_geometry "pc102" {
216154daed1Smrg
217154daed1Smrg    // This is an approximate layout for 102-key SGI international
218154daed1Smrg    // keyboards.  I just took a similar layout (101 key PC keyboard)
219154daed1Smrg    // and adjusted the sizes of a few keys by eye.  I didn't actually
220154daed1Smrg    // *measure* a real keyboard.
221154daed1Smrg
222154daed1Smrg    description= "Silicon Graphics 102-key Keyboard";
223154daed1Smrg    width= 470;
224154daed1Smrg    height= 193;
225154daed1Smrg
226154daed1Smrg    shape.cornerRadius= 1;
227154daed1Smrg    shape "EDGE" { cornerRadius=2, { [ 470, 193 ] } };
228154daed1Smrg    shape "NORM" { { [18,18] }, { [2,1], [16,17] } };
229154daed1Smrg    shape "BKSP" { { [35,18] }, { [2,1], [33,17] } };
230154daed1Smrg    shape "TABK" { { [27,18] }, { [2,1], [25,17] } };
231154daed1Smrg    shape "RTRN" {
232154daed1Smrg	approx = { [ 0, 0], [26,37] },
233154daed1Smrg	{ [ 0, 0], [26, 0], [26,37],
234154daed1Smrg	  [ 5,37], [ 5,18], [ 0,18] },
235154daed1Smrg	{ [ 1, 1], [24, 1], [24,36],
236154daed1Smrg	  [ 7,36], [ 7,17], [ 1,17] }
237154daed1Smrg    };
238154daed1Smrg    shape "CAPS" { { [ 32,18] }, { [2,1], [25,17] } };
239154daed1Smrg    shape "RTSH" { { [ 50,18] }, { [2,1], [48,17] } };
240154daed1Smrg    shape "LFSH" { { [ 22,18] }, { [2,1], [20,17] } };
241154daed1Smrg    shape "MODK" { { [ 28,18] }, { [2,1], [26,17] } };
242154daed1Smrg    shape "SPCE" { { [130,18] }, { [2,1], [128,17] } };
243154daed1Smrg    shape "KP0"  { { [ 37,18] }, { [2,1], [35,17] } };
244154daed1Smrg    shape "KPAD" { { [ 18,37] }, { [2,1], [16,36] } };
245154daed1Smrg    shape "LOGO" { { [ 16,16] } };
246154daed1Smrg
247154daed1Smrg    outline "Edges" {
248154daed1Smrg	top= 0;
249154daed1Smrg	left= 0;
250154daed1Smrg	shape= "EDGE";
251154daed1Smrg    };
252154daed1Smrg
253154daed1Smrg    section.left= 19;
254154daed1Smrg    row.left= 1;
255154daed1Smrg    key.shape= "NORM";
256154daed1Smrg    key.gap=  1;
257154daed1Smrg    section "Function" {
258154daed1Smrg	top= 50;
259154daed1Smrg	row {
260154daed1Smrg	    top= 1;
261154daed1Smrg	    keys {  	{ <ESC>, color="grey20" },
262154daed1Smrg			{ <FK01>, 18}, <FK02>, <FK03>, <FK04>,
263154daed1Smrg			{ <FK05>, 10}, <FK06>, <FK07>, <FK08>,
264154daed1Smrg			{ <FK09>, 10}, <FK10>, <FK11>, <FK12>
265154daed1Smrg	    };
266154daed1Smrg	};
267154daed1Smrg    }; // End of "Function" section
268154daed1Smrg
269154daed1Smrg    section "Alpha" {
270154daed1Smrg	top= 83;
271154daed1Smrg	row {
272154daed1Smrg	    top= 1;
273154daed1Smrg	    keys { 	<TLDE>, <AE01>, <AE02>, <AE03>, <AE04>,
274154daed1Smrg			<AE05>, <AE06>, <AE07>, <AE08>, <AE09>,
275154daed1Smrg			<AE10>, <AE11>, <AE12>,
276154daed1Smrg			{ <BKSP>, "BKSP", color= "grey20" }
277154daed1Smrg	    };
278154daed1Smrg	};
279154daed1Smrg	row {
280154daed1Smrg	    top= 20;
281154daed1Smrg	    keys { 	{ <TAB>, "TABK", color= "grey20" },
282154daed1Smrg			<AD01>, <AD02>, <AD03>, <AD04>, <AD05>, 
283154daed1Smrg			<AD06>, <AD07>, <AD08>, <AD09>, <AD10>, 
284154daed1Smrg			<AD11>, <AD12>,
285154daed1Smrg			{ <RTRN>, "RTRN", color= "grey20" }
286154daed1Smrg	    };
287154daed1Smrg	};
288154daed1Smrg	row {
289154daed1Smrg	    top= 39;
290154daed1Smrg	    keys { 	{ <CAPS>, "CAPS", color= "grey20" },
291154daed1Smrg			<AC01>, <AC02>, <AC03>, <AC04>, <AC05>, 
292154daed1Smrg			<AC06>, <AC07>, <AC08>, <AC09>, <AC10>, 
293154daed1Smrg			<AC11>, <BKSL>
294154daed1Smrg	    };
295154daed1Smrg	};
296154daed1Smrg	row {
297154daed1Smrg	    top= 58;
298154daed1Smrg	    keys { 	{ <LFSH>, "LFSH", color= "grey20" }, <LSGT>,
299154daed1Smrg			<AB01>, <AB02>, <AB03>, <AB04>, <AB05>, 
300154daed1Smrg			<AB06>, <AB07>, <AB08>, <AB09>, <AB10>, 
301154daed1Smrg			{ <RTSH>, "RTSH", color= "grey20" }
302154daed1Smrg	    };
303154daed1Smrg	};
304154daed1Smrg	row {
305154daed1Smrg	    top= 77;
306154daed1Smrg	    key.shape= "MODK";
307154daed1Smrg	    key.color= "grey20";
308154daed1Smrg	    keys {	<LCTL>,
309154daed1Smrg			{ <LALT>, 19 },
310154daed1Smrg			{ <SPCE>, "SPCE", color="white" },
311154daed1Smrg			<RALT>,
312154daed1Smrg			{ <RCTL>, 19 }
313154daed1Smrg	    };
314154daed1Smrg	};
315154daed1Smrg    }; // End of "Alpha" section
316154daed1Smrg
317154daed1Smrg    section "Editing" {
318154daed1Smrg	top= 50;
319154daed1Smrg	left= 308;
320154daed1Smrg	key.color= "grey20";
321154daed1Smrg	row {
322154daed1Smrg	    top= 1;
323154daed1Smrg	    keys { <PRSC>, <SCLK>, <PAUS> };
324154daed1Smrg	};
325154daed1Smrg	row {
326154daed1Smrg	    top= 33;
327154daed1Smrg	    keys { <INS>, <HOME>, <PGUP> };
328154daed1Smrg	};
329154daed1Smrg	row {
330154daed1Smrg	    top= 53;
331154daed1Smrg	    keys { <DELE>, <END>, <PGDN> };
332154daed1Smrg	};
333154daed1Smrg	row {
334154daed1Smrg	    top= 91;
335154daed1Smrg	    left= 20;
336154daed1Smrg	    keys { <UP> };
337154daed1Smrg	};
338154daed1Smrg	row {
339154daed1Smrg	    top= 110;
340154daed1Smrg	    keys { <LEFT>, <DOWN>, <RGHT> };
341154daed1Smrg	};
342154daed1Smrg    }; // End of "Editing" section
343154daed1Smrg
344154daed1Smrg    shape "LEDS" { cornerRadius= 0, { [ 76 ,20 ] } };
345154daed1Smrg    shape "LED"  { cornerRadius= 0, { [  1,  3 ] } };
346154daed1Smrg    solid "LedPanel" {
347154daed1Smrg	shape= "LEDS";
348154daed1Smrg	top=  50;
349154daed1Smrg	left= 375;
350154daed1Smrg	color= "grey10";
351154daed1Smrg    };
352154daed1Smrg    indicator.onColor= "green";
353154daed1Smrg    indicator.offColor= "green30";
354154daed1Smrg    indicator.top= 64.5;
355154daed1Smrg    indicator.shape= "LED";
356154daed1Smrg    indicator "Num Lock"     { left= 384; };
357154daed1Smrg    indicator "Caps Lock"    { left= 409; };
358154daed1Smrg    indicator "Scroll Lock"  { left= 434; };
359154daed1Smrg    text.top= 52;
360154daed1Smrg    text.color= "black";
361154daed1Smrg    text "NumLockLabel"		{ left= 380.5; text="Num\nLock"; };
362154daed1Smrg    text "CapsLockLabel"	{ left= 405; text="Caps\nLock"; };
363154daed1Smrg    text "ScrollLockLabel"	{ left= 430; text="Scroll\nLock"; };
364154daed1Smrg
365154daed1Smrg    logo "SGILogoImage" { 
366154daed1Smrg	top= 17;
367154daed1Smrg	left= 22;
368154daed1Smrg	name= "SGI"; 
369154daed1Smrg	shape= "LOGO"; 
370154daed1Smrg    };
371154daed1Smrg    text "SGILogoText"	{
372154daed1Smrg	top= 21;
373154daed1Smrg	left= 40;
374154daed1Smrg	width= 50;
375154daed1Smrg	text= "SiliconGraphics";
376154daed1Smrg	font= "helvetica";
377154daed1Smrg	slant= "o";
378154daed1Smrg	weight= "bold";
379154daed1Smrg	setWidth= "narrow";
380154daed1Smrg	fontSize= 24;
381154daed1Smrg    };
382154daed1Smrg
383154daed1Smrg    section "Keypad" {
384154daed1Smrg	top= 83;
385154daed1Smrg	left= 374;
386154daed1Smrg	row {
387154daed1Smrg	    top= 1;
388154daed1Smrg	    key.color= "grey20";
389154daed1Smrg	    keys { <NMLK>, <KPDV>, <KPMU>, <KPSU> };
390154daed1Smrg	};
391154daed1Smrg	row {
392154daed1Smrg	    top= 20;
393154daed1Smrg	    keys { <KP7>, <KP8>, <KP9>, { <KPAD>, "KPAD", color="grey20" } };
394154daed1Smrg	};
395154daed1Smrg	row {
396154daed1Smrg	    top= 39;
397154daed1Smrg	    keys { <KP4>, <KP5>, <KP6> };
398154daed1Smrg	};
399154daed1Smrg	row {
400154daed1Smrg	    top= 58;
401154daed1Smrg	    keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPAD", color="grey20" } };
402154daed1Smrg	};
403154daed1Smrg	row {
404154daed1Smrg	    top= 77;
405154daed1Smrg	    keys { { <KP0>, "KP0" }, <KPDL> };
406154daed1Smrg	};
407154daed1Smrg    }; // End of "Keypad" section
408154daed1Smrg    alias <AC00> = <CAPS>;
409154daed1Smrg    alias <AA00> = <LCTL>;
410154daed1Smrg};
411