1 /* xkeycaps, Copyright (c) 1991, 1992, 1993 Jamie Zawinski <jwz@jwz.org> 2 * 3 * This file describes the physical layout of a "Linux CoolKeyboard" 107 key 4 * AT PC-style keyboard. 5 * By John Gotts <jgotts@linuxsavvy.com> 6 */ 7 8 static const struct key_geometry cc107_geom_row0 [] = { 9 {7, 7}, {6, 0}, 10 {7, 7}, {7, 7}, {7, 7}, {7, 7}, {4, 0}, 11 {7, 7}, {7, 7}, {7, 7}, {7, 7}, {4, 0}, 12 {7, 7}, {7, 7}, {7, 7}, {7, 7}, {4, 0}, 13 {7, 7}, {7, 7}, {7, 7} 14 }; 15 16 static const struct key_geometry cc107_geom_row2 [] = { 17 {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, 18 {7, 7}, {7, 7}, {7, 7}, {7, 7}, {14, 7}, {4, 0}, 19 {7, 7}, {7, 7}, {7, 7}, {4, 0}, 20 {7, 7}, {7, 7}, {7, 7}, {7, 7} 21 }; 22 23 static const struct key_geometry cc107_geom_row3 [] = { 24 {10, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, 25 {7, 7}, {7, 7}, {7, 7}, {7, 7}, {11, 14}, {4, 0}, {7, 7}, {7, 7}, {7, 7}, 26 {4, 0}, 27 {7, 7}, {7, 7}, {7, 7}, {7, 14} 28 }; 29 30 static const struct key_geometry cc107_geom_row4 [] = { 31 {12, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, 32 {7, 7}, {7, 7}, {7, 7}, {16, 0}, {4, 0}, {7, 7}, {7, 7}, {7, 7}, {4,0}, 33 {7, 7}, {7, 7}, {7, 7} 34 }; 35 36 static const struct key_geometry cc107_geom_row5 [] = { 37 {16, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, {7, 7}, 38 {7, 7}, {7, 7}, {12, 7}, {7, 7}, {11, 0}, 39 {7, 7}, {11, 0}, 40 {7, 7}, {7, 7}, {7, 7}, {7, 14} 41 }; 42 43 static const struct key_geometry cc107_geom_row6 [] = { 44 {9, 7}, {9, 7}, 45 {9, 7}, {42, 7}, {9, 7}, {9, 7}, 46 {9, 7}, {9, 7}, {4, 0}, 47 {7, 7}, {7, 7}, {7, 7}, {4, 0}, 48 {14, 7}, {7, 7} 49 }; 50 51 static const struct keyboard_row_geometry cc107_geom_rows [] = { 52 ROW (cc107_geom_row0, 7), 53 EMPTYROW (5), 54 ROW (cc107_geom_row2, 7), 55 ROW (cc107_geom_row3, 7), 56 ROW (cc107_geom_row4, 7), 57 ROW (cc107_geom_row5, 7), 58 ROW (cc107_geom_row6, 7), 59 }; 60 61 static const struct keyboard_geometry cc107_geom = { 62 sizeof (cc107_geom_rows) / sizeof (struct keyboard_row_geometry), 63 cc107_geom_rows, 6, 3, 3 64 }; 65