]> git.friedersdorff.com Git - max/tmk_keyboard.git/commitdiff
Fix makefile, debug print and keymap of HHKB
authortmk <nobody@nowhere>
Tue, 14 May 2013 14:06:07 +0000 (23:06 +0900)
committertmk <nobody@nowhere>
Tue, 14 May 2013 15:22:27 +0000 (00:22 +0900)
keyboard/hhkb/Makefile.lufa
keyboard/hhkb/keymap.c
keyboard/hhkb/matrix.c

index 3e621c2b41a30d8eb213fe30fec72cd58f200d70..97b8faab6e06a76348e58db00ef83111178e1aaf 100644 (file)
@@ -97,6 +97,15 @@ F_USB = $(F_CPU)
 OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
 
 
+# Boot Section Size in *bytes*
+#   Teensy halfKay   512
+#   Teensy++ halfKay 1024
+#   Atmel DFU loader 4096
+#   LUFA bootloader  4096
+#   USBaspLoader     2048
+OPT_DEFS += -DBOOTLOADER_SIZE=512
+
+
 # Build Options
 #   comment out to disable the options.
 #
index 7afbdbec2c072b21432d7bb6ae5e345d3298ddac..eb66b9dc02c03017796c80ee4dc73cfaf252d27e 100644 (file)
@@ -67,7 +67,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
            TAB, Q,   W,   E,   R,   T,   Y,   U,   I,   O,   P,   LBRC,RBRC,BSPC, \
            LCTL,A,   S,   D,   F,   G,   H,   J,   K,   L,   FN3, QUOT,FN4, \
             FN5,Z,   X,   C,   V,   B,   N,   M,   COMM,DOT, FN2, RSFT,FN1, \
-                LGUI,LALT,          FN6,                RALT,FN7),
+                LGUI,LALT,          FN6,                RALT,NO),
 
     /* Layer 1: HHKB mode (HHKB Fn)
      * ,-----------------------------------------------------------.
@@ -150,7 +150,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
      * ,-----------------------------------------------------------.
      * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del|
      * |-----------------------------------------------------------|
-     * |Tab  |   |   |   |   |   |MwL|MwD|MwU|MwR|   |   |   |Backs|
+     * |Tab  |   |   |   |   |   |MwL|MwD|MwU|MwR|   |Wbk|Wfr|Close|
      * |-----------------------------------------------------------|
      * |Contro|   |   |   |   |   |McL|McD|McU|McR|Fn0|   |Return  |
      * |-----------------------------------------------------------|
@@ -161,7 +161,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
      * Mc: Mouse Cursor / Mb: Mouse Button / Mw: Mouse Wheel 
      */
     KEYMAP(ESC, F1,  F2,  F3,  F4,  F5,  F6,  F7,  F8,  F9,  F10, F11, F12, INS, DEL, \
-           TAB, NO,  NO,  NO,  NO,  NO,  WH_L,WH_D,WH_U,WH_R,NO,  NO,  NO,  BSPC, \
+           TAB, NO,  NO,  NO,  NO,  NO,  WH_L,WH_D,WH_U,WH_R,WSTP,WBAK,WFWD,FN8, \
            LCTL,NO,  ACL0,ACL1,ACL2,NO,  MS_L,MS_D,MS_U,MS_R,NO,  NO,  ENT, \
            LSFT,NO,  NO,  NO,  NO,  BTN3,BTN2,BTN1,BTN4,BTN5,NO,  RSFT,NO, \
                 LGUI,LALT,          TRNS,               RALT,RGUI),
@@ -194,6 +194,7 @@ static const uint16_t PROGMEM fn_actions[] = {
     [5] = ACTION_MODS_ONESHOT(MOD_LSFT),              // Oneshot Shift*
     [6] = ACTION_LAYER_TAP_KEY(5, KC_SPC),            // Mousekey layer with Space
     [7] = ACTION_LAYER_TOGGLE(3),                     // Mousekey layer(toggle)
+    [8] = ACTION_MODS_KEY(MOD_LCTL, KC_W),            // Close Tab
 
 //  [8] = ACTION_LMOD_TAP_KEY(KC_LCTL, KC_BSPC),       // LControl with tap Backspace
 //  [9] = ACTION_LMOD_TAP_KEY(KC_LCTL, KC_ESC),        // LControl with tap Esc
index f53e36dbe0acd4d23e83de136408681f0f314a20..3d4b1f6c742e17a2e4cd1a241c4a50c7ca9d131f 100644 (file)
@@ -35,13 +35,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #   error "Timer resolution(>20us) is not enough for HHKB matrix scan tweak on V-USB."
 #endif
 
-#if (MATRIX_COLS > 16)
-#   error "MATRIX_COLS must not exceed 16"
-#endif
-#if (MATRIX_ROWS > 255)
-#   error "MATRIX_ROWS must not exceed 255"
-#endif
-
 
 // matrix state buffer(1:on, 0:off)
 static matrix_row_t *matrix;
@@ -226,42 +219,15 @@ bool matrix_is_on(uint8_t row, uint8_t col)
 }
 
 inline
-#if (MATRIX_COLS <= 8)
-uint8_t matrix_get_row(uint8_t row)
-#else
-uint16_t matrix_get_row(uint8_t row)
-#endif
+matrix_row_t matrix_get_row(uint8_t row)
 {
     return matrix[row];
 }
 
 void matrix_print(void)
 {
-#if (MATRIX_COLS <= 8)
     print("\nr/c 01234567\n");
-#else
-    print("\nr/c 0123456789ABCDEF\n");
-#endif
     for (uint8_t row = 0; row < matrix_rows(); row++) {
-        phex(row); print(": ");
-#if (MATRIX_COLS <= 8)
-        pbin_reverse(matrix_get_row(row));
-#else
-        pbin_reverse16(matrix_get_row(row));
-#endif
-        print("\n");
-    }
-}
-
-uint8_t matrix_key_count(void)
-{
-    uint8_t count = 0;
-    for (uint8_t i = 0; i < MATRIX_ROWS; i++) {
-#if (MATRIX_COLS <= 8)
-        count += bitpop(matrix[i]);
-#else
-        count += bitpop16(matrix[i]);
-#endif
+        xprintf("%02X: %08b\n", row, bitrev(matrix_get_row(row)));
     }
-    return count;
 }