2017-04-19 03:27:49 -07:00
|
|
|
#ifndef MITOSIS_H
|
|
|
|
#define MITOSIS_H
|
|
|
|
|
|
|
|
#include "quantum.h"
|
|
|
|
#include "matrix.h"
|
|
|
|
#include "backlight.h"
|
|
|
|
#include <stddef.h>
|
|
|
|
|
|
|
|
#define red_led_off PORTF |= (1<<5)
|
|
|
|
#define red_led_on PORTF &= ~(1<<5)
|
|
|
|
#define blu_led_off PORTF |= (1<<4)
|
|
|
|
#define blu_led_on PORTF &= ~(1<<4)
|
|
|
|
#define grn_led_off PORTD |= (1<<1)
|
|
|
|
#define grn_led_on PORTD &= ~(1<<1)
|
|
|
|
|
|
|
|
#define set_led_off red_led_off; grn_led_off; blu_led_off
|
|
|
|
#define set_led_red red_led_on; grn_led_off; blu_led_off
|
|
|
|
#define set_led_blue red_led_off; grn_led_off; blu_led_on
|
|
|
|
#define set_led_green red_led_off; grn_led_on; blu_led_off
|
|
|
|
#define set_led_yellow red_led_on; grn_led_on; blu_led_off
|
|
|
|
#define set_led_magenta red_led_on; grn_led_off; blu_led_on
|
|
|
|
#define set_led_cyan red_led_off; grn_led_on; blu_led_on
|
|
|
|
#define set_led_white red_led_on; grn_led_on; blu_led_on
|
|
|
|
|
|
|
|
/*
|
|
|
|
#define LED_B 5
|
|
|
|
#define LED_R 6
|
|
|
|
#define LED_G 7
|
|
|
|
|
|
|
|
#define all_leds_off PORTF &= ~(1<<LED_B) & ~(1<<LED_R) & ~(1<<LED_G)
|
|
|
|
|
|
|
|
#define red_led_on PORTF |= (1<<LED_R)
|
|
|
|
#define red_led_off PORTF &= ~(1<<LED_R)
|
|
|
|
#define grn_led_on PORTF |= (1<<LED_G)
|
|
|
|
#define grn_led_off PORTF &= ~(1<<LED_G)
|
|
|
|
#define blu_led_on PORTF |= (1<<LED_B)
|
|
|
|
#define blu_led_off PORTF &= ~(1<<LED_B)
|
|
|
|
|
|
|
|
#define set_led_off PORTF &= ~(1<<LED_B) & ~(1<<LED_R) & ~(1<<LED_G)
|
|
|
|
#define set_led_red PORTF = PORTF & ~(1<<LED_B) & ~(1<<LED_G) | (1<<LED_R)
|
|
|
|
#define set_led_blue PORTF = PORTF & ~(1<<LED_G) & ~(1<<LED_R) | (1<<LED_B)
|
|
|
|
#define set_led_green PORTF = PORTF & ~(1<<LED_B) & ~(1<<LED_R) | (1<<LED_G)
|
|
|
|
#define set_led_yellow PORTF = PORTF & ~(1<<LED_B) | (1<<LED_R) | (1<<LED_G)
|
|
|
|
#define set_led_magenta PORTF = PORTF & ~(1<<LED_G) | (1<<LED_R) | (1<<LED_B)
|
|
|
|
#define set_led_cyan PORTF = PORTF & ~(1<<LED_R) | (1<<LED_B) | (1<<LED_G)
|
|
|
|
#define set_led_white PORTF |= (1<<LED_B) | (1<<LED_R) | (1<<LED_G)
|
|
|
|
*/
|
|
|
|
|
|
|
|
// This a shortcut to help you visually see your layout.
|
Enables unicode for Mitosis (#2668)
* fixed comment typo
* Fixes invalid capitalization
Uppercase yes is invalid, so make treats it as no, which is
confusing when it seems like it should have found the method
definition for unicode.
* Own keymap, comma in mitosis
Own keymap is qwerty, workman, numbers, punctuation, function/mouse
layers, gaming, unicode, numberpad.
2018-04-04 09:17:38 -07:00
|
|
|
// The first section contains all of the arguments
|
2017-04-19 03:27:49 -07:00
|
|
|
// The second converts the arguments into a two-dimensional array
|
2018-06-30 19:42:06 -07:00
|
|
|
#define LAYOUT( \
|
2017-04-19 03:27:49 -07:00
|
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, \
|
|
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, \
|
|
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \
|
mitosis:datagrok add layer select, more layouts (#3835)
* mitosis:datagrok: fix typo'd inconsistent brace arrangement
(thank you @cari66ean)
* mitosis:datagrok: add makefile argument MITOSIS_DATAGROK_SLOWUART
* mitosis:datagrok: return backspace to opposite space, use TT(), more
- move backspace back to its position opposite space
- move del to red+backspace
- move tab back to tap-leftshift
- move printscreen/scrolllock/pause to blue+left pinky column
- use TT() instead of MO() to stick a layer on if wanted
- indentation that my text editor wants
- default to no audio; i can enable it at compile time.
* mitosis:datagrok: modularize features, add default layer rotator key
* mitosis: add MITOSIS_DATAGROK_BOTTOMSPACE makefile argument
* mitosis:datagrok: README improvements; document new features
* mitosis:datagrok: dot. not "number pad dot." in numbers layer
* mitosis:datagrok remove unnecessary _user audio code
* mitosis:datagrok: return to MO() for red/blue, keep TT() for purple
in this way, the LED still updates quickly when red or blue is pressed,
but we can still lock the purple layer on for 10-key numpad operation
with red+tapping blue.
* mitosis:datagrok: add colemak and dvorak default layers
* mitosis:datagrok update readme re: available default layouts
* mitosis: remove unneeded code that was overriding led_set_user
also, add some comments
* mitosis:datagrok: updated led setting code for new layers
also, place into led_set_user where it belongs, not matrix_scan_user.
* mitosis:datagrok: update LEDs when setting the default layer
maybe this should go into default_layer_set?
* mitosis:datagrok update readme with new imgur links + other improvements
* mitosis:datagrok fix typo in image urls
* mitosis:datagrok remove useless #include (ty @drashna)
* mitosis:datagrok undo unnecessary change to quantum/quantum.h
i can put the extern float definition in my own keymap code. (ty @drashna)
* mitosis:datagrok move customized layout to my keymap
no need to modify keyboard-level mitosis.h. (ty @drashna)
* mitosis:datagrok update comment describing my led indicator logic
* datagrok:mitosis update readme to document LED indicator.
2018-09-04 08:55:31 -07:00
|
|
|
k31, k32, k33, k34, k35, k36, k37, k38, \
|
|
|
|
k41, k42, k43, k44, k45, k46, k47, k48 \
|
2017-04-19 03:27:49 -07:00
|
|
|
) \
|
mitosis:datagrok add layer select, more layouts (#3835)
* mitosis:datagrok: fix typo'd inconsistent brace arrangement
(thank you @cari66ean)
* mitosis:datagrok: add makefile argument MITOSIS_DATAGROK_SLOWUART
* mitosis:datagrok: return backspace to opposite space, use TT(), more
- move backspace back to its position opposite space
- move del to red+backspace
- move tab back to tap-leftshift
- move printscreen/scrolllock/pause to blue+left pinky column
- use TT() instead of MO() to stick a layer on if wanted
- indentation that my text editor wants
- default to no audio; i can enable it at compile time.
* mitosis:datagrok: modularize features, add default layer rotator key
* mitosis: add MITOSIS_DATAGROK_BOTTOMSPACE makefile argument
* mitosis:datagrok: README improvements; document new features
* mitosis:datagrok: dot. not "number pad dot." in numbers layer
* mitosis:datagrok remove unnecessary _user audio code
* mitosis:datagrok: return to MO() for red/blue, keep TT() for purple
in this way, the LED still updates quickly when red or blue is pressed,
but we can still lock the purple layer on for 10-key numpad operation
with red+tapping blue.
* mitosis:datagrok: add colemak and dvorak default layers
* mitosis:datagrok update readme re: available default layouts
* mitosis: remove unneeded code that was overriding led_set_user
also, add some comments
* mitosis:datagrok: updated led setting code for new layers
also, place into led_set_user where it belongs, not matrix_scan_user.
* mitosis:datagrok: update LEDs when setting the default layer
maybe this should go into default_layer_set?
* mitosis:datagrok update readme with new imgur links + other improvements
* mitosis:datagrok fix typo in image urls
* mitosis:datagrok remove useless #include (ty @drashna)
* mitosis:datagrok undo unnecessary change to quantum/quantum.h
i can put the extern float definition in my own keymap code. (ty @drashna)
* mitosis:datagrok move customized layout to my keymap
no need to modify keyboard-level mitosis.h. (ty @drashna)
* mitosis:datagrok update comment describing my led indicator logic
* datagrok:mitosis update readme to document LED indicator.
2018-09-04 08:55:31 -07:00
|
|
|
{ \
|
|
|
|
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09 }, \
|
|
|
|
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19 }, \
|
|
|
|
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29 }, \
|
|
|
|
{ KC_NO, k31, k32, k33, k34, k35, k36, k37, k38, KC_NO }, \
|
|
|
|
{ KC_NO, k41, k42, k43, k44, k45, k46, k47, k48, KC_NO } \
|
|
|
|
}
|
2017-04-19 03:27:49 -07:00
|
|
|
#endif
|