#include "SDL_scancode.h"
#include "SDL_keycode.h"
typedef struct
{
SDL_Scancode code;
uint16_t mod;
} ASCIIKeyInfo;
static ASCIIKeyInfo SDL_ASCIIKeyInfoTable[] = {
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_BACKSPACE, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_RETURN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_RETURN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_UNKNOWN, 0 },
{ SDL_SCANCODE_SPACE, 0 },
{ SDL_SCANCODE_1, KMOD_SHIFT },
{ SDL_SCANCODE_APOSTROPHE, KMOD_SHIFT },
{ SDL_SCANCODE_3, KMOD_SHIFT },
{ SDL_SCANCODE_4, KMOD_SHIFT },
{ SDL_SCANCODE_5, KMOD_SHIFT },
{ SDL_SCANCODE_7, KMOD_SHIFT },
{ SDL_SCANCODE_APOSTROPHE, 0 },
{ SDL_SCANCODE_9, KMOD_SHIFT },
{ SDL_SCANCODE_0, KMOD_SHIFT },
{ SDL_SCANCODE_8, KMOD_SHIFT },
{ SDL_SCANCODE_EQUALS, KMOD_SHIFT },
{ SDL_SCANCODE_COMMA, 0 },
{ SDL_SCANCODE_MINUS, 0 },
{ SDL_SCANCODE_PERIOD, 0 },
{ SDL_SCANCODE_SLASH, 0 },
{ SDL_SCANCODE_0, 0 },
{ SDL_SCANCODE_1, 0 },
{ SDL_SCANCODE_2, 0 },
{ SDL_SCANCODE_3, 0 },
{ SDL_SCANCODE_4, 0 },
{ SDL_SCANCODE_5, 0 },
{ SDL_SCANCODE_6, 0 },
{ SDL_SCANCODE_7, 0 },
{ SDL_SCANCODE_8, 0 },
{ SDL_SCANCODE_9, 0 },
{ SDL_SCANCODE_SEMICOLON, KMOD_SHIFT },
{ SDL_SCANCODE_SEMICOLON, 0 },
{ SDL_SCANCODE_COMMA, KMOD_SHIFT },
{ SDL_SCANCODE_EQUALS, 0 },
{ SDL_SCANCODE_PERIOD, KMOD_SHIFT },
{ SDL_SCANCODE_SLASH, KMOD_SHIFT },
{ SDL_SCANCODE_2, KMOD_SHIFT },
{ SDL_SCANCODE_A, KMOD_SHIFT },
{ SDL_SCANCODE_B, KMOD_SHIFT },
{ SDL_SCANCODE_C, KMOD_SHIFT },
{ SDL_SCANCODE_D, KMOD_SHIFT },
{ SDL_SCANCODE_E, KMOD_SHIFT },
{ SDL_SCANCODE_F, KMOD_SHIFT },
{ SDL_SCANCODE_G, KMOD_SHIFT },
{ SDL_SCANCODE_H, KMOD_SHIFT },
{ SDL_SCANCODE_I, KMOD_SHIFT },
{ SDL_SCANCODE_J, KMOD_SHIFT },
{ SDL_SCANCODE_K, KMOD_SHIFT },
{ SDL_SCANCODE_L, KMOD_SHIFT },
{ SDL_SCANCODE_M, KMOD_SHIFT },
{ SDL_SCANCODE_N, KMOD_SHIFT },
{ SDL_SCANCODE_O, KMOD_SHIFT },
{ SDL_SCANCODE_P, KMOD_SHIFT },
{ SDL_SCANCODE_Q, KMOD_SHIFT },
{ SDL_SCANCODE_R, KMOD_SHIFT },
{ SDL_SCANCODE_S, KMOD_SHIFT },
{ SDL_SCANCODE_T, KMOD_SHIFT },
{ SDL_SCANCODE_U, KMOD_SHIFT },
{ SDL_SCANCODE_V, KMOD_SHIFT },
{ SDL_SCANCODE_W, KMOD_SHIFT },
{ SDL_SCANCODE_X, KMOD_SHIFT },
{ SDL_SCANCODE_Y, KMOD_SHIFT },
{ SDL_SCANCODE_Z, KMOD_SHIFT },
{ SDL_SCANCODE_LEFTBRACKET, 0 },
{ SDL_SCANCODE_BACKSLASH, 0 },
{ SDL_SCANCODE_RIGHTBRACKET, 0 },
{ SDL_SCANCODE_6, KMOD_SHIFT },
{ SDL_SCANCODE_MINUS, KMOD_SHIFT },
{ SDL_SCANCODE_GRAVE, KMOD_SHIFT },
{ SDL_SCANCODE_A, 0 },
{ SDL_SCANCODE_B, 0 },
{ SDL_SCANCODE_C, 0 },
{ SDL_SCANCODE_D, 0 },
{ SDL_SCANCODE_E, 0 },
{ SDL_SCANCODE_F, 0 },
{ SDL_SCANCODE_G, 0 },
{ SDL_SCANCODE_H, 0 },
{ SDL_SCANCODE_I, 0 },
{ SDL_SCANCODE_J, 0 },
{ SDL_SCANCODE_K, 0 },
{ SDL_SCANCODE_L, 0 },
{ SDL_SCANCODE_M, 0 },
{ SDL_SCANCODE_N, 0 },
{ SDL_SCANCODE_O, 0 },
{ SDL_SCANCODE_P, 0 },
{ SDL_SCANCODE_Q, 0 },
{ SDL_SCANCODE_R, 0 },
{ SDL_SCANCODE_S, 0 },
{ SDL_SCANCODE_T, 0 },
{ SDL_SCANCODE_U, 0 },
{ SDL_SCANCODE_V, 0 },
{ SDL_SCANCODE_W, 0 },
{ SDL_SCANCODE_X, 0 },
{ SDL_SCANCODE_Y, 0 },
{ SDL_SCANCODE_Z, 0 },
{ SDL_SCANCODE_LEFTBRACKET, KMOD_SHIFT },
{ SDL_SCANCODE_BACKSLASH, KMOD_SHIFT },
{ SDL_SCANCODE_RIGHTBRACKET, KMOD_SHIFT },
{ SDL_SCANCODE_GRAVE, KMOD_SHIFT },
{ SDL_SCANCODE_BACKSPACE, KMOD_SHIFT }
};