aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortmk <nobody@nowhere>2013-05-14 23:06:07 +0900
committertmk <nobody@nowhere>2013-05-15 00:22:27 +0900
commit92b0674a7f7923f8efbe3bac1b5b8a410c5756cf (patch)
tree7cb09d3172af3b1bde43f5e391f2fa5bd62b0534
parentcbb9c408e46a7a7a567f3d6e07713256152106d0 (diff)
downloadqmk_firmware-92b0674a7f7923f8efbe3bac1b5b8a410c5756cf.tar.gz
qmk_firmware-92b0674a7f7923f8efbe3bac1b5b8a410c5756cf.zip
Fix makefile, debug print and keymap of HHKB
-rw-r--r--keyboard/hhkb/Makefile.lufa9
-rw-r--r--keyboard/hhkb/keymap.c7
-rw-r--r--keyboard/hhkb/matrix.c38
3 files changed, 15 insertions, 39 deletions
diff --git a/keyboard/hhkb/Makefile.lufa b/keyboard/hhkb/Makefile.lufa
index 3e621c2b4..97b8faab6 100644
--- a/keyboard/hhkb/Makefile.lufa
+++ b/keyboard/hhkb/Makefile.lufa
@@ -97,6 +97,15 @@ F_USB = $(F_CPU)
97OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT 97OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
98 98
99 99
100# Boot Section Size in *bytes*
101# Teensy halfKay 512
102# Teensy++ halfKay 1024
103# Atmel DFU loader 4096
104# LUFA bootloader 4096
105# USBaspLoader 2048
106OPT_DEFS += -DBOOTLOADER_SIZE=512
107
108
100# Build Options 109# Build Options
101# comment out to disable the options. 110# comment out to disable the options.
102# 111#
diff --git a/keyboard/hhkb/keymap.c b/keyboard/hhkb/keymap.c
index 7afbdbec2..eb66b9dc0 100644
--- a/keyboard/hhkb/keymap.c
+++ b/keyboard/hhkb/keymap.c
@@ -67,7 +67,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
67 TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSPC, \ 67 TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSPC, \
68 LCTL,A, S, D, F, G, H, J, K, L, FN3, QUOT,FN4, \ 68 LCTL,A, S, D, F, G, H, J, K, L, FN3, QUOT,FN4, \
69 FN5,Z, X, C, V, B, N, M, COMM,DOT, FN2, RSFT,FN1, \ 69 FN5,Z, X, C, V, B, N, M, COMM,DOT, FN2, RSFT,FN1, \
70 LGUI,LALT, FN6, RALT,FN7), 70 LGUI,LALT, FN6, RALT,NO),
71 71
72 /* Layer 1: HHKB mode (HHKB Fn) 72 /* Layer 1: HHKB mode (HHKB Fn)
73 * ,-----------------------------------------------------------. 73 * ,-----------------------------------------------------------.
@@ -150,7 +150,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
150 * ,-----------------------------------------------------------. 150 * ,-----------------------------------------------------------.
151 * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del| 151 * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del|
152 * |-----------------------------------------------------------| 152 * |-----------------------------------------------------------|
153 * |Tab | | | | | |MwL|MwD|MwU|MwR| | | |Backs| 153 * |Tab | | | | | |MwL|MwD|MwU|MwR| |Wbk|Wfr|Close|
154 * |-----------------------------------------------------------| 154 * |-----------------------------------------------------------|
155 * |Contro| | | | | |McL|McD|McU|McR|Fn0| |Return | 155 * |Contro| | | | | |McL|McD|McU|McR|Fn0| |Return |
156 * |-----------------------------------------------------------| 156 * |-----------------------------------------------------------|
@@ -161,7 +161,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
161 * Mc: Mouse Cursor / Mb: Mouse Button / Mw: Mouse Wheel 161 * Mc: Mouse Cursor / Mb: Mouse Button / Mw: Mouse Wheel
162 */ 162 */
163 KEYMAP(ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, INS, DEL, \ 163 KEYMAP(ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, INS, DEL, \
164 TAB, NO, NO, NO, NO, NO, WH_L,WH_D,WH_U,WH_R,NO, NO, NO, BSPC, \ 164 TAB, NO, NO, NO, NO, NO, WH_L,WH_D,WH_U,WH_R,WSTP,WBAK,WFWD,FN8, \
165 LCTL,NO, ACL0,ACL1,ACL2,NO, MS_L,MS_D,MS_U,MS_R,NO, NO, ENT, \ 165 LCTL,NO, ACL0,ACL1,ACL2,NO, MS_L,MS_D,MS_U,MS_R,NO, NO, ENT, \
166 LSFT,NO, NO, NO, NO, BTN3,BTN2,BTN1,BTN4,BTN5,NO, RSFT,NO, \ 166 LSFT,NO, NO, NO, NO, BTN3,BTN2,BTN1,BTN4,BTN5,NO, RSFT,NO, \
167 LGUI,LALT, TRNS, RALT,RGUI), 167 LGUI,LALT, TRNS, RALT,RGUI),
@@ -194,6 +194,7 @@ static const uint16_t PROGMEM fn_actions[] = {
194 [5] = ACTION_MODS_ONESHOT(MOD_LSFT), // Oneshot Shift* 194 [5] = ACTION_MODS_ONESHOT(MOD_LSFT), // Oneshot Shift*
195 [6] = ACTION_LAYER_TAP_KEY(5, KC_SPC), // Mousekey layer with Space 195 [6] = ACTION_LAYER_TAP_KEY(5, KC_SPC), // Mousekey layer with Space
196 [7] = ACTION_LAYER_TOGGLE(3), // Mousekey layer(toggle) 196 [7] = ACTION_LAYER_TOGGLE(3), // Mousekey layer(toggle)
197 [8] = ACTION_MODS_KEY(MOD_LCTL, KC_W), // Close Tab
197 198
198// [8] = ACTION_LMOD_TAP_KEY(KC_LCTL, KC_BSPC), // LControl with tap Backspace 199// [8] = ACTION_LMOD_TAP_KEY(KC_LCTL, KC_BSPC), // LControl with tap Backspace
199// [9] = ACTION_LMOD_TAP_KEY(KC_LCTL, KC_ESC), // LControl with tap Esc 200// [9] = ACTION_LMOD_TAP_KEY(KC_LCTL, KC_ESC), // LControl with tap Esc
diff --git a/keyboard/hhkb/matrix.c b/keyboard/hhkb/matrix.c
index f53e36dbe..3d4b1f6c7 100644
--- a/keyboard/hhkb/matrix.c
+++ b/keyboard/hhkb/matrix.c
@@ -35,13 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
35# error "Timer resolution(>20us) is not enough for HHKB matrix scan tweak on V-USB." 35# error "Timer resolution(>20us) is not enough for HHKB matrix scan tweak on V-USB."
36#endif 36#endif
37 37
38#if (MATRIX_COLS > 16)
39# error "MATRIX_COLS must not exceed 16"
40#endif
41#if (MATRIX_ROWS > 255)
42# error "MATRIX_ROWS must not exceed 255"
43#endif
44
45 38
46// matrix state buffer(1:on, 0:off) 39// matrix state buffer(1:on, 0:off)
47static matrix_row_t *matrix; 40static matrix_row_t *matrix;
@@ -226,42 +219,15 @@ bool matrix_is_on(uint8_t row, uint8_t col)
226} 219}
227 220
228inline 221inline
229#if (MATRIX_COLS <= 8) 222matrix_row_t matrix_get_row(uint8_t row)
230uint8_t matrix_get_row(uint8_t row)
231#else
232uint16_t matrix_get_row(uint8_t row)
233#endif
234{ 223{
235 return matrix[row]; 224 return matrix[row];
236} 225}
237 226
238void matrix_print(void) 227void matrix_print(void)
239{ 228{
240#if (MATRIX_COLS <= 8)
241 print("\nr/c 01234567\n"); 229 print("\nr/c 01234567\n");
242#else
243 print("\nr/c 0123456789ABCDEF\n");
244#endif
245 for (uint8_t row = 0; row < matrix_rows(); row++) { 230 for (uint8_t row = 0; row < matrix_rows(); row++) {
246 phex(row); print(": "); 231 xprintf("%02X: %08b\n", row, bitrev(matrix_get_row(row)));
247#if (MATRIX_COLS <= 8)
248 pbin_reverse(matrix_get_row(row));
249#else
250 pbin_reverse16(matrix_get_row(row));
251#endif
252 print("\n");
253 }
254}
255
256uint8_t matrix_key_count(void)
257{
258 uint8_t count = 0;
259 for (uint8_t i = 0; i < MATRIX_ROWS; i++) {
260#if (MATRIX_COLS <= 8)
261 count += bitpop(matrix[i]);
262#else
263 count += bitpop16(matrix[i]);
264#endif
265 } 232 }
266 return count;
267} 233}