diff options
Diffstat (limited to 'keyboards/converter/ibm_terminal/ibm_terminal.h')
| -rw-r--r-- | keyboards/converter/ibm_terminal/ibm_terminal.h | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/keyboards/converter/ibm_terminal/ibm_terminal.h b/keyboards/converter/ibm_terminal/ibm_terminal.h new file mode 100644 index 000000000..c6468349c --- /dev/null +++ b/keyboards/converter/ibm_terminal/ibm_terminal.h | |||
| @@ -0,0 +1,82 @@ | |||
| 1 | #ifndef IBM_TERMINAL_H | ||
| 2 | #define IBM_TERMINAL_H | ||
| 3 | |||
| 4 | #include "quantum.h" | ||
| 5 | |||
| 6 | void matrix_init_user(void); | ||
| 7 | |||
| 8 | /* | ||
| 9 | * IBM Terminal keyboard 6110345(122keys)/1392595(102keys) | ||
| 10 | * http://geekhack.org/showthread.php?10737-What-Can-I-Do-With-a-Terminal-Model-M | ||
| 11 | * http://www.seasip.info/VintagePC/ibm_1391406.html | ||
| 12 | * | ||
| 13 | * Keymap array: | ||
| 14 | * 8 bytes | ||
| 15 | * +---------+ | ||
| 16 | * 0| | | ||
| 17 | * :| | 0x00-0x87 | ||
| 18 | * ;| | | ||
| 19 | * 17| | | ||
| 20 | * +---------+ | ||
| 21 | */ | ||
| 22 | #define KEYMAP( \ | ||
| 23 | K08,K10,K18,K20,K28,K30,K38,K40,K48,K50,K57,K5F, \ | ||
| 24 | K07,K0F,K17,K1F,K27,K2F,K37,K3F,K47,K4F,K56,K5E, \ | ||
| 25 | \ | ||
| 26 | K05,K06, K0E,K16,K1E,K26,K25,K2E,K36,K3D,K3E,K46,K45,K4E,K55,K5D,K66, K67,K6E,K6F, K76,K77,K7E,K84, \ | ||
| 27 | K04,K0C, K0D,K15,K1D,K24,K2D,K2C,K35,K3C,K43,K44,K4D,K54,K5B, K5C, K64,K65,K6D, K6C,K75,K7D,K7C, \ | ||
| 28 | K03,K0B, K14,K1C,K1B,K23,K2B,K34,K33,K3B,K42,K4B,K4C,K52, K53,K5A, K63, K6B,K73,K74,K7B, \ | ||
| 29 | K83,K0A, K12,K13,K1A,K22,K21,K2A,K32,K31,K3A,K41,K49,K4A, K51,K59, K61,K62,K6A, K69,K72,K7A,K79, \ | ||
| 30 | K01,K09, K11, K19, K29, K39, K58, K60, K68,K70,K71,K78 \ | ||
| 31 | ) { \ | ||
| 32 | { KC_NO, K01, KC_NO, K03, K04, K05, K06, K07 }, \ | ||
| 33 | { K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ | ||
| 34 | { K10, K11, K12, K13, K14, K15, K16, K17 }, \ | ||
| 35 | { K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \ | ||
| 36 | { K20, K21, K22, K23, K24, K25, K26, K27 }, \ | ||
| 37 | { K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ | ||
| 38 | { K30, K31, K32, K33, K34, K35, K36, K37 }, \ | ||
| 39 | { K38, K39, K3A, K3B, K3C, K3D, K3E, K3F }, \ | ||
| 40 | { K40, K41, K42, K43, K44, K45, K46, K47 }, \ | ||
| 41 | { K48, K49, K4A, K4B, K4C, K4D, K4E, K4F }, \ | ||
| 42 | { K50, K51, K52, K53, K54, K55, K56, K57 }, \ | ||
| 43 | { K58, K59, K5A, K5B, K5C, K5D, K5E, K5F }, \ | ||
| 44 | { K60, K61, K62, K63, K64, K65, K66, K67 }, \ | ||
| 45 | { K68, K69, K6A, K6B, K6C, K6D, K6E, K6F }, \ | ||
| 46 | { K70, K71, K72, K73, K74, K75, K76, K77 }, \ | ||
| 47 | { K78, K79, K7A, K7B, K7C, K7D, K7E, KC_NO }, \ | ||
| 48 | { KC_NO, KC_NO, KC_NO, K83, K84, KC_NO, KC_NO, KC_NO,}, \ | ||
| 49 | } | ||
| 50 | |||
| 51 | /* | ||
| 52 | * IBM Terminal keyboard 1399625, 101-key | ||
| 53 | */ | ||
| 54 | #define KEYMAP_101( \ | ||
| 55 | K08, K07,K0F,K17,K1F,K27,K2F,K37,K3F,K47,K4F,K56,K5E, K57,K5F,K62, \ | ||
| 56 | \ | ||
| 57 | K0E,K16,K1E,K26,K25,K2E,K36,K3D,K3E,K46,K45,K4E,K55,K66, K67,K6E,K6F, K76,K77,K7E,K84, \ | ||
| 58 | K0D,K15,K1D,K24,K2D,K2C,K35,K3C,K43,K44,K4D,K54,K5B,K5C, K64,K65,K6D, K6C,K75,K7D, \ | ||
| 59 | K14,K1C,K1B,K23,K2B,K34,K33,K3B,K42,K4B,K4C,K52, K5A, K6B,K73,K74,K7C, \ | ||
| 60 | K12, K1A,K22,K21,K2A,K32,K31,K3A,K41,K49,K4A, K59, K63, K69,K72,K7A, \ | ||
| 61 | K11, K19, K29, K39, K58, K61,K60,K6A, K70, K71,K79 \ | ||
| 62 | ) { \ | ||
| 63 | { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K07 }, \ | ||
| 64 | { K08, KC_NO, KC_NO, KC_NO, KC_NO, K0D, K0E, K0F }, \ | ||
| 65 | { KC_NO, K11, K12, KC_NO, K14, K15, K16, K17 }, \ | ||
| 66 | { KC_NO, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \ | ||
| 67 | { KC_NO, K21, K22, K23, K24, K25, K26, K27 }, \ | ||
| 68 | { KC_NO, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ | ||
| 69 | { KC_NO, K31, K32, K33, K34, K35, K36, K37 }, \ | ||
| 70 | { KC_NO, K39, K3A, K3B, K3C, K3D, K3E, K3F }, \ | ||
| 71 | { KC_NO, K41, K42, K43, K44, K45, K46, K47 }, \ | ||
| 72 | { KC_NO, K49, K4A, K4B, K4C, K4D, K4E, K4F }, \ | ||
| 73 | { KC_NO, KC_NO, K52, KC_NO, K54, K55, K56, K57 }, \ | ||
| 74 | { K58, K59, K5A, K5B, K5C, KC_NO, K5E, K5F }, \ | ||
| 75 | { K60, K61, K62, K63, K64, K65, K66, K67 }, \ | ||
| 76 | { KC_NO, K69, K6A, K6B, K6C, K6D, K6E, K6F }, \ | ||
| 77 | { K70, K71, K72, K73, K74, K75, K76, K77 }, \ | ||
| 78 | { KC_NO, K79, K7A, KC_NO, K7C, K7D, K7E, KC_NO }, \ | ||
| 79 | { KC_NO, KC_NO, KC_NO, KC_NO, K84, KC_NO, KC_NO, KC_NO,}, \ | ||
| 80 | } | ||
| 81 | |||
| 82 | #endif \ No newline at end of file | ||
