From af5f2563385fe37c2b6978b67292fa51de0d9ffe Mon Sep 17 00:00:00 2001 From: PulkoMandy Date: Mon, 3 Feb 2025 09:07:56 +0100 Subject: [PATCH] InterfaceDefs: complete ASCII control char definitions Make it clear that this enum just defines ASCII control characters, and there is no 'free space'. Also add comment showing which key combination produces each control character. Change-Id: I01884132842281cce6c13dd9398b1aeddadae58a Reviewed-on: https://review.haiku-os.org/c/haiku/+/8899 Reviewed-by: nephele nephele Tested-by: Commit checker robot Reviewed-by: waddlesplash --- headers/os/interface/InterfaceDefs.h | 42 ++++++++++++++++++---------- 1 file changed, 28 insertions(+), 14 deletions(-) diff --git a/headers/os/interface/InterfaceDefs.h b/headers/os/interface/InterfaceDefs.h index 7a95d1b2ce..62aaccdb7e 100644 --- a/headers/os/interface/InterfaceDefs.h +++ b/headers/os/interface/InterfaceDefs.h @@ -40,22 +40,36 @@ struct key_info { uint8 key_states[16]; }; +// Control characters from the ASCII table enum { - B_HOME = 0x01, - - B_END = 0x04, - B_INSERT = 0x05, - - B_BACKSPACE = 0x08, - B_TAB = 0x09, - B_RETURN = 0x0a, + B_ASCII_NUL, + B_HOME = 0x01, // Ctrl + A + B_ASCII_START_TEXT, // Ctrl + B + B_ASCII_END_TEXT, // Ctrl + C + B_END = 0x04, // Ctrl + D + B_INSERT = 0x05, // Ctrl + E + B_ASCII_ACKNOWLEDGE, // Ctrl + F + B_ASCII_BELL, // Ctrl + G + B_BACKSPACE = 0x08, // Ctrl + H + B_TAB = 0x09, // Ctrl + I + B_RETURN = 0x0a, // Ctrl + J B_ENTER = 0x0a, - B_PAGE_UP = 0x0b, - B_PAGE_DOWN = 0x0c, - - B_FUNCTION_KEY = 0x10, - - B_SUBSTITUTE = 0x1a, + B_PAGE_UP = 0x0b, // Ctrl + K + B_PAGE_DOWN = 0x0c, // Ctrl + L + B_ASCII_CARRIAGE_RETURN, // Ctrl + M + B_ASCII_SHIFT_OUT, // Ctrl + N + B_ASCII_SHIFT_IN, // Ctrl + O + B_FUNCTION_KEY = 0x10, // Ctrl + P + B_ASCII_XON, // Ctrl + Q + B_DEVICE_CONTROL_2, // Ctrl + R + B_ASCII_XOFF, // Ctrl + S + B_DEVICE_CONTROL_4, // Ctrl + T + B_ASCII_NEGATIVE_ACK, // Ctrl + U + B_ASCII_SYNC_IDLE, // Ctrl + V + B_ASCII_END_TRANSMISSION_BLOCK, // Ctrl + W + B_ASCII_CANCEL, // Ctrl + X + B_ASCII_END_MEDIUM, // Ctrl + Y + B_SUBSTITUTE = 0x1a, // Ctrl + Z B_ESCAPE = 0x1b, B_LEFT_ARROW = 0x1c, B_RIGHT_ARROW = 0x1d,