diff options
| author | tmk <nobody@nowhere> | 2012-05-15 03:41:07 +0900 |
|---|---|---|
| committer | tmk <nobody@nowhere> | 2012-05-16 02:01:45 +0900 |
| commit | f5f48c2a240b43e1773c3787b8fca8859f128cf7 (patch) | |
| tree | 58ed9b0f4013f33e11767836a98ffa227aa3dd0e /m0110_usb/keymap.c | |
| parent | d553289e7edfdf17dfe4fb9cf45a3b23ea2e03df (diff) | |
| download | qmk_firmware-f5f48c2a240b43e1773c3787b8fca8859f128cf7.tar.gz qmk_firmware-f5f48c2a240b43e1773c3787b8fca8859f128cf7.zip | |
Fix bug on RAW2SCAN. Add work around for M0110A.
- Bug fix: Macro RAW2SCAN doesn't work and converted into static inline function.
- Add Exceptional handling for M0110A arrow keys and calc keys.
- Fix keymap.
Diffstat (limited to 'm0110_usb/keymap.c')
| -rw-r--r-- | m0110_usb/keymap.c | 66 |
1 files changed, 35 insertions, 31 deletions
diff --git a/m0110_usb/keymap.c b/m0110_usb/keymap.c index 8c509a59b..c6b7cbd3b 100644 --- a/m0110_usb/keymap.c +++ b/m0110_usb/keymap.c | |||
| @@ -58,7 +58,7 @@ static const uint8_t PROGMEM fn_layer[] = { | |||
| 58 | 1, // Fn0 | 58 | 1, // Fn0 |
| 59 | 2, // Fn1 | 59 | 2, // Fn1 |
| 60 | 3, // Fn2 | 60 | 3, // Fn2 |
| 61 | 0, // Fn3 | 61 | 1, // Fn3 |
| 62 | 0, // Fn4 | 62 | 0, // Fn4 |
| 63 | 0, // Fn5 | 63 | 0, // Fn5 |
| 64 | 0, // Fn6 | 64 | 0, // Fn6 |
| @@ -68,15 +68,17 @@ static const uint8_t PROGMEM fn_layer[] = { | |||
| 68 | // Assign Fn key(0-7) to a keycode sent when release Fn key without use of the layer. | 68 | // Assign Fn key(0-7) to a keycode sent when release Fn key without use of the layer. |
| 69 | // See layer.c for details. | 69 | // See layer.c for details. |
| 70 | static const uint8_t PROGMEM fn_keycode[] = { | 70 | static const uint8_t PROGMEM fn_keycode[] = { |
| 71 | #ifndef HASU | ||
| 71 | KB_ESC, // Fn0 | 72 | KB_ESC, // Fn0 |
| 72 | #ifdef HASU | ||
| 73 | KB_SCOLON, // Fn1 | ||
| 74 | KB_SLASH, // Fn2 | ||
| 75 | #else | ||
| 76 | KB_NO, // Fn1 | 73 | KB_NO, // Fn1 |
| 77 | KB_NO, // Fn2 | 74 | KB_NO, // Fn2 |
| 78 | #endif | ||
| 79 | KB_NO, // Fn3 | 75 | KB_NO, // Fn3 |
| 76 | #else | ||
| 77 | KB_NO, // Fn0 | ||
| 78 | KB_SCOLON, // Fn1 | ||
| 79 | KB_SLASH, // Fn2 | ||
| 80 | KB_UP, // Fn3 | ||
| 81 | #endif | ||
| 80 | KB_NO, // Fn4 | 82 | KB_NO, // Fn4 |
| 81 | KB_NO, // Fn5 | 83 | KB_NO, // Fn5 |
| 82 | KB_NO, // Fn6 | 84 | KB_NO, // Fn6 |
| @@ -107,7 +109,6 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 107 | * |---------------------------------------------------------| |-----------|Ent| | 109 | * |---------------------------------------------------------| |-----------|Ent| |
| 108 | * |Ctrl |Alt | Space |Gui| \|Lft|Rgt|Dn | | 0| .| | | 110 | * |Ctrl |Alt | Space |Gui| \|Lft|Rgt|Dn | | 0| .| | |
| 109 | * `---------------------------------------------------------' `---------------' | 111 | * `---------------------------------------------------------' `---------------' |
| 110 | * You can register Esc by hitting(press&release) Fn0 quickly. | ||
| 111 | * | 112 | * |
| 112 | * HHKB/WASD cursor Layer(Fn0): | 113 | * HHKB/WASD cursor Layer(Fn0): |
| 113 | * ,---------------------------------------------------------. ,---------------. | 114 | * ,---------------------------------------------------------. ,---------------. |
| @@ -122,25 +123,44 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 122 | * |Ctrl |Alt | Space |Gui | \|Lft|Rgt|Dn | | 0| .| | | 123 | * |Ctrl |Alt | Space |Gui | \|Lft|Rgt|Dn | | 0| .| | |
| 123 | * `---------------------------------------------------------' `---------------' | 124 | * `---------------------------------------------------------' `---------------' |
| 124 | * | 125 | * |
| 125 | * NOTE: Key between Space and \ in above diagram is M0110 Enter(assigned to Gui). | 126 | * NOTE: You can register Esc by hitting(press&release) Fn0 quickly. |
| 127 | * NOTE: Gui between Space and \ is Enter on M0110 not exists on M0110A. | ||
| 126 | * NOTE: LShift and RShift are logically same key. (M0110, M0110A) | 128 | * NOTE: LShift and RShift are logically same key. (M0110, M0110A) |
| 127 | * NOTE: LOption and ROption are logically same key. (M0110) | 129 | * NOTE: LOption and ROption are logically same key. (M0110) |
| 128 | */ | 130 | */ |
| 129 | #ifdef HASU | 131 | #ifndef HASU |
| 132 | KEYMAP( | ||
| 133 | GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, LGUI,PEQL,PSLS,PAST, | ||
| 134 | TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC, P7, P8, P9, PMNS, | ||
| 135 | FN0, A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, P4, P5, P6, PPLS, | ||
| 136 | LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, UP, P1, P2, P3, PENT, | ||
| 137 | LCTL,LALT, SPC, LGUI,BSLS,LEFT,RGHT,DOWN, P0, PDOT | ||
| 138 | ), | ||
| 139 | // HHKB & WASD | ||
| 140 | KEYMAP( | ||
| 141 | ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, DEL, NLCK,PEQL,PSLS,PAST, | ||
| 142 | CAPS,HOME,UP, PGUP,NO, NO, NO, NO, PSCR,SLCK,BRK, UP, INS, P7, P8, P9, PMNS, | ||
| 143 | FN0, LEFT,DOWN,RGHT,NO, NO, NO, NO, HOME,PGUP,LEFT,RGHT, ENT, P4, P5, P6, PPLS, | ||
| 144 | LSFT,END, NO, PGDN,NO, VOLD,VOLU,MUTE,END, PGDN,DOWN, UP, P1, P2, P3, PENT, | ||
| 145 | LCTL,LALT, SPC, LGUI,BSLS,LEFT,RGHT,DOWN, P0, PDOT | ||
| 146 | ), | ||
| 147 | #else | ||
| 148 | // hasu's keymap | ||
| 149 | // To enable use this 'make' option: make EXTRAFLAGS=-DHASU | ||
| 130 | KEYMAP( | 150 | KEYMAP( |
| 131 | ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, ESC, PEQL,PSLS,PAST, | 151 | ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, ESC, PEQL,PSLS,PAST, |
| 132 | TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC, P7, P8, P9, PMNS, | 152 | TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC, P7, P8, P9, PMNS, |
| 133 | LCTL,A, S, D, F, G, H, J, K, L, FN1, QUOT, ENT, P4, P5, P6, PPLS, | 153 | LCTL,A, S, D, F, G, H, J, K, L, FN1, QUOT, ENT, P4, P5, P6, PPLS, |
| 134 | LSFT,Z, X, C, V, B, N, M, COMM,DOT, FN2, UP, P1, P2, P3, PENT, | 154 | LSFT,Z, X, C, V, B, N, M, COMM,DOT, FN2, FN3, P1, P2, P3, PENT, |
| 135 | FN0, LALT, SPC, LGUI,BSLS,LEFT,DOWN,RGHT, P0, PDOT | 155 | LCTL,LALT, SPC, LGUI,BSLS,LEFT,RGHT,DOWN, P0, PDOT |
| 136 | ), | 156 | ), |
| 137 | // HHKB & WASD | 157 | // HHKB & WASD |
| 138 | KEYMAP( | 158 | KEYMAP( |
| 139 | GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, DEL, NLCK,PEQL,PSLS,PAST, | 159 | GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, DEL, NLCK,PEQL,PSLS,PAST, |
| 140 | CAPS,HOME,UP, PGUP,NO, NO, NO, NO, PSCR,SLCK,BRK, UP, INS, P7, P8, P9, PMNS, | 160 | CAPS,HOME,UP, PGUP,NO, NO, NO, NO, PSCR,SLCK,BRK, UP, INS, P7, P8, P9, PMNS, |
| 141 | LCTL,LEFT,DOWN,RGHT,NO, NO, NO, NO, HOME,PGUP,LEFT,RGHT, ENT, P4, P5, P6, PPLS, | 161 | LCTL,LEFT,DOWN,RGHT,NO, NO, NO, NO, HOME,PGUP,LEFT,RGHT, ENT, P4, P5, P6, PPLS, |
| 142 | LSFT,END, NO, PGDN,NO, VOLD,VOLU,MUTE,END, PGDN,DOWN, UP, P1, P2, P3, PENT, | 162 | LSFT,END, NO, PGDN,NO, VOLD,VOLU,MUTE,END, PGDN,DOWN, FN3, P1, P2, P3, PENT, |
| 143 | FN0, LALT, SPC, LGUI,BSLS,LEFT,DOWN,RGHT, P0, PDOT | 163 | LCTL,LALT, SPC, LGUI,BSLS,LEFT,RGHT,DOWN, P0, PDOT |
| 144 | ), | 164 | ), |
| 145 | // vi mousekeys | 165 | // vi mousekeys |
| 146 | KEYMAP( | 166 | KEYMAP( |
| @@ -148,7 +168,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 148 | CAPS,NO, NO, NO, NO, NO, WH_L,WH_D,WH_U,WH_R,NO, NO, NO, P7, P8, P9, PMNS, | 168 | CAPS,NO, NO, NO, NO, NO, WH_L,WH_D,WH_U,WH_R,NO, NO, NO, P7, P8, P9, PMNS, |
| 149 | NO, VOLD,VOLU,MUTE,NO, NO, MS_L,MS_D,MS_U,MS_R,FN1, NO, ENT, P4, P5, P6, PPLS, | 169 | NO, VOLD,VOLU,MUTE,NO, NO, MS_L,MS_D,MS_U,MS_R,FN1, NO, ENT, P4, P5, P6, PPLS, |
| 150 | LSFT,NO, NO, NO, NO, BTN3,BTN2,BTN1,NO, NO, NO, UP, P1, P2, P3, PENT, | 170 | LSFT,NO, NO, NO, NO, BTN3,BTN2,BTN1,NO, NO, NO, UP, P1, P2, P3, PENT, |
| 151 | LCTL,LALT, BTN1, LGUI,BSLS,LEFT,DOWN,RGHT, P0, PDOT | 171 | LCTL,LALT, BTN1, LGUI,BSLS,LEFT,RGHT,DOWN, P0, PDOT |
| 152 | ), | 172 | ), |
| 153 | // vi cusorkeys | 173 | // vi cusorkeys |
| 154 | KEYMAP( | 174 | KEYMAP( |
| @@ -156,23 +176,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 156 | CAPS,NO, NO, NO, NO, NO, HOME,PGDN,PGUP,END, NO, NO, NO, P7, P8, P9, PMNS, | 176 | CAPS,NO, NO, NO, NO, NO, HOME,PGDN,PGUP,END, NO, NO, NO, P7, P8, P9, PMNS, |
| 157 | NO, NO, NO, NO, NO, NO, LEFT,DOWN,UP, RGHT,NO, NO, ENT, P4, P5, P6, PPLS, | 177 | NO, NO, NO, NO, NO, NO, LEFT,DOWN,UP, RGHT,NO, NO, ENT, P4, P5, P6, PPLS, |
| 158 | LSFT,NO, NO, NO, NO, NO, HOME,PGDN,PGUP,END, FN2, UP, P1, P2, P3, PENT, | 178 | LSFT,NO, NO, NO, NO, NO, HOME,PGDN,PGUP,END, FN2, UP, P1, P2, P3, PENT, |
| 159 | LCTL,LALT, SPC, LGUI,BSLS,LEFT,DOWN,RGHT, P0, PDOT | 179 | LCTL,LALT, SPC, LGUI,BSLS,LEFT,RGHT,DOWN, P0, PDOT |
| 160 | ), | ||
| 161 | #else | ||
| 162 | KEYMAP( | ||
| 163 | GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, LGUI,PEQL,PSLS,PAST, | ||
| 164 | TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC, P7, P8, P9, PMNS, | ||
| 165 | FN0, A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, P4, P5, P6, PPLS, | ||
| 166 | LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, UP, P1, P2, P3, PENT, | ||
| 167 | LCTL,LALT, SPC, LGUI,BSLS,LEFT,DOWN,RGHT, P0, PDOT | ||
| 168 | ), | ||
| 169 | // HHKB & WASD | ||
| 170 | KEYMAP( | ||
| 171 | ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, DEL, NLCK,PEQL,PSLS,PAST, | ||
| 172 | CAPS,HOME,UP, PGUP,NO, NO, NO, NO, PSCR,SLCK,BRK, UP, INS, P7, P8, P9, PMNS, | ||
| 173 | FN0, LEFT,DOWN,RGHT,NO, NO, NO, NO, HOME,PGUP,LEFT,RGHT, ENT, P4, P5, P6, PPLS, | ||
| 174 | LSFT,END, NO, PGDN,NO, VOLD,VOLU,MUTE,END, PGDN,DOWN, UP, P1, P2, P3, PENT, | ||
| 175 | LCTL,LALT, SPC, LGUI,BSLS,LEFT,DOWN,RGHT, P0, PDOT | ||
| 176 | ), | 180 | ), |
| 177 | #endif | 181 | #endif |
| 178 | }; | 182 | }; |
