]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/atom47/keymaps/maartenwut/keymap.c
Add support for rev3 of the Atom47 (#2672)
[qmk_firmware.git] / keyboards / atom47 / keymaps / maartenwut / keymap.c
1 #include "atom47.h"
2
3 // Each layer gets a name for readability, which is then used in the keymap matrix below.
4 // The underscores don't mean anything - you can have a layer called STUFF or any other name.
5 // Layer names don't all need to be of the same length, obviously, and you can also skip them
6 // entirely and just use numbers.
7
8 #define _MA 0 //Main layer
9 #define _LO 1 //FN1
10 #define _RA 2 //FN
11
12 #define _______ KC_TRNS
13
14 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
15 [_MA] = KEYMAP_ANSI(
16   KC_ESC,               KC_Q,           KC_W,           KC_E,           KC_R,           KC_T,           KC_Y,           KC_U,           KC_I,           KC_O,           KC_P,           KC_DEL,         KC_BSPC,        \
17   KC_TAB,               KC_A,           KC_S,           KC_D,           KC_F,           KC_G,           KC_H,           KC_J,           KC_K,           KC_L,           KC_SCLN,                                KC_ENT,         \
18   KC_LSFT,                                      KC_Z,           KC_X,           KC_C,           KC_V,           KC_B,           KC_N,           KC_M,           KC_COMM,        KC_DOT,         KC_SLSH,        KC_RSFT,        \
19   KC_LCTL,              KC_LGUI,        KC_LALT,        MO(_LO),                                KC_SPC,                                 KC_SPC,                                 MO(_RA),        KC_RALT,        KC_APP,         KC_RCTRL),      \
20
21 [_RA] = KEYMAP_ANSI(
22   _______,              _______,        _______,        _______,        _______,        _______,        _______,        KC_PGUP,        KC_UP,          KC_PGDN,        _______,        _______,        _______,        \
23   KC_CAPS,              _______,        _______,        _______,        _______,        _______,        _______,        KC_LEFT,        KC_DOWN,        KC_RIGHT,       _______,                                _______,        \
24   _______,                                      _______,        _______,        _______,        _______,        _______,        _______,        _______,        KC_VOLD,        KC_VOLU,        KC_MPLY,        KC_PSCR,        \
25   _______,              _______,        _______,        _______,                                _______,                                _______,                                _______,        _______,        _______,        _______),       \
26
27 [_LO] = KEYMAP_ANSI(
28   KC_GRV,               KC_F1,          KC_F2,          KC_F3,          KC_F4,          KC_F5,          KC_F6,          KC_F7,          KC_F8,          KC_F9,          KC_F10,         KC_F11,         KC_F12,         \
29   KC_1,                 KC_2,           KC_3,           KC_4,           KC_5,           KC_6,           KC_7,           KC_8,           KC_9,           KC_0,           KC_MINS,                                KC_EQL,         \
30   _______,                                      _______,        _______,        _______,        _______,        _______,        _______,        KC_QUOT,        KC_LBRC,        KC_RBRC,        KC_BSLS,        _______,        \
31   _______,              _______,        _______,        _______,                                _______,                                _______,                                _______,        _______,        _______,        RESET), \
32
33 };
34
35 void led_set_user(uint8_t usb_led) {
36     if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
37         // Turn capslock on
38                 PORTE &= ~(1 << 6);
39
40
41     } else {
42         // Turn capslock off
43         PORTE |= (1 << 6);
44     }
45 }
46