~ruther/qmk_firmware

bf92bdd7fa9938c162c29e565d245e5609e4a912 — tmk 14 years ago 06eb50b
add keymap layer: Matias half keyboard style(SPACE) [NOT USED]
2 files changed, 40 insertions(+), 8 deletions(-)

M README
M hhkb/keymap.c
M README => README +8 -0
@@ 84,6 84,9 @@ debouncing logic
    will be coded when bouncing occurs.
    bouncing doesnt occur on my ALPS switch so far.
    scan rate is too slow?(to be measure)
layer switch
    time before switching
    timeout when not used during specific time

Trackpoint(PS/2)
    receive PS/2 signal from TrackPoint


@@ 108,6 111,11 @@ DONE:
support for HHKB pro matrix signal
    exchange controller board with teensy
    2010/10/11
keymap
    Matias half keyboard style
    2010/10/23
souce code cleaning
    2010/10/23


EOF

M hhkb/keymap.c => hhkb/keymap.c +32 -8
@@ 43,7 43,7 @@ static int onbit(uint8_t bits);
 *      |Gui |Alt  |Space                  |Alt  |Gui|
 *      `--------------------------------------------'
 * 
 * Layer3(RALT) vi mode
 * Layer2(RALT) vi mode
 * ,-----------------------------------------------------------.
 * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del|
 * |-----------------------------------------------------------|


@@ 56,7 56,7 @@ static int onbit(uint8_t bits);
 *       |Gui|Alt  |Sapce                  |xxxxx|Mb3|
 *       `-------------------------------------------'
 *
 * Layer4(semicolon) mouse mode
 * Layer3(semicolon) mouse mode
 * ,-----------------------------------------------------------.
 * |Esc|   |   |   |   |   |   |   |   |   |   |   |   |   |   |
 * |-----------------------------------------------------------|


@@ 68,6 68,19 @@ static int onbit(uint8_t bits);
 * `-----------------------------------------------------------'
 *      |Gui |Alt  |Mb1                    |Alt  |Gui|
 *      `--------------------------------------------'
 *
 * Layer4 Matias half keyboard style
 * ,-----------------------------------------------------------.
 * |  -|  0|  9|  8|  7|  6|  5|  4|  3|  2|  1|   |   |   |Esc|
 * |-----------------------------------------------------------|
 * |Backs|  P|  O|  I|  U|  Y|  T|  R|  E|  W|  Q|   |   |Tab  |
 * |-----------------------------------------------------------|
 * |Contro|  ;|  L|  K|  J|  H|  G|  F|  D|  S|  A|Con|Control |
 * |-----------------------------------------------------------|
 * |Shift   |  /|  .|  ,|  M|  N|  B|  V|  C|  X|  Z|Shift |   |
 * `-----------------------------------------------------------'
 *      |Gui |Alt  |xxxxxxxxxxxxxxxxxxxxxxx|Alt  |Gui|
 *      `--------------------------------------------'
 * 
 * Mc: Mouse Cursor / Mb: Mouse Button / Mw: Mouse Wheel 
 */


@@ 76,15 89,15 @@ static int onbit(uint8_t bits);
static const uint8_t PROGMEM fn_keycode[] = {
    KB_NO,          // FN_0
    KB_NO,          // FN_1
    KB_RALT,        // FN_2
    KB_NO,          // FN_2
    KB_SCOLON,      // FN_3
    KB_NO,          // FN_4
    KB_SPACE,       // FN_4
    KB_NO,          // FN_5
    KB_NO,          // FN_6
    KB_NO,          // FN_7
};
/* layer to change into while Fn key pressed */ 
static const int PROGMEM fn_layer[] = { 0, 1, 2, 3, 0, 0, 0, 0 };
static const int PROGMEM fn_layer[] = { 0, 1, 2, 3, 4, 0, 0, 0 };

static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*  plain keymap


@@ 110,7 123,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
        { KB_9,       KB_0,       KB_O,       KB_P,       FN_3,       KB_L,       KB_COMMA,   KB_NO       },
        { KB_MINUS,   KB_EQUAL,   KB_RBRACKET,KB_LBRACKET,KB_QUOTE,   KB_SLASH,   KB_DOT,     KB_NO       },
    },
    // 1: FN_1 HHKB mode(Fn)
    // 1: HHKB mode(Fn)
    {
        { KB_F2,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO       },
        { KB_F3,      KB_F4,      KB_NO,      KB_NO,      KB_MUTE,    KB_F20,     KB_NO,      KB_NO       },


@@ 121,7 134,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
        { KB_F9,      KB_F10,     KB_SCKLOCK, KB_BREAK,   KB_LEFT,    KB_PGUP,    KB_END,     KB_NO       },
        { KB_F11,     KB_F12,     KB_NO,      KB_UP,      KB_RIGHT,   KB_DOWN,    KB_PGDOWN,  KB_NO       },
    },
    // 2: FN_2 vi mode(RALT)
    // 2: vi mode(RALT)
    {
        { KB_F2,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO       },
        { KB_F3,      KB_F4,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO       },


@@ 132,7 145,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
        { KB_F9,      KB_F10,     KB_END,     KB_NO,      KB_NO,      KB_RIGHT,   MS_UP,      KB_NO       },
        { KB_F11,     KB_F12,     MS_WH_UP,   MS_WH_DOWN, KB_NO,      MS_BTN1,    MS_RIGHT,   KB_NO       },
    },
    // 3: FN_3 vi mouse mode(SCOLON)
    // 3: vi mouse mode(SCOLON)
    {
        { KB_F2,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO       },
        { KB_F3,      KB_F4,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO,      KB_NO       },


@@ 143,6 156,17 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
        { KB_F9,      KB_F10,     MS_WH_RIGHT,KB_NO,      KB_NO,      MS_RIGHT,   MS_BTN2,    KB_NO       },
        { KB_F11,     KB_F12,     KB_NO,      KB_NO,      KB_NO,      KB_NO,      MS_BTN3,    KB_NO       },
    },
    // 4: Matias half keyboard style(SPACE) [NOT USED]
    {
        { KB_9,       KB_P,       KB_O,       KB_L,       KB_SCOLON,  KB_SLASH,   KB_DOT,     KB_COMMA    },
        { KB_8,       KB_7,       KB_U,       KB_I,       KB_K,       KB_J,       KB_M,       KB_N        },
        { KB_6,       KB_5,       KB_T,       KB_Y,       KB_H,       KB_G,       KB_B,       KB_NO       },
        { KB_0,       KB_MINUS,   KB_BSPACE,  KB_LCTRL,   KB_LSHIFT,  KB_LGUI,    KB_LALT,    KB_NO       },
        { KB_4,       KB_3,       KB_R,       KB_E,       KB_D,       KB_F,       KB_V,       KB_NO       },
        { KB_NO,      KB_ESCAPE,  KB_TAB,     KB_RCTRL,   FN_1,       KB_RSHIFT,  KB_RGUI,    KB_RALT     },
        { KB_2,       KB_1,       KB_W,       KB_Q,       KB_A,       KB_S,       KB_C,       KB_NO       },
        { KB_NO,      KB_NO,      KB_RBRACKET,KB_LBRACKET,KB_QUOTE,   KB_Z,       KB_X,       KB_NO       },
    },
};