1 #ifndef PLATFORM_KBD_H 2 #define PLATFORM_KBD_H 3 // plaform specific keyboard defines, see core/kbd_common.c for documentation 4 // non-standard key state update to handle inverted keys, etc 5 #define KBD_CUSTOM_UPDATE_KEY_STATE 1 6 7 #define KEYS_MASK0 (0x00020000) 8 #define KEYS_MASK1 (0x00000000) 9 #define KEYS_MASK2 (0x01f001f4) 10 #define KEYS_INV2 (0x01f00000) 11 /* 12 the 4 button states residing in the upper half of physw_status[2] seem to be inverted 13 to handle these correctly, their value needs to be inverted: 14 - when reading from physw_status[2] to the state variables 15 - when writing to physw_status[2] from the state variables 16 KEYS_INV2 should be used for that 17 SD_READONLY_FLAG and USB_MASK are not affected by this 18 19 when idle, physw_status[2] looks like: "000001000000000xxxxx000111110100" 20 KEYS_MASK2 is "00000001011100000000000111110100" 21 */ 22 23 #define SD_READONLY_FLAG (0x40000) 24 #define SD_READONLY_IDX 2 25 #define USB_MASK (0x80000) 26 #define USB_IDX 2 27 #endif