10 struct _VK_TO_FUNCTION_TABLE *
pVkToF;
51#define KS_DOWN_BIT 0x80
52#define KS_LOCK_BIT 0x01
54#define SC_KEY_UP 0x8000
56#define LP_DO_NOT_CARE_BIT (1<<25)
65#define ThreadHasInputAccess(W32Thread) (TRUE)
99#define GET_KS_BYTE(vk) ((vk) * 2 / 8)
100#define GET_KS_DOWN_BIT(vk) (1 << (((vk) % 4)*2))
101#define GET_KS_LOCK_BIT(vk) (1 << (((vk) % 4)*2 + 1))
102#define IS_KEY_DOWN(ks, vk) (((ks)[GET_KS_BYTE(vk)] & GET_KS_DOWN_BIT(vk)) ? TRUE : FALSE)
103#define IS_KEY_LOCKED(ks, vk) (((ks)[GET_KS_BYTE(vk)] & GET_KS_LOCK_BIT(vk)) ? TRUE : FALSE)
104#define SET_KEY_DOWN(ks, vk, down) (ks)[GET_KS_BYTE(vk)] = ((down) ? \
105 ((ks)[GET_KS_BYTE(vk)] | GET_KS_DOWN_BIT(vk)) : \
106 ((ks)[GET_KS_BYTE(vk)] & ~GET_KS_DOWN_BIT(vk)))
107#define SET_KEY_LOCKED(ks, vk, down) (ks)[GET_KS_BYTE(vk)] = ((down) ? \
108 ((ks)[GET_KS_BYTE(vk)] | GET_KS_LOCK_BIT(vk)) : \
109 ((ks)[GET_KS_BYTE(vk)] & ~GET_KS_LOCK_BIT(vk)))
struct _ATTACHINFO * paiNext
struct _KBDTABLES * pKbdTbl
struct tagKBDFILE * pkfNext
struct _VK_TO_FUNCTION_TABLE * pVkToF
NTSTATUS NTAPI InitKeyboardImpl(VOID)