aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/satan/keymaps/fakb/config.h92
-rw-r--r--keyboards/satan/keymaps/fakb/keymap.c35
-rw-r--r--keyboards/satan/keymaps/fakb/readme.md58
-rw-r--r--keyboards/satan/keymaps/fakb/rules.mk16
4 files changed, 201 insertions, 0 deletions
diff --git a/keyboards/satan/keymaps/fakb/config.h b/keyboards/satan/keymaps/fakb/config.h
new file mode 100644
index 000000000..a8df7ecef
--- /dev/null
+++ b/keyboards/satan/keymaps/fakb/config.h
@@ -0,0 +1,92 @@
1#ifndef CONFIG_H
2#define CONFIG_H
3
4#include "config_common.h"
5
6/* USB Device descriptor parameter */
7#define VENDOR_ID 0xFEED
8#define PRODUCT_ID 0x6060
9#define DEVICE_VER 0x0003
10#define MANUFACTURER SATAN
11#define PRODUCT GH60
12#define DESCRIPTION QMK keyboard firmware for Satan GH60 with WS2812 support
13
14/* key matrix size */
15#define MATRIX_ROWS 5
16#define MATRIX_COLS 14
17
18// ROWS: Top to bottom, COLS: Left to right
19
20#define MATRIX_ROW_PINS { D0, D1, D2, D3, D5 }
21#define MATRIX_COL_PINS { F0, F1, E6, C7, C6, B7, D4, B1, B0, B5, B4, D7, D6, B3 }
22#define UNUSED_PINS
23
24#define BACKLIGHT_PIN B6
25
26/* COL2ROW or ROW2COL */
27#define DIODE_DIRECTION COL2ROW
28
29/* define if matrix has ghost */
30//#define MATRIX_HAS_GHOST
31
32/* Set 0 if debouncing isn't needed */
33#define DEBOUNCING_DELAY 5
34
35/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
36//#define LOCKING_SUPPORT_ENABLE
37/* Locking resynchronize hack */
38//#define LOCKING_RESYNC_ENABLE
39/* key combination for command
40#define IS_COMMAND() ( \
41 keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
42)
43*/
44/* Backlight configuration
45 */
46#define BACKLIGHT_LEVELS 8
47
48/* Underlight configuration
49 */
50
51#define RGB_DI_PIN E2
52#define RGBLIGHT_ANIMATIONS
53#define RGBLED_NUM 8 // Number of LEDs
54#define RGBLIGHT_HUE_STEP 10
55#define RGBLIGHT_SAT_STEP 17
56#define RGBLIGHT_VAL_STEP 17
57
58/*
59 * Feature disable options
60 * These options are also useful to firmware size reduction.
61 */
62
63/* disable debug print */
64//#define NO_DEBUG
65
66/* disable print */
67//#define NO_PRINT
68
69/* disable action features */
70//#define NO_ACTION_LAYER
71//#define NO_ACTION_TAPPING
72#define NO_ACTION_ONESHOT
73#define NO_ACTION_MACRO
74#define NO_ACTION_FUNCTION
75
76#endif
77
78#ifndef CONFIG_USER_H
79#define CONFIG_USER_H
80
81#define MOUSEKEY_DELAY 0
82#define MOUSEKEY_INTERVAL 1
83#define MOUSEKEY_MAX_SPEED 4
84#define MOUSEKEY_TIME_TO_MAX 77
85#define MOUSEKEY_WHEEL_MAX_SPEED 1
86#define MOUSEKEY_WHEEL_TIME_TO_MAX 255
87
88// only change
89#undef RGB_DI_PIN
90#define RGB_DI_PIN B2
91
92#endif
diff --git a/keyboards/satan/keymaps/fakb/keymap.c b/keyboards/satan/keymaps/fakb/keymap.c
new file mode 100644
index 000000000..f6a946195
--- /dev/null
+++ b/keyboards/satan/keymaps/fakb/keymap.c
@@ -0,0 +1,35 @@
1#include "satan.h"
2
3#define _______ KC_TRNS
4#define XXXXXXX KC_NO
5#define LCTL_MA LCTL_T(KC_UP)
6#define LSFT_MA LSFT_T(KC_DOWN)
7#define RSFT_MA SFT_T(KC_DOWN)
8#define TABS_MA LT(1,KC_TAB)
9#define SPCE_MA LT(2,KC_SPC)
10
11const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
12
13[0] = KEYMAP(
14 KC_GESC,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,KC_EQL, KC_BSLS,KC_NUBS,\
15 TABS_MA,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_LBRC,KC_RBRC,KC_BSPC,\
16 LCTL_MA,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT,XXXXXXX,KC_ENT ,\
17 LSFT_MA,KC_NUBS,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,RSFT_MA,MO(1) ,\
18 XXXXXXX,KC_LALT,KC_LGUI, SPCE_MA, KC_RGUI,KC_RALT,XXXXXXX,XXXXXXX),
19
20[1] = KEYMAP(
21 KC_PSCR,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_INS ,_______,\
22 _______,_______,_______,KC_PGUP,KC_PGDN,KC_HOME,KC_END ,KC_PGDN,KC_PGUP,_______,_______,_______,_______,KC_DEL ,\
23 KC_CAPS,KC_NUBS,KC_LEFT,KC_UP ,KC_DOWN,KC_RGHT,KC_LEFT,KC_DOWN,KC_UP ,KC_RGHT,_______,_______,_______,_______,\
24 _______,_______,BL_TOGG,BL_INC ,BL_DEC ,_______,_______,KC_VOLD,KC_VOLU,KC_MUTE,_______,_______,_______,_______,\
25 _______,_______,_______, _______, _______,_______,_______,_______),
26
27[2] = KEYMAP(
28 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,RESET ,\
29 KC_BTN5,KC_BTN4,KC_BTN3,KC_BTN2,KC_BTN1,KC_HOME,KC_END ,_______,_______,_______,_______,_______,_______,_______,\
30 _______,_______,KC_WH_L,KC_WH_U,KC_WH_D,KC_WH_R,KC_MS_L,KC_MS_D,KC_MS_U,KC_MS_R,_______,_______,_______,_______,\
31 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,\
32 _______,_______,_______, _______, _______,_______,_______,_______),
33
34
35};
diff --git a/keyboards/satan/keymaps/fakb/readme.md b/keyboards/satan/keymaps/fakb/readme.md
new file mode 100644
index 000000000..b02b41816
--- /dev/null
+++ b/keyboards/satan/keymaps/fakb/readme.md
@@ -0,0 +1,58 @@
1# FabulousAnomalyKeyBoard
2
3This layout features an efficient layout for people without
4a mouse.
5
6## layers
7
8Layer Base: complete basic keyboard
9Layer Fn-Tab: F1-F12, Arrow Keys, Home, End, Backlight, Media
10Layer Fn-Space: mouse keys in a vim like manner
11
12For detailed info check out keymap.c
13
14## the CTRL key
15
16It is where you would suspect CAPSLOCK to be.
17WHO NEEDS CAPSLOCK ANYWAYS?
18For those rare cases you need to shout at somebody in a comment
19section you can still do a capslock by using TABCTRL
20
21## the SUPER key
22
23There are two super keys. They are next to the space bar.
24The intention is easing the use of tiling window mangers
25
26## emergency mouse
27
28Without a mouse you will find yourself in a situation where all
29your tiling goodness will just not be able to click onto that
30"close ads" button.
31This keymap integrates a basic mouse pointer directly into the keyboard.
32Mouse is accessible via holding SPACE and tapping keys:
33```
34SPACE
35h Move cursor left
36j Move cursor down
37k Move cursor up
38l Move cursor right
39
40w Middle Mouse Click
41r Right click
42e Left click
43
44s Scroll wheel left
45d Scroll wheel down
46f Scroll wheel up
47g Scroll wheel right
48```
49
50## shell focused
51
52Working in a shell the up and down arrow keys are often needed to
53look at old commands or reuse some.
54When held, the left ctrl and left shift will act as expected,
55but when tapped they will become UP and DOWN arrow-keys.
56
57## krautfriend
58The keys <|> are accessible even without a 102nd key
diff --git a/keyboards/satan/keymaps/fakb/rules.mk b/keyboards/satan/keymaps/fakb/rules.mk
new file mode 100644
index 000000000..c2b5df6cd
--- /dev/null
+++ b/keyboards/satan/keymaps/fakb/rules.mk
@@ -0,0 +1,16 @@
1BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
2MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
3EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
4CONSOLE_ENABLE = no # Console for debug(+400)
5COMMAND_ENABLE = no # Commands for debug and configuration
6NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
7RGBLIGHT_ENABLE = no # Enable keyboard underlight functionality (+4870)
8BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality (+1150)
9MIDI_ENABLE = no # MIDI controls
10AUDIO_ENABLE = no
11UNICODE_ENABLE = no # Unicode
12BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
13
14ifndef QUANTUM_DIR
15 include ../../../../Makefile
16endif