Keyboard firmwares for Atmel AVR and Cortex-M
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

unimap_trans.h 3.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /*
  2. Copyright 2016 Jun Wako <[email protected]>
  3. This program is free software: you can redistribute it and/or modify
  4. it under the terms of the GNU General Public License as published by
  5. the Free Software Foundation, either version 2 of the License, or
  6. (at your option) any later version.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU General Public License for more details.
  11. You should have received a copy of the GNU General Public License
  12. along with this program. If not, see <http://www.gnu.org/licenses/>.
  13. */
  14. #ifndef UNIMAP_TRNAS_H
  15. #define UNIMAP_TRNAS_H
  16. #include <stdint.h>
  17. #include <avr/pgmspace.h>
  18. #include "unimap.h"
  19. /* Mapping to Universal keyboard layout
  20. * ,-----------------------------------------------------------.
  21. * |` | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|JPY|Bsp|
  22. * |-----------------------------------------------------------|
  23. * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ |
  24. * |-----------------------------------------------------------|
  25. * |Caps | A| S| D| F| G| H| J| K| L| ;| '|Enter |
  26. * |-----------------------------------------------------------|
  27. * |Shft| \| Z| X| C| V| B| N| M| ,| .| /|Shift |Esc|
  28. * |-----------------------------------------------------------'
  29. * |Ctrl|Gui |Alt | Space |App |Alt |Gui |Ctrl |
  30. * `-----------------------------------------------------------'
  31. *
  32. * ,-----------------------------------------------------------.
  33. * |36 |37 |46 |47 |56 |57 |66 |67 |76 |77 |06 |07 |17 |26 |27 |
  34. * |-----------------------------------------------------------|
  35. * |34 |35 |44 |45 |54 |55 |64 |65 |75 |05 |15 |16 |25 |24 |
  36. * |-----------------------------------------------------------|
  37. * |32 |33 |43 |52 |53 |63 |73 |74 |03 |04 |13 |14 | 23 |
  38. * |-----------------------------------------------------------|
  39. * |31 |41 |42 |51 |61 |62 |71 |72 |01 |02 |11 |12 |21 |22 |
  40. * |-----------------------------------------------------------|
  41. * |30 |40 |50 | 60 |70 |00 |10 |20 |
  42. * `-----------------------------------------------------------'
  43. */
  44. const uint8_t PROGMEM unimap_trans[MATRIX_ROWS][MATRIX_COLS] = {
  45. { UNIMAP_RALT, UNIMAP_M, UNIMAP_COMM, UNIMAP_K, UNIMAP_L, UNIMAP_O, UNIMAP_0, UNIMAP_MINS }, /* 00-07 */
  46. { UNIMAP_RGUI, UNIMAP_DOT, UNIMAP_SLSH, UNIMAP_SCLN, UNIMAP_QUOT, UNIMAP_P, UNIMAP_LBRC, UNIMAP_EQL }, /* 10-17 */
  47. { UNIMAP_RCTL, UNIMAP_RSFT, UNIMAP_ESC, UNIMAP_ENT, UNIMAP_BSLS, UNIMAP_RBRC, UNIMAP_JYEN, UNIMAP_BSPC }, /* 20-27 */
  48. { UNIMAP_LCTL, UNIMAP_LSFT, UNIMAP_CAPS, UNIMAP_A, UNIMAP_TAB, UNIMAP_Q, UNIMAP_GRV, UNIMAP_1 }, /* 30-37 */
  49. { UNIMAP_LGUI, UNIMAP_NUBS, UNIMAP_Z, UNIMAP_S, UNIMAP_W, UNIMAP_E, UNIMAP_2, UNIMAP_3 }, /* 40-47 */
  50. { UNIMAP_LALT, UNIMAP_X, UNIMAP_D, UNIMAP_F, UNIMAP_R, UNIMAP_T, UNIMAP_4, UNIMAP_5 }, /* 50-57 */
  51. { UNIMAP_SPC, UNIMAP_C, UNIMAP_V, UNIMAP_G, UNIMAP_Y, UNIMAP_U, UNIMAP_6, UNIMAP_7 }, /* 60-67 */
  52. { UNIMAP_APP, UNIMAP_B, UNIMAP_N, UNIMAP_H, UNIMAP_J, UNIMAP_I, UNIMAP_8, UNIMAP_9 }, /* 70-77 */
  53. };
  54. #endif