diff --git a/keyboard/infinity/Makefile b/keyboard/infinity/Makefile index 758296f3..e33c239a 100644 --- a/keyboard/infinity/Makefile +++ b/keyboard/infinity/Makefile @@ -12,11 +12,16 @@ OBJDIR = ./build OBJECTS = \ $(OBJDIR)/matrix.o \ - $(OBJDIR)/keymap.o \ $(OBJDIR)/keymap_common.o \ $(OBJDIR)/led.o \ $(OBJDIR)/main.o +ifdef KEYMAP + OBJECTS := $(OBJDIR)/keymap_$(KEYMAP).o $(OBJECTS) +else + OBJECTS := $(OBJDIR)/keymap.o $(OBJECTS) +endif + CONFIG_H = config.h INCLUDE_PATHS = -I. diff --git a/keyboard/infinity/config.h b/keyboard/infinity/config.h index 28f2ca02..dc734dbd 100644 --- a/keyboard/infinity/config.h +++ b/keyboard/infinity/config.h @@ -36,4 +36,8 @@ along with this program. If not, see . /* key combination for command */ #define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT))) + +/* for prototype */ +//#define INFINITY_PROTOTYPE + #endif diff --git a/keyboard/infinity/keymap.c b/keyboard/infinity/keymap.c index 100142f4..4726cee6 100644 --- a/keyboard/infinity/keymap.c +++ b/keyboard/infinity/keymap.c @@ -20,6 +20,7 @@ const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LCTL,A, S, D, F, G, H, J, K, L, SCLN,QUOT,ENT, \ LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT,FN0, \ NO, LGUI,LALT, SPC, RALT,RGUI,NO, NO), + /* Layer 1: HHKB mode (HHKB Fn) * ,-----------------------------------------------------------. * |Pwr| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del| @@ -33,7 +34,7 @@ const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | |Gui|Alt | Space |Alt |Gui| | | * `-----------------------------------------------------------' */ - [1]= + [1] = KEYMAP(PWR, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, INS, DEL, \ CAPS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS, UP, TRNS, BSPC, \ TRNS,VOLD,VOLU,MUTE,TRNS,TRNS,PAST,PSLS,HOME,PGUP,LEFT,RGHT,PENT, \ diff --git a/keyboard/infinity/keymap_common.h b/keyboard/infinity/keymap_common.h index 7a5f778f..b0f765bf 100644 --- a/keyboard/infinity/keymap_common.h +++ b/keyboard/infinity/keymap_common.h @@ -33,9 +33,9 @@ extern const uint8_t keymaps[][MATRIX_ROWS][MATRIX_COLS]; extern const uint16_t fn_actions[]; -/* GH60 keymap definition macro - * K2C, K31 and K3C are extra keys for ISO - */ +#ifdef INFINITY_PROTOTYPE + +/* Infinity prototype */ #define KEYMAP( \ K00, K10, K20, K30, K40, K50, K60, K70, K80, K01, K11, K21, K31, K41, K86, \ K51, K61, K71, K81, K02, K12, K22, K32, K42, K52, K62, K72, K82, K03, \ @@ -54,5 +54,27 @@ extern const uint16_t fn_actions[]; { KC_##K80, KC_##K81, KC_##K82, KC_##K83, KC_##K84, KC_##K85, KC_##K86 } \ } +#else + +/* Infinity production */ +#define KEYMAP( \ + K00, K10, K20, K30, K40, K50, K60, K70, K80, K01, K11, K21, K31, K41, K51, \ + K61, K71, K81, K02, K12, K22, K32, K42, K52, K62, K72, K82, K03, K13, \ + K23, K33, K43, K53, K63, K73, K83, K04, K14, K24, K34, K44, K54, \ + K64, K74, K84, K05, K15, K25, K35, K45, K55, K65, K75, K85, K06, \ + K16, K26, K36, K46, K56, K66, K76, K86 \ +) { \ + { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06 }, \ + { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16 }, \ + { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26 }, \ + { KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K36 }, \ + { KC_##K40, KC_##K41, KC_##K42, KC_##K43, KC_##K44, KC_##K45, KC_##K46 }, \ + { KC_##K50, KC_##K51, KC_##K52, KC_##K53, KC_##K54, KC_##K55, KC_##K56 }, \ + { KC_##K60, KC_##K61, KC_##K62, KC_##K63, KC_##K64, KC_##K65, KC_##K66 }, \ + { KC_##K70, KC_##K71, KC_##K72, KC_##K73, KC_##K74, KC_##K75, KC_##K76 }, \ + { KC_##K80, KC_##K81, KC_##K82, KC_##K83, KC_##K84, KC_##K85, KC_##K86 } \ +} + #endif +#endif