+ switch(sdlkey)
+ {
+ default: return 0;
+// case SDLK_UNKNOWN: return K_UNKNOWN;
+ case SDLK_RETURN: return K_ENTER;
+ case SDLK_ESCAPE: return K_ESCAPE;
+ case SDLK_BACKSPACE: return K_BACKSPACE;
+ case SDLK_TAB: return K_TAB;
+ case SDLK_SPACE: return K_SPACE;
+ case SDLK_EXCLAIM: return '!';
+ case SDLK_QUOTEDBL: return '"';
+ case SDLK_HASH: return '#';
+ case SDLK_PERCENT: return '%';
+ case SDLK_DOLLAR: return '$';
+ case SDLK_AMPERSAND: return '&';
+ case SDLK_QUOTE: return '\'';
+ case SDLK_LEFTPAREN: return '(';
+ case SDLK_RIGHTPAREN: return ')';
+ case SDLK_ASTERISK: return '*';
+ case SDLK_PLUS: return '+';
+ case SDLK_COMMA: return ',';
+ case SDLK_MINUS: return '-';
+ case SDLK_PERIOD: return '.';
+ case SDLK_SLASH: return '/';
+ case SDLK_0: return '0';
+ case SDLK_1: return '1';
+ case SDLK_2: return '2';
+ case SDLK_3: return '3';
+ case SDLK_4: return '4';
+ case SDLK_5: return '5';
+ case SDLK_6: return '6';
+ case SDLK_7: return '7';
+ case SDLK_8: return '8';
+ case SDLK_9: return '9';
+ case SDLK_COLON: return ':';
+ case SDLK_SEMICOLON: return ';';
+ case SDLK_LESS: return '<';
+ case SDLK_EQUALS: return '=';
+ case SDLK_GREATER: return '>';
+ case SDLK_QUESTION: return '?';
+ case SDLK_AT: return '@';
+ case SDLK_LEFTBRACKET: return '[';
+ case SDLK_BACKSLASH: return '\\';
+ case SDLK_RIGHTBRACKET: return ']';
+ case SDLK_CARET: return '^';
+ case SDLK_UNDERSCORE: return '_';
+ case SDLK_BACKQUOTE: return '`';
+ case SDLK_a: return 'a';
+ case SDLK_b: return 'b';
+ case SDLK_c: return 'c';
+ case SDLK_d: return 'd';
+ case SDLK_e: return 'e';
+ case SDLK_f: return 'f';
+ case SDLK_g: return 'g';
+ case SDLK_h: return 'h';
+ case SDLK_i: return 'i';
+ case SDLK_j: return 'j';
+ case SDLK_k: return 'k';
+ case SDLK_l: return 'l';
+ case SDLK_m: return 'm';
+ case SDLK_n: return 'n';
+ case SDLK_o: return 'o';
+ case SDLK_p: return 'p';
+ case SDLK_q: return 'q';
+ case SDLK_r: return 'r';
+ case SDLK_s: return 's';
+ case SDLK_t: return 't';
+ case SDLK_u: return 'u';
+ case SDLK_v: return 'v';
+ case SDLK_w: return 'w';
+ case SDLK_x: return 'x';
+ case SDLK_y: return 'y';
+ case SDLK_z: return 'z';
+ case SDLK_CAPSLOCK: return K_CAPSLOCK;
+ case SDLK_F1: return K_F1;
+ case SDLK_F2: return K_F2;
+ case SDLK_F3: return K_F3;
+ case SDLK_F4: return K_F4;
+ case SDLK_F5: return K_F5;
+ case SDLK_F6: return K_F6;
+ case SDLK_F7: return K_F7;
+ case SDLK_F8: return K_F8;
+ case SDLK_F9: return K_F9;
+ case SDLK_F10: return K_F10;
+ case SDLK_F11: return K_F11;
+ case SDLK_F12: return K_F12;
+ case SDLK_PRINTSCREEN: return K_PRINTSCREEN;
+ case SDLK_SCROLLLOCK: return K_SCROLLOCK;
+ case SDLK_PAUSE: return K_PAUSE;
+ case SDLK_INSERT: return K_INS;
+ case SDLK_HOME: return K_HOME;
+ case SDLK_PAGEUP: return K_PGUP;
+ case SDLK_DELETE: return K_DEL;
+ case SDLK_END: return K_END;
+ case SDLK_PAGEDOWN: return K_PGDN;
+ case SDLK_RIGHT: return K_RIGHTARROW;
+ case SDLK_LEFT: return K_LEFTARROW;
+ case SDLK_DOWN: return K_DOWNARROW;
+ case SDLK_UP: return K_UPARROW;
+ case SDLK_NUMLOCKCLEAR: return K_NUMLOCK;
+ case SDLK_KP_DIVIDE: return K_KP_DIVIDE;
+ case SDLK_KP_MULTIPLY: return K_KP_MULTIPLY;
+ case SDLK_KP_MINUS: return K_KP_MINUS;
+ case SDLK_KP_PLUS: return K_KP_PLUS;
+ case SDLK_KP_ENTER: return K_KP_ENTER;
+ case SDLK_KP_1: return K_KP_1;
+ case SDLK_KP_2: return K_KP_2;
+ case SDLK_KP_3: return K_KP_3;
+ case SDLK_KP_4: return K_KP_4;
+ case SDLK_KP_5: return K_KP_5;
+ case SDLK_KP_6: return K_KP_6;
+ case SDLK_KP_7: return K_KP_7;
+ case SDLK_KP_8: return K_KP_8;
+ case SDLK_KP_9: return K_KP_9;
+ case SDLK_KP_0: return K_KP_0;
+ case SDLK_KP_PERIOD: return K_KP_PERIOD;
+// case SDLK_APPLICATION: return K_APPLICATION;
+// case SDLK_POWER: return K_POWER;
+ case SDLK_KP_EQUALS: return K_KP_EQUALS;
+// case SDLK_F13: return K_F13;
+// case SDLK_F14: return K_F14;
+// case SDLK_F15: return K_F15;
+// case SDLK_F16: return K_F16;
+// case SDLK_F17: return K_F17;
+// case SDLK_F18: return K_F18;
+// case SDLK_F19: return K_F19;
+// case SDLK_F20: return K_F20;
+// case SDLK_F21: return K_F21;
+// case SDLK_F22: return K_F22;
+// case SDLK_F23: return K_F23;
+// case SDLK_F24: return K_F24;
+// case SDLK_EXECUTE: return K_EXECUTE;
+// case SDLK_HELP: return K_HELP;
+// case SDLK_MENU: return K_MENU;
+// case SDLK_SELECT: return K_SELECT;
+// case SDLK_STOP: return K_STOP;
+// case SDLK_AGAIN: return K_AGAIN;
+// case SDLK_UNDO: return K_UNDO;
+// case SDLK_CUT: return K_CUT;
+// case SDLK_COPY: return K_COPY;
+// case SDLK_PASTE: return K_PASTE;
+// case SDLK_FIND: return K_FIND;
+// case SDLK_MUTE: return K_MUTE;
+// case SDLK_VOLUMEUP: return K_VOLUMEUP;
+// case SDLK_VOLUMEDOWN: return K_VOLUMEDOWN;
+// case SDLK_KP_COMMA: return K_KP_COMMA;
+// case SDLK_KP_EQUALSAS400: return K_KP_EQUALSAS400;
+// case SDLK_ALTERASE: return K_ALTERASE;
+// case SDLK_SYSREQ: return K_SYSREQ;
+// case SDLK_CANCEL: return K_CANCEL;
+// case SDLK_CLEAR: return K_CLEAR;
+// case SDLK_PRIOR: return K_PRIOR;
+// case SDLK_RETURN2: return K_RETURN2;
+// case SDLK_SEPARATOR: return K_SEPARATOR;
+// case SDLK_OUT: return K_OUT;
+// case SDLK_OPER: return K_OPER;
+// case SDLK_CLEARAGAIN: return K_CLEARAGAIN;
+// case SDLK_CRSEL: return K_CRSEL;
+// case SDLK_EXSEL: return K_EXSEL;
+// case SDLK_KP_00: return K_KP_00;
+// case SDLK_KP_000: return K_KP_000;
+// case SDLK_THOUSANDSSEPARATOR: return K_THOUSANDSSEPARATOR;
+// case SDLK_DECIMALSEPARATOR: return K_DECIMALSEPARATOR;
+// case SDLK_CURRENCYUNIT: return K_CURRENCYUNIT;
+// case SDLK_CURRENCYSUBUNIT: return K_CURRENCYSUBUNIT;
+// case SDLK_KP_LEFTPAREN: return K_KP_LEFTPAREN;
+// case SDLK_KP_RIGHTPAREN: return K_KP_RIGHTPAREN;
+// case SDLK_KP_LEFTBRACE: return K_KP_LEFTBRACE;
+// case SDLK_KP_RIGHTBRACE: return K_KP_RIGHTBRACE;
+// case SDLK_KP_TAB: return K_KP_TAB;
+// case SDLK_KP_BACKSPACE: return K_KP_BACKSPACE;
+// case SDLK_KP_A: return K_KP_A;
+// case SDLK_KP_B: return K_KP_B;
+// case SDLK_KP_C: return K_KP_C;
+// case SDLK_KP_D: return K_KP_D;
+// case SDLK_KP_E: return K_KP_E;
+// case SDLK_KP_F: return K_KP_F;
+// case SDLK_KP_XOR: return K_KP_XOR;
+// case SDLK_KP_POWER: return K_KP_POWER;
+// case SDLK_KP_PERCENT: return K_KP_PERCENT;
+// case SDLK_KP_LESS: return K_KP_LESS;
+// case SDLK_KP_GREATER: return K_KP_GREATER;
+// case SDLK_KP_AMPERSAND: return K_KP_AMPERSAND;
+// case SDLK_KP_DBLAMPERSAND: return K_KP_DBLAMPERSAND;
+// case SDLK_KP_VERTICALBAR: return K_KP_VERTICALBAR;
+// case SDLK_KP_DBLVERTICALBAR: return K_KP_DBLVERTICALBAR;
+// case SDLK_KP_COLON: return K_KP_COLON;
+// case SDLK_KP_HASH: return K_KP_HASH;
+// case SDLK_KP_SPACE: return K_KP_SPACE;
+// case SDLK_KP_AT: return K_KP_AT;
+// case SDLK_KP_EXCLAM: return K_KP_EXCLAM;
+// case SDLK_KP_MEMSTORE: return K_KP_MEMSTORE;
+// case SDLK_KP_MEMRECALL: return K_KP_MEMRECALL;
+// case SDLK_KP_MEMCLEAR: return K_KP_MEMCLEAR;
+// case SDLK_KP_MEMADD: return K_KP_MEMADD;
+// case SDLK_KP_MEMSUBTRACT: return K_KP_MEMSUBTRACT;
+// case SDLK_KP_MEMMULTIPLY: return K_KP_MEMMULTIPLY;
+// case SDLK_KP_MEMDIVIDE: return K_KP_MEMDIVIDE;
+// case SDLK_KP_PLUSMINUS: return K_KP_PLUSMINUS;
+// case SDLK_KP_CLEAR: return K_KP_CLEAR;
+// case SDLK_KP_CLEARENTRY: return K_KP_CLEARENTRY;
+// case SDLK_KP_BINARY: return K_KP_BINARY;
+// case SDLK_KP_OCTAL: return K_KP_OCTAL;
+// case SDLK_KP_DECIMAL: return K_KP_DECIMAL;
+// case SDLK_KP_HEXADECIMAL: return K_KP_HEXADECIMAL;
+ case SDLK_LCTRL: return K_CTRL;
+ case SDLK_LSHIFT: return K_SHIFT;
+ case SDLK_LALT: return K_ALT;
+// case SDLK_LGUI: return K_LGUI;
+ case SDLK_RCTRL: return K_CTRL;
+ case SDLK_RSHIFT: return K_SHIFT;
+ case SDLK_RALT: return K_ALT;
+// case SDLK_RGUI: return K_RGUI;
+// case SDLK_MODE: return K_MODE;
+// case SDLK_AUDIONEXT: return K_AUDIONEXT;
+// case SDLK_AUDIOPREV: return K_AUDIOPREV;
+// case SDLK_AUDIOSTOP: return K_AUDIOSTOP;
+// case SDLK_AUDIOPLAY: return K_AUDIOPLAY;
+// case SDLK_AUDIOMUTE: return K_AUDIOMUTE;
+// case SDLK_MEDIASELECT: return K_MEDIASELECT;
+// case SDLK_WWW: return K_WWW;
+// case SDLK_MAIL: return K_MAIL;
+// case SDLK_CALCULATOR: return K_CALCULATOR;
+// case SDLK_COMPUTER: return K_COMPUTER;
+// case SDLK_AC_SEARCH: return K_AC_SEARCH;
+// case SDLK_AC_HOME: return K_AC_HOME;
+// case SDLK_AC_BACK: return K_AC_BACK;
+// case SDLK_AC_FORWARD: return K_AC_FORWARD;
+// case SDLK_AC_STOP: return K_AC_STOP;
+// case SDLK_AC_REFRESH: return K_AC_REFRESH;
+// case SDLK_AC_BOOKMARKS: return K_AC_BOOKMARKS;
+// case SDLK_BRIGHTNESSDOWN: return K_BRIGHTNESSDOWN;
+// case SDLK_BRIGHTNESSUP: return K_BRIGHTNESSUP;
+// case SDLK_DISPLAYSWITCH: return K_DISPLAYSWITCH;
+// case SDLK_KBDILLUMTOGGLE: return K_KBDILLUMTOGGLE;
+// case SDLK_KBDILLUMDOWN: return K_KBDILLUMDOWN;
+// case SDLK_KBDILLUMUP: return K_KBDILLUMUP;
+// case SDLK_EJECT: return K_EJECT;
+// case SDLK_SLEEP: return K_SLEEP;
+ }