~ruther/qmk_firmware

7597582a85ee8cd802ebe4b6809949918c4bdaf3 — tmk 13 years ago 660ea5a
Update M0110 keymap and add a Make target 'hasu'.

- change keymap for M0110
- add a Make target 'hasu' to build with hasu keymap.
3 files changed, 41 insertions(+), 25 deletions(-)

M m0110_usb/Makefile
M m0110_usb/README.md
M m0110_usb/keymap.c
M m0110_usb/Makefile => m0110_usb/Makefile +3 -0
@@ 50,3 50,6 @@ PROGRAM_CMD = teensy_loader_cli -mmcu=$(MCU) -w -v $(TARGET).hex

include $(COMMON_DIR)/pjrc.mk
include $(COMMON_DIR)/common.mk

hasu: EXTRAFLAGS += -DHASU
hasu: all

M m0110_usb/README.md => m0110_usb/README.md +6 -8
@@ 50,7 50,7 @@ Building Frimware
To compile firmware you need AVR GCC. You can use [WinAVR](http://winavr.sourceforge.net/) on Windows.
You can edit *Makefile* and *config.h* to change compile options and pin configuration.

    $ git clone ... (or download source)
    $ git clone git://github.com/tmk/tmk_keyboard.git (or download source)
    $ cd m0110_usb
    $ make



@@ 75,13 75,11 @@ You can change keymaps by editing *keymap.c*.
    `---------------------------------------------------------'
         |Ctr|Alt |         Space               |Gui |Ctr|
         `-----------------------------------------------'
    You can register Esc by hitting(press&release) Fn0 quickly.

#### *HHKB/WASD cursor Layer(Fn0)*
#### *HHKB/WASD Layer*
    ,---------------------------------------------------------.
    |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Delet|
    |---------------------------------------------------------|
    |Caps |Hom| Up|PgU|   |   |   |   |Psc|Slk|Pau|Up |Ins|  \|
    |Caps |Hom| Up|PgU|   |   |   |   |Psc|Slk|Pau|Up |   |Ins|
    |---------------------------------------------------------|
    |Fn0   |Lef|Dow|Rig|   |   |   |   |Hom|PgU|Lef|Rig|Return|
    |---------------------------------------------------------|


@@ 103,17 101,17 @@ You can change keymaps by editing *keymap.c*.
    |---------------------------------------------------------| |-----------|Ent|
    |Ctrl |Alt    |         Space             |  \|Lft|Rgt|Dn | |      0|  .|   |
    `---------------------------------------------------------' `---------------'
#### *HHKB/WASD cursor Layer(Fn0)*
#### *HHKB/WASD/mousekey  Layer*
    ,---------------------------------------------------------. ,---------------.
    |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Delet| |Nlk|Mb1|Mb3|Mb2|
    |---------------------------------------------------------| |---------------|
    |Caps |Hom| Up|PgU|   |   |   |   |Psc|Slk|Pau|Up |Ins|   | |MwD|McU|MwU|MwU|
    |Caps |Hom| Up|PgU|   |   |   |   |Psc|Slk|Pau|Up |   |   | |MwD|McU|MwU|MwU|
    |-----------------------------------------------------'   | |---------------|
    |Fn0   |Lef|Dow|Rig|   |   |   |   |Hom|PgU|Lef|Rig|Return| |McL|McD|McR|MwD|
    |---------------------------------------------------------| |---------------|
    |Shift   |End|   |PgD|   |VoD|VoU|Mut|End|PgD|Dow|Shif|Up | |MwL|McD|MwR|   |
    |---------------------------------------------------------| |-----------|Mb2|
    |Ctrl |Alt    |         Space        |Gui |  \|Lft|Rgt|Dn | |    Mb1|Mb3|   |
    |Ctrl |Alt    |         Space             |Ins|Lft|Rgt|Dn | |    Mb1|Mb3|   |
    `---------------------------------------------------------' `---------------'



M m0110_usb/keymap.c => m0110_usb/keymap.c +32 -17
@@ 55,34 55,49 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

// Assign Fn key(0-7) to a layer to which switch with the Fn key pressed.
static const uint8_t PROGMEM fn_layer[] = {
#ifndef HASU
    1,              // Fn0
    0,              // Fn1
    0,              // Fn2
    0,              // Fn3
    0,              // Fn4
    0,              // Fn5
    0,              // Fn6
    0               // Fn7
#else
    1,              // Fn0
    2,              // Fn1
    3,              // Fn2
    1,              // Fn3
    0,              // Fn4
    2,              // Fn4
    0,              // Fn5
    0,              // Fn6
    0               // Fn7
#endif
};

// Assign Fn key(0-7) to a keycode sent when release Fn key without use of the layer.
// See layer.c for details.
static const uint8_t PROGMEM fn_keycode[] = {
#ifndef HASU
    KB_ESC,         // Fn0
    KB_NO,          // Fn0
    KB_NO,          // Fn1
    KB_NO,          // Fn2
    KB_NO,          // Fn3
    KB_NO,          // Fn4
    KB_NO,          // Fn5
    KB_NO,          // Fn6
    KB_NO           // Fn7
#else
    KB_NO,          // Fn0
    KB_ENTER,       // Fn0
    KB_SCOLON,      // Fn1
    KB_SLASH,       // Fn2
    KB_UP,          // Fn3
#endif
    KB_NO,          // Fn4
    KB_NO,          // Fn5
    KB_NO,          // Fn6
    KB_NO           // Fn7
#endif
};

static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {


@@ 124,7 139,8 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
     * `---------------------------------------------------------' `---------------'
     * Mb: Mouse Button / Mc: Mouse Cursor / Mw: Mouse Wheel
     *
     * NOTE: You can register Esc by hitting(press&release) Fn0 quickly.
     * NOTE: M0110 has no arrow and keypad keys.
     * NOTE: \ is located next to ] on M0110.
     * NOTE: Gui between Space and \ is Enter on M0110 not exists on M0110A.
     * NOTE: LShift and RShift are logically same key. (M0110, M0110A)
     * NOTE: LOption and ROption are logically same key. (M0110)


@@ 140,28 156,27 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
    // HHKB & WASD
    KEYMAP(
    ESC, F1,  F2,  F3,  F4,  F5,  F6,  F7,  F8,  F9,  F10, F11, F12, DEL,     NLCK,BTN1,BTN3,BTN2,
    CAPS,HOME,UP,  PGUP,NO,  NO,  NO,  NO,  PSCR,SLCK,BRK, UP,  INS,          WH_D,MS_U,WH_U,WH_U,
    CAPS,HOME,UP,  PGUP,NO,  NO,  NO,  NO,  PSCR,SLCK,PAUS,UP,  NO,           WH_D,MS_U,WH_U,WH_U,
    FN0, LEFT,DOWN,RGHT,NO,  NO,  NO,  NO,  HOME,PGUP,LEFT,RGHT,     ENT,     MS_L,MS_D,MS_R,WH_D,
    LSFT,END, NO,  PGDN,NO,  VOLD,VOLU,MUTE,END, PGDN,DOWN,          UP,      WH_L,MS_D,WH_R,BTN2,
    LCTL,LALT,               SPC,                LGUI,BSLS,LEFT,RGHT,DOWN,    BTN1,     BTN3
    LCTL,LALT,               SPC,                LGUI,INS, LEFT,RGHT,DOWN,    BTN1,     BTN3
    ),
#else
    // hasu's keymap
    // To enable use this 'make' option: make EXTRAFLAGS=-DHASU
    // hasu's keymap(To enable this use 'make hasu' to add option flag: EXTRAFLAGS=-DHASU)
    KEYMAP(
    ESC, 1,   2,   3,   4,   5,   6,   7,   8,   9,   0,   MINS,EQL, BSPC,    LGUI,EQL, PSLS,PAST,
    TAB, Q,   W,   E,   R,   T,   Y,   U,   I,   O,   P,   LBRC,RBRC,         P7,  P8,  P9,  PMNS,
    LCTL,A,   S,   D,   F,   G,   H,   J,   K,   L,   FN1, QUOT,     ENT,     P4,  P5,  P6,  PPLS,
    LCTL,A,   S,   D,   F,   G,   H,   J,   K,   L,   FN1, QUOT,     FN0,     P4,  P5,  P6,  PPLS,
    LSFT,Z,   X,   C,   V,   B,   N,   M,   COMM,DOT, FN2,           FN3,     P1,  P2,  P3,  PENT,
    LCTL,LALT,               SPC,                LGUI,BSLS,LEFT,RGHT,DOWN,    LGUI,     PDOT
    FN4, LALT,               SPC,                LGUI,BSLS,LEFT,RGHT,DOWN,    LGUI,     PDOT
    ),
    // HHKB & WASD
    KEYMAP(
    GRV, F1,  F2,  F3,  F4,  F5,  F6,  F7,  F8,  F9,  F10, F11, F12, DEL,     NLCK,EQL, PSLS,PAST,
    CAPS,HOME,UP,  PGUP,NO,  NO,  NO,  NO,  PSCR,SLCK,BRK, UP,  INS,          P7,  P8,  P9,  PMNS,
    LCTL,LEFT,DOWN,RGHT,NO,  NO,  NO,  NO,  HOME,PGUP,LEFT,RGHT,     ENT,     P4,  P5,  P6,  PPLS,
    CAPS,HOME,UP,  PGUP,NO,  NO,  NO,  NO,  PSCR,SLCK,PAUS,UP,  NO,           P7,  P8,  P9,  PMNS,
    LCTL,LEFT,DOWN,RGHT,NO,  NO,  NO,  NO,  HOME,PGUP,LEFT,RGHT,     FN0,     P4,  P5,  P6,  PPLS,
    LSFT,END, NO,  PGDN,NO,  VOLD,VOLU,MUTE,END, PGDN,DOWN,          FN3,     P1,  P2,  P3,  PENT,
    LCTL,LALT,               SPC,                LGUI,BSLS,LEFT,RGHT,DOWN,    P0,       PDOT
    LCTL,LALT,               SPC,                LGUI,INS, LEFT,RGHT,DOWN,    P0,       PDOT
    ),
    // vi mousekeys
    KEYMAP(


@@ 169,15 184,15 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
    CAPS,NO,  NO,  NO,  NO,  NO,  WH_L,WH_D,WH_U,WH_R,NO,  NO,  NO,           P7,  P8,  P9,  PMNS,
    NO,  VOLD,VOLU,MUTE,NO,  NO,  MS_L,MS_D,MS_U,MS_R,FN1, NO,       ENT,     P4,  P5,  P6,  PPLS,
    LSFT,NO,  NO,  NO,  NO,  BTN3,BTN2,BTN1,NO,  NO,  NO,            UP,      P1,  P2,  P3,  PENT,
    LCTL,LALT,               BTN1,               LGUI,BSLS,LEFT,RGHT,DOWN,    P0,       PDOT
    FN4, LALT,               BTN1,               LGUI,NO,  LEFT,RGHT,DOWN,    P0,       PDOT
    ),
    // vi cusorkeys
    KEYMAP(
    GRV, F1,  F2,  F3,  F4,  F5,  F6,  F7,  F8,  F9,  F10, F11, F12, DEL,     NLCK,EQL, PSLS,PAST,
    CAPS,NO,  NO,  NO,  NO,  NO,  HOME,PGDN,PGUP,END, NO,  NO,  NO,           P7,  P8,  P9,  PMNS,
    CAPS,NO,  NO,  NO,  NO,  NO,  HOME,PGDN,PGUP,END, PSCR,SLCK,PAUS,         P7,  P8,  P9,  PMNS,
    NO,  NO,  NO,  NO,  NO,  NO,  LEFT,DOWN,UP,  RGHT,NO,  NO,       ENT,     P4,  P5,  P6,  PPLS,
    LSFT,NO,  NO,  NO,  NO,  NO,  HOME,PGDN,PGUP,END, FN2,           UP,      P1,  P2,  P3,  PENT,
    LCTL,LALT,               SPC,                LGUI,BSLS,LEFT,RGHT,DOWN,    P0,       PDOT
    LCTL,LALT,               SPC,                LGUI,INS, LEFT,RGHT,DOWN,    P0,       PDOT
    ),
#endif
};