Changeset 917
- Timestamp:
- 08/01/10 08:21:22 (3 years ago)
- Location:
- trunk
- Files:
-
- 3 edited
-
core/gui.c (modified) (1 diff)
-
include/camera.h (modified) (1 diff)
-
platform/a590/kbd.c (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/core/gui.c
r911 r917 1447 1447 static const char* names[]={ "Shrtcut", "Flash", "Video"}; 1448 1448 static const int keys[]={ KEY_PRINT, KEY_FLASH, KEY_VIDEO }; 1449 #elif defined(CAMERA_a570) 1449 #elif defined(CAMERA_a570) || defined(CAMERA_a590) 1450 1450 static const char* names[]={ "Print", "Display"}; 1451 1451 static const int keys[] = {KEY_PRINT, KEY_DISPLAY}; -
trunk/include/camera.h
r914 r917 534 534 535 535 #elif defined (CAMERA_a590) 536 #define CAM_ADJUSTABLE_ALT_BUTTON 1 536 537 #define CAM_PROPSET 2 537 538 #define CAM_DRYOS 1 -
trunk/platform/a590/kbd.c
r584 r917 241 241 physw_status[1] = kbd_new_state[1]; 242 242 physw_status[2] = kbd_new_state[2]; 243 physw_status[1] |= alt_mode_key_mask; 243 244 } else { 244 245 // override keys … … 341 342 long kbd_get_pressed_key() 342 343 { 343 int i;344 for (i=0;keymap[i].hackkey;i++){344 int i; 345 for (i=0;keymap[i].hackkey;i++){ 345 346 if ((kbd_new_state[keymap[i].grp] & keymap[i].canonkey) == 0){ 346 return keymap[i].hackkey;347 } 348 }349 return 0;347 return keymap[i].hackkey; 348 } 349 } 350 return 0; 350 351 } 351 352 352 353 long kbd_get_clicked_key() 353 354 { 354 int i;355 for (i=0;keymap[i].hackkey;i++){355 int i; 356 for (i=0;keymap[i].hackkey;i++){ 356 357 if (((kbd_prev_state[keymap[i].grp] & keymap[i].canonkey) != 0) && 357 ((kbd_new_state[keymap[i].grp] & keymap[i].canonkey) == 0)){358 return keymap[i].hackkey;359 }360 }361 return 0;358 (kbd_new_state[keymap[i].grp] & keymap[i].canonkey) == 0)){ 359 return keymap[i].hackkey; 360 } 361 } 362 return 0; 362 363 } 363 364 … … 391 392 } 392 393 } 393 394 395 394 } 396 395 … … 434 433 435 434 static KeyMap keymap[] = { 436 /* tiny bug: key order matters. see kbd_get_pressed_key()437 * for example438 */439 { 2, KEY_UP , 0x00000010 },435 /* tiny bug: key order matters. see kbd_get_pressed_key() 436 * for example 437 */ 438 { 2, KEY_UP , 0x00000010 }, 440 439 { 2, KEY_DOWN , 0x00000020 }, 441 440 { 2, KEY_LEFT , 0x00000080 }, 442 441 { 2, KEY_RIGHT , 0x00000040 }, 443 442 { 2, KEY_SET , 0x00000100 }, 444 { 1, KEY_SHOOT_FULL , 0xC0000000 }, 443 { 1, KEY_SHOOT_FULL , 0xC0000000 }, 445 444 { 1, KEY_SHOOT_HALF , 0x40000000 }, 446 445 { 2, KEY_ZOOM_IN , 0x00000004 }, … … 451 450 { 1, KEY_ERASE , 0x00800000 }, 452 451 { 0, 0, 0 } 453 454 452 }; 455 453 456 454 457 458 455 void kbd_fetch_data(long *dst) 459 456 { 460 volatile long *mmio0 = (void*)0xc0220200; 461 volatile long *mmio1 = (void*)0xc0220204; 462 volatile long *mmio2 = (void*)0xc0220208; 463 464 dst[0] = *mmio0; 465 dst[1] = *mmio1; 466 dst[2] = *mmio2 & 0xffff; 467 } 457 volatile long *mmio0 = (void*)0xc0220200; 458 volatile long *mmio1 = (void*)0xc0220204; 459 volatile long *mmio2 = (void*)0xc0220208; 460 461 dst[0] = *mmio0; 462 dst[1] = *mmio1; 463 dst[2] = *mmio2 & 0xffff; 464 } 465 466 void kbd_set_alt_mode_key_mask(long key) 467 { 468 int i; 469 for (i=0; keymap[i].hackkey; ++i) { 470 if (keymap[i].hackkey == key) { 471 alt_mode_key_mask = keymap[i].canonkey; 472 return; 473 } 474 } 475 }
Note: See TracChangeset
for help on using the changeset viewer.