+ break;
+ case SDLK_F9:
+ le_show_grid = !le_show_grid;
+ break;
+ case SDLK_PERIOD:
+ le_change(cursor_x, cursor_y, '.');
+ break;
+ case SDLK_a:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_current_tile = 'A';
+ else
+ le_current_tile = 'a';
+ break;
+ case SDLK_b:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, 'B');
+ break;
+ case SDLK_c:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, 'C');
+ else
+ le_change(cursor_x, cursor_y, 'c');
+ break;
+ case SDLK_d:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, 'D');
+ else
+ le_change(cursor_x, cursor_y, 'd');
+ break;
+ case SDLK_e:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, 'E');
+ else
+ le_change(cursor_x, cursor_y, 'e');
+ break;
+ case SDLK_f:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, 'F');
+ else
+ le_change(cursor_x, cursor_y, 'f');
+ break;
+ case SDLK_g:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, 'G');
+ else
+ le_change(cursor_x, cursor_y, 'g');
+ break;
+ case SDLK_h:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, 'H');
+ else
+ le_change(cursor_x, cursor_y, 'h');
+ break;
+ case SDLK_i:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, 'I');
+ else
+ le_change(cursor_x, cursor_y, 'i');
+ break;
+ case SDLK_j:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, 'J');
+ else
+ le_change(cursor_x, cursor_y, 'j');
+ break;
+ case SDLK_x:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, 'X');
+ else
+ le_change(cursor_x, cursor_y, 'x');
+ break;
+ case SDLK_y:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, 'Y');
+ else
+ le_change(cursor_x, cursor_y, 'y');
+ break;
+ case SDLK_LEFTBRACKET:
+ le_change(cursor_x, cursor_y, '[');
+ break;
+ case SDLK_RIGHTBRACKET:
+ le_change(cursor_x, cursor_y, ']');
+ break;
+ case SDLK_HASH:
+ case SDLK_3:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, '#');
+ break;
+ case SDLK_DOLLAR:
+ case SDLK_4:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, '$');
+ break;
+ case SDLK_BACKSLASH:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, '|');
+ else
+ le_change(cursor_x, cursor_y, '\\');
+ break;
+ case SDLK_CARET:
+ le_change(cursor_x, cursor_y, '^');
+ break;
+ case SDLK_AMPERSAND:
+ case SDLK_6:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, '&');
+ break;
+ case SDLK_EQUALS:
+ case SDLK_0:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, '=');
+ else /* let's add a bad guy */
+ le_change(cursor_x, cursor_y, '0');
+ break;
+ case SDLK_1:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, '!');
+ else /* let's add a bad guy */
+ le_change(cursor_x, cursor_y, '1');
+ break;
+ case SDLK_2:
+ le_change(cursor_x, cursor_y, '2');
+ break;
+ case SDLK_PLUS:
+ if(keymod == KMOD_LSHIFT || keymod == KMOD_RSHIFT || keymod == KMOD_CAPS)
+ le_change(cursor_x, cursor_y, '*');
+ break;
+ default:
+ break;
+ }