-/*
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef CONFIG_H
-#define CONFIG_H
-
-
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0xFEED
-#define PRODUCT_ID 0x6060
-#define DEVICE_VER 0x0001
-#define MANUFACTURER geekhack
-#define PRODUCT GH60
-
-
-/* message strings */
-#define DESCRIPTION t.m.k. keyboard firmware for GH60
-
-
-/* matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 14
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if need no debouncing */
-#define DEBOUNCE 5
-
-/* To use new keymap framework */
-#define USE_KEYMAP_V2
-
-/* key combination for command */
-#define IS_COMMAND() ( \
- keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
-)
-
-/*
- * Boot magic keys
- * call some function by pressing key when pluging cable or powering on.
- */
-/* key position on matrix(ROW:COL) */
-#define KEY_FN 0x4A
-#define KEY_D 0x23
-#define KEY_IS_ON(key) matrix_is_on((key)>>4, (key)&0xF)
-/* kick up bootloader */
-#define IS_BOOTMAGIC_BOOTLOADER() KEY_IS_ON(KEY_FN)
-/* debug on */
-#define IS_BOOTMAGIC_DEBUG() KEY_IS_ON(KEY_D)
-
-#endif
+/*\r
+Copyright 2012 Jun Wako <wakojun@gmail.com>\r
+\r
+This program is free software: you can redistribute it and/or modify\r
+it under the terms of the GNU General Public License as published by\r
+the Free Software Foundation, either version 2 of the License, or\r
+(at your option) any later version.\r
+\r
+This program is distributed in the hope that it will be useful,\r
+but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
+GNU General Public License for more details.\r
+\r
+You should have received a copy of the GNU General Public License\r
+along with this program. If not, see <http://www.gnu.org/licenses/>.\r
+*/\r
+\r
+#ifndef CONFIG_H\r
+#define CONFIG_H\r
+\r
+#include "config_common.h"\r
+\r
+/* USB Device descriptor parameter */\r
+#define VENDOR_ID 0xFEED\r
+#define PRODUCT_ID 0x6060\r
+#define DEVICE_VER 0x0001\r
+#define MANUFACTURER geekhack\r
+#define PRODUCT GH60\r
+#define DESCRIPTION t.m.k. keyboard firmware for GH60\r
+\r
+/* key matrix size */\r
+#define MATRIX_ROWS 5\r
+#define MATRIX_COLS 14\r
+\r
+/*\r
+ * Keyboard Matrix Assignments\r
+ *\r
+ * Change this to how you wired your keyboard\r
+ * COLS: AVR pins used for columns, left to right\r
+ * ROWS: AVR pins used for rows, top to bottom\r
+ * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)\r
+ * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)\r
+ *\r
+*/\r
+ #define MATRIX_ROW_PINS { D0, D1, D2, D3, D5 }\r
+// Rev A\r
+// #define MATRIX_COL_PINS { F0, F1, E6, C7, C6, B6, D4, B1, B0, B5, B4, D7, D6, B3 }\r
+// Rev B/C\r
+ #define MATRIX_COL_PINS { F0, F1, E6, C7, C6, B6, D4, B1, B7, B5, B4, D7, D6, B3 }\r
+#define UNUSED_PINS\r
+\r
+/* COL2ROW or ROW2COL */\r
+#define DIODE_DIRECTION COL2ROW\r
+\r
+/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */\r
+#define DEBOUNCING_DELAY 5\r
+\r
+/* define if matrix has ghost (lacks anti-ghosting diodes) */\r
+//#define MATRIX_HAS_GHOST\r
+\r
+/* number of backlight levels */\r
+#define BACKLIGHT_LEVELS 3\r
+\r
+/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */\r
+#define LOCKING_SUPPORT_ENABLE\r
+/* Locking resynchronize hack */\r
+#define LOCKING_RESYNC_ENABLE\r
+\r
+/*\r
+ * Force NKRO\r
+ *\r
+ * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved\r
+ * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the\r
+ * makefile for this to work.)\r
+ *\r
+ * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)\r
+ * until the next keyboard reset.\r
+ *\r
+ * NKRO may prevent your keystrokes from being detected in the BIOS, but it is\r
+ * fully operational during normal computer usage.\r
+ *\r
+ * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)\r
+ * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by\r
+ * bootmagic, NKRO mode will always be enabled until it is toggled again during a\r
+ * power-up.\r
+ *\r
+ */\r
+//#define FORCE_NKRO\r
+\r
+/*\r
+ * Magic Key Options\r
+ *\r
+ * Magic keys are hotkey commands that allow control over firmware functions of\r
+ * the keyboard. They are best used in combination with the HID Listen program,\r
+ * found here: https://www.pjrc.com/teensy/hid_listen.html\r
+ *\r
+ * The options below allow the magic key functionality to be changed. This is\r
+ * useful if your keyboard/keypad is missing keys and you want magic key support.\r
+ *\r
+ */\r
+\r
+/* key combination for magic key command */\r
+#define IS_COMMAND() ( \\r
+ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \\r
+)\r
+\r
+/* control how magic key switches layers */\r
+//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true\r
+//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true\r
+//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false\r
+\r
+/* override magic key keymap */\r
+//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS\r
+//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS\r
+//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM\r
+//#define MAGIC_KEY_HELP1 H\r
+//#define MAGIC_KEY_HELP2 SLASH\r
+//#define MAGIC_KEY_DEBUG D\r
+//#define MAGIC_KEY_DEBUG_MATRIX X\r
+//#define MAGIC_KEY_DEBUG_KBD K\r
+//#define MAGIC_KEY_DEBUG_MOUSE M\r
+//#define MAGIC_KEY_VERSION V\r
+//#define MAGIC_KEY_STATUS S\r
+//#define MAGIC_KEY_CONSOLE C\r
+//#define MAGIC_KEY_LAYER0_ALT1 ESC\r
+//#define MAGIC_KEY_LAYER0_ALT2 GRAVE\r
+//#define MAGIC_KEY_LAYER0 0\r
+//#define MAGIC_KEY_LAYER1 1\r
+//#define MAGIC_KEY_LAYER2 2\r
+//#define MAGIC_KEY_LAYER3 3\r
+//#define MAGIC_KEY_LAYER4 4\r
+//#define MAGIC_KEY_LAYER5 5\r
+//#define MAGIC_KEY_LAYER6 6\r
+//#define MAGIC_KEY_LAYER7 7\r
+//#define MAGIC_KEY_LAYER8 8\r
+//#define MAGIC_KEY_LAYER9 9\r
+//#define MAGIC_KEY_BOOTLOADER PAUSE\r
+//#define MAGIC_KEY_LOCK CAPS\r
+//#define MAGIC_KEY_EEPROM E\r
+//#define MAGIC_KEY_NKRO N\r
+//#define MAGIC_KEY_SLEEP_LED Z\r
+\r
+/*\r
+ * Feature disable options\r
+ * These options are also useful to firmware size reduction.\r
+ */\r
+\r
+/* disable debug print */\r
+//#define NO_DEBUG\r
+\r
+/* disable print */\r
+//#define NO_PRINT\r
+\r
+/* disable action features */\r
+//#define NO_ACTION_LAYER\r
+//#define NO_ACTION_TAPPING\r
+//#define NO_ACTION_ONESHOT\r
+//#define NO_ACTION_MACRO\r
+//#define NO_ACTION_FUNCTION\r
+\r
+#endif\r