============================================================================== Static helper functions ==============================================================================
| 60 | // Static helper functions |
| 61 | //============================================================================== |
| 62 | static void MapKey(Uint16 SDLkey, U8 tkey) |
| 63 | { |
| 64 | SDLtoTKeyMap[SDLkey] = tkey; |
| 65 | |
| 66 | AsciiTable[tkey].lower.ascii = SDLkey; |
| 67 | AsciiTable[tkey].upper.ascii = SDLkey; |
| 68 | AsciiTable[tkey].goofy.ascii = SDLkey; |
| 69 | |
| 70 | switch (tkey) |
| 71 | { |
| 72 | case KEY_0: |
| 73 | AsciiTable[tkey].upper.ascii = (U16)')'; |
| 74 | break; |
| 75 | case KEY_1: |
| 76 | AsciiTable[tkey].upper.ascii = (U16)'!'; |
| 77 | break; |
| 78 | case KEY_2: |
| 79 | AsciiTable[tkey].upper.ascii = (U16)'@'; |
| 80 | break; |
| 81 | case KEY_3: |
| 82 | AsciiTable[tkey].upper.ascii = 163; |
| 83 | break; |
| 84 | case KEY_4: |
| 85 | AsciiTable[tkey].upper.ascii = (U16)'$'; |
| 86 | break; |
| 87 | case KEY_5: |
| 88 | AsciiTable[tkey].upper.ascii = (U16)'%'; |
| 89 | break; |
| 90 | case KEY_6: |
| 91 | AsciiTable[tkey].upper.ascii = (U16)'^'; |
| 92 | break; |
| 93 | case KEY_7: |
| 94 | AsciiTable[tkey].upper.ascii = (U16)'&'; |
| 95 | break; |
| 96 | case KEY_8: |
| 97 | AsciiTable[tkey].upper.ascii = (U16)'*'; |
| 98 | break; |
| 99 | case KEY_9: |
| 100 | AsciiTable[tkey].upper.ascii = (U16)'('; |
| 101 | break; |
| 102 | case KEY_MINUS: |
| 103 | AsciiTable[tkey].upper.ascii = (U16)'_'; |
| 104 | break; |
| 105 | case KEY_EQUALS: |
| 106 | AsciiTable[tkey].upper.ascii = (U16)'+'; |
| 107 | break; |
| 108 | case KEY_TILDE: |
| 109 | AsciiTable[tkey].upper.ascii = (U16)126; |
| 110 | break; |
| 111 | case KEY_SEMICOLON: |
| 112 | AsciiTable[tkey].upper.ascii = ':'; |
| 113 | break; |
| 114 | case KEY_APOSTROPHE: |
| 115 | AsciiTable[tkey].upper.ascii = '"'; |
| 116 | break; |
| 117 | case KEY_BACKSLASH: |
| 118 | AsciiTable[tkey].upper.ascii = '|'; |
| 119 | break; |