Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 569 → Rev 666

/shark/trunk/drivers/input/include/drivers/shark_keyb26.h
71,16 → 71,16
BYTE status;
} KEY_EVT;
 
#define isRepeated(k) (k.status == KEY_REPEATED)
#define isReleased(k) (k.status == KEY_RELEASED)
#define isRepeated(k) ((k).status == KEY_REPEATED)
#define isReleased(k) ((k).status == KEY_RELEASED)
 
#define isScanCode(k) (k.flag & SCAN_BIT)
#define isLeftShift(k) (k.flag & SHFL_BIT)
#define isRightShift(k) (k.flag & SHFR_BIT)
#define isLeftCtrl(k) (k.flag & CNTL_BIT)
#define isRightCtrl(k) (k.flag & CNTR_BIT)
#define isLeftAlt(k) (k.flag & ALTL_BIT)
#define isRightAlt(k) (k.flag & ALTR_BIT)
#define isScanCode(k) ((k).flag & SCAN_BIT)
#define isLeftShift(k) ((k).flag & SHFL_BIT)
#define isRightShift(k) ((k).flag & SHFR_BIT)
#define isLeftCtrl(k) ((k).flag & CNTL_BIT)
#define isRightCtrl(k) ((k).flag & CNTR_BIT)
#define isLeftAlt(k) ((k).flag & ALTL_BIT)
#define isRightAlt(k) ((k).flag & ALTR_BIT)
 
#define keyb_getchar() keyb_getch(BLOCK)
 
/shark/trunk/drivers/input/shark/shark_keyb.c
338,17 → 338,19
#endif
found = FALSE;
for (i = 0; i < lastExc; i++)
if ((keyExcTable[i].evt.scan == dt.scan) &&
(keyExcTable[i].evt.flag == dt.flag) &&
if (((keyExcTable[i].evt.flag & ~SCAN_BIT) == (dt.flag & ~SCAN_BIT)) &&
(keyExcTable[i].evt.status == dt.status)) {
if ( ((keyExcTable[i].evt.scan == dt.scan) || (keyExcTable[i].evt.scan == 0)) &&
((keyExcTable[i].evt.ascii == dt.ascii) || (keyExcTable[i].evt.ascii == 0)) ){
#ifdef __KEYB_DEBUG__
printk("shark_keyb.c: Key_Hook ( %2x - %2x - %1d) -> ( %2x - %2x - %1d)\n",
dt.scan, dt.flag, dt.status,
keyExcTable[i].evt.scan, keyExcTable[i].evt.flag, keyExcTable[i].evt.status);
printk("shark_keyb.c: Key_Hook ( %2x - %2x - %1d) -> ( %2x - %2x - %1d)\n",
dt.scan, dt.ascii, dt.flag, dt.status,
keyExcTable[i].evt.scan, keyExcTable[i].evt.ascii, keyExcTable[i].evt.flag, keyExcTable[i].evt.status);
#endif
keyExcTable[i].func(&dt);
if (keyExcTable[i].lock == TRUE)
found = TRUE;
keyExcTable[i].func(&dt);
if (keyExcTable[i].lock == TRUE)
found = TRUE;
}
}
/* when the port is full, data is lost */
if (!found)