Changes in uspace/srv/hid/input/ctl/apple.c [c072a29:b6a088f] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/hid/input/ctl/apple.c
rc072a29 rb6a088f 52 52 }; 53 53 54 #define KBD_KEY_RELEASE 0x80 55 56 static unsigned int scanmap[] = { 54 #define KBD_KEY_RELEASE 0x80 55 56 static kbd_dev_t *kbd_dev; 57 58 static int scanmap[]; 59 60 static int apple_ctl_init(kbd_dev_t *kdev) 61 { 62 kbd_dev = kdev; 63 return 0; 64 } 65 66 static void apple_ctl_parse(sysarg_t scancode) 67 { 68 kbd_event_type_t type; 69 unsigned int key; 70 71 if (scancode >= 0x100) 72 return; 73 74 if (scancode & KBD_KEY_RELEASE) { 75 scancode &= ~KBD_KEY_RELEASE; 76 type = KEY_RELEASE; 77 } else { 78 type = KEY_PRESS; 79 } 80 81 key = scanmap[scancode]; 82 if (key != 0) 83 kbd_push_event(kbd_dev, type, key); 84 } 85 86 static void apple_ctl_set_ind(kbd_dev_t *kdev, unsigned mods) 87 { 88 (void) mods; 89 } 90 91 static int scanmap[] = { 57 92 [0x00] = KC_A, 58 93 [0x01] = KC_S, … … 160 195 [0x67] = KC_F11, 161 196 [0x68] = 0, 162 [0x69] = KC_SYSREQ,197 [0x69] = 0, 163 198 [0x6a] = 0, 164 199 [0x6b] = KC_SCROLL_LOCK, … … 168 203 [0x6f] = KC_F12, 169 204 [0x70] = 0, 170 [0x71] = KC_PAUSE,205 [0x71] = 0, 171 206 [0x72] = KC_INSERT, 172 207 [0x73] = KC_HOME, … … 185 220 }; 186 221 187 static kbd_dev_t *kbd_dev;188 189 static int apple_ctl_init(kbd_dev_t *kdev)190 {191 kbd_dev = kdev;192 return 0;193 }194 195 static void apple_ctl_parse(sysarg_t scancode)196 {197 kbd_event_type_t type;198 199 if (scancode & KBD_KEY_RELEASE) {200 scancode &= ~KBD_KEY_RELEASE;201 type = KEY_RELEASE;202 } else203 type = KEY_PRESS;204 205 if (scancode >= sizeof(scanmap) / sizeof(unsigned int))206 return;207 208 unsigned int key = scanmap[scancode];209 if (key != 0)210 kbd_push_event(kbd_dev, type, key);211 }212 213 static void apple_ctl_set_ind(kbd_dev_t *kdev, unsigned mods)214 {215 (void) mods;216 }217 218 222 /** @} 219 223 */
Note:
See TracChangeset
for help on using the changeset viewer.