@ -1,12 +1,11 @@
# ifndef SATAN_H
# define SATAN_H
# pragma once
# include "quantum.h"
// readability
# define XXX KC_NO
/* Satan GH60 matrix layout (3c is right of 3d, 3d is s hift)
/* All keys (3c is to the right of 3d, 3d is Right S hift)
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0 a | 0 b | 0 c | 0 d | 49 |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
@ -36,36 +35,7 @@
{ k40 , k41 , k42 , XXX , XXX , k45 , XXX , XXX , XXX , k49 , k4a , k4b , k4c , k4d } \
}
/* Satan GH60 ANSI layout-B
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0 a | 0 b | 0 c | 0 d |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
* | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1 a | 1 b | 1 c | 1 d |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
* | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 2 a | 2 b | 2 d |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
* | 30 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 3 a | 3 b | 3 d | 3 c |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
* | 40 | 41 | 42 | 45 | 4 a | 4 b | 4 c | 4 d |
* ` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - '
*/
# define LAYOUT_60_ansi_split_rshift( \
k00 , k01 , k02 , k03 , k04 , k05 , k06 , k07 , k08 , k09 , k0a , k0b , k0c , k0d , \
k10 , k11 , k12 , k13 , k14 , k15 , k16 , k17 , k18 , k19 , k1a , k1b , k1c , k1d , \
k20 , k21 , k22 , k23 , k24 , k25 , k26 , k27 , k28 , k29 , k2a , k2b , k2d , \
k30 , k32 , k33 , k34 , k35 , k36 , k37 , k38 , k39 , k3a , k3b , k3d , k3c , \
k40 , k41 , k42 , k45 , k4a , k4b , k4c , k4d \
) \
{ \
{ k00 , k01 , k02 , k03 , k04 , k05 , k06 , k07 , k08 , k09 , k0a , k0b , k0c , k0d } , \
{ k10 , k11 , k12 , k13 , k14 , k15 , k16 , k17 , k18 , k19 , k1a , k1b , k1c , k1d } , \
{ k20 , k21 , k22 , k23 , k24 , k25 , k26 , k27 , k28 , k29 , k2a , k2b , XXX , k2d } , \
{ k30 , XXX , k32 , k33 , k34 , k35 , k36 , k37 , k38 , k39 , k3a , k3b , k3c , k3d } , \
{ k40 , k41 , k42 , XXX , XXX , k45 , XXX , XXX , XXX , XXX , k4a , k4b , k4c , k4d } \
}
/* Satan GH60 ANSI layout
/* ANSI
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0 a | 0 b | 0 c | 0 d |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
@ -93,7 +63,7 @@
{ k40 , k41 , k42 , XXX , XXX , k45 , XXX , XXX , XXX , XXX , k4a , k4b , k4c , k4d } \
}
/* Satan GH60 ISO layout
/* ISO
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0 a | 0 b | 0 c | 0 d |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
@ -121,8 +91,7 @@
{ k40 , k41 , k42 , XXX , XXX , k45 , XXX , XXX , XXX , XXX , k4a , k4b , k4c , k4d } \
}
/* Satan GH60 ANSI split backspace, split right shift matrix layout
* a . k . a . HHKB layout
/* ANSI with split Backspace and Right Shift (HHKB layout)
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0 a | 0 b | 0 c | 0 d | 49 |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
@ -135,7 +104,6 @@
* | 40 | 41 | 42 | 45 | 4 a | 4 b | 4 c | 4 d |
* ` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - '
*/
# define LAYOUT_60_ansi_split_bs_rshift( \
k00 , k01 , k02 , k03 , k04 , k05 , k06 , k07 , k08 , k09 , k0a , k0b , k0c , k0d , k49 , \
k10 , k11 , k12 , k13 , k14 , k15 , k16 , k17 , k18 , k19 , k1a , k1b , k1c , k1d , \
@ -151,9 +119,9 @@
{ k40 , k41 , k42 , XXX , XXX , k45 , XXX , XXX , XXX , k49 , k4a , k4b , k4c , k4d } \
}
/* ISO split right shift key matrix layou t
/* ISO with split Right Shif t
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0 a | 0 b | 0 c | 0 d |
* | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0 a | 0 b | 0 c | 0 d | 49 |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
* | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1 a | 1 b | 1 c | |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - . |
@ -164,23 +132,52 @@
* | 40 | 41 | 42 | 45 | 4 a | 4 b | 4 c | 4 d |
* ` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - '
*/
# define LAYOUT_60_iso_split_ rshift( \
k00 , k01 , k02 , k03 , k04 , k05 , k06 , k07 , k08 , k09 , k0a , k0b , k0c , k0d , \
# define LAYOUT_60_iso_split_ bs_ rshift( \
k00 , k01 , k02 , k03 , k04 , k05 , k06 , k07 , k08 , k09 , k0a , k0b , k0c , k0d , k49 , \
k10 , k11 , k12 , k13 , k14 , k15 , k16 , k17 , k18 , k19 , k1a , k1b , k1c , \
k20 , k21 , k22 , k23 , k24 , k25 , k26 , k27 , k28 , k29 , k2a , k2b , k2c , k2d , \
k30 , k31 , k32 , k33 , k34 , k35 , k36 , k37 , k38 , k39 , k3a , k3b , k3d , k3c , \
k40 , k41 , k42 , k45 , k4a , k4b , k4c , k4d \
) { \
) \
{ \
{ k00 , k01 , k02 , k03 , k04 , k05 , k06 , k07 , k08 , k09 , k0a , k0b , k0c , k0d } , \
{ k10 , k11 , k12 , k13 , k14 , k15 , k16 , k17 , k18 , k19 , k1a , k1b , k1c , XXX } , \
{ k10 , k11 , k12 , k13 , k14 , k15 , k16 , k17 , k18 , k19 , k1a , k1b , k1c } , \
{ k20 , k21 , k22 , k23 , k24 , k25 , k26 , k27 , k28 , k29 , k2a , k2b , k2c , k2d } , \
{ k30 , k31 , k32 , k33 , k34 , k35 , k36 , k37 , k38 , k39 , k3a , k3b , k3c , k3d } , \
{ k40 , k41 , k42 , XXX , XXX , k45 , XXX , XXX , XXX , XXX, k4a , k4b , k4c , k4d } , \
{ k40 , k41 , k42 , XXX , XXX , k45 , XXX , XXX , XXX , k49, k4a , k4b , k4c , k4d } \
}
/* ISO w/ split right shift key matrix layou t
/* ANSI with split Right Shif t
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0 a | 0 b | 0 c | 0 d | 49 |
* | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0 a | 0 b | 0 c | 0 d |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
* | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1 a | 1 b | 1 c | 1 d |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
* | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 2 a | 2 b | 2 d |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
* | 30 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 3 a | 3 b | 3 d | 3 c |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
* | 40 | 41 | 42 | 45 | 4 a | 4 b | 4 c | 4 d |
* ` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - '
*/
# define LAYOUT_60_ansi_split_rshift( \
k00 , k01 , k02 , k03 , k04 , k05 , k06 , k07 , k08 , k09 , k0a , k0b , k0c , k0d , \
k10 , k11 , k12 , k13 , k14 , k15 , k16 , k17 , k18 , k19 , k1a , k1b , k1c , k1d , \
k20 , k21 , k22 , k23 , k24 , k25 , k26 , k27 , k28 , k29 , k2a , k2b , k2d , \
k30 , k32 , k33 , k34 , k35 , k36 , k37 , k38 , k39 , k3a , k3b , k3d , k3c , \
k40 , k41 , k42 , k45 , k4a , k4b , k4c , k4d \
) \
{ \
{ k00 , k01 , k02 , k03 , k04 , k05 , k06 , k07 , k08 , k09 , k0a , k0b , k0c , k0d } , \
{ k10 , k11 , k12 , k13 , k14 , k15 , k16 , k17 , k18 , k19 , k1a , k1b , k1c , k1d } , \
{ k20 , k21 , k22 , k23 , k24 , k25 , k26 , k27 , k28 , k29 , k2a , k2b , XXX , k2d } , \
{ k30 , XXX , k32 , k33 , k34 , k35 , k36 , k37 , k38 , k39 , k3a , k3b , k3c , k3d } , \
{ k40 , k41 , k42 , XXX , XXX , k45 , XXX , XXX , XXX , XXX , k4a , k4b , k4c , k4d } \
}
/* ISO with split Right Shift
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0 a | 0 b | 0 c | 0 d |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
* | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1 a | 1 b | 1 c | |
* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - . |
@ -191,22 +188,16 @@
* | 40 | 41 | 42 | 45 | 4 a | 4 b | 4 c | 4 d |
* ` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - '
*/
# define LAYOUT_60_iso_split_ bs_ rshift( \
k00 , k01 , k02 , k03 , k04 , k05 , k06 , k07 , k08 , k09 , k0a , k0b , k0c , k0d , k49 , \
# define LAYOUT_60_iso_split_ rshift( \
k00 , k01 , k02 , k03 , k04 , k05 , k06 , k07 , k08 , k09 , k0a , k0b , k0c , k0d , \
k10 , k11 , k12 , k13 , k14 , k15 , k16 , k17 , k18 , k19 , k1a , k1b , k1c , \
k20 , k21 , k22 , k23 , k24 , k25 , k26 , k27 , k28 , k29 , k2a , k2b , k2c , k2d , \
k30 , k31 , k32 , k33 , k34 , k35 , k36 , k37 , k38 , k39 , k3a , k3b , k3d , k3c , \
k40 , k41 , k42 , k45 , k4a , k4b , k4c , k4d \
) \
{ \
) { \
{ k00 , k01 , k02 , k03 , k04 , k05 , k06 , k07 , k08 , k09 , k0a , k0b , k0c , k0d } , \
{ k10 , k11 , k12 , k13 , k14 , k15 , k16 , k17 , k18 , k19 , k1a , k1b , k1c } , \
{ k10 , k11 , k12 , k13 , k14 , k15 , k16 , k17 , k18 , k19 , k1a , k1b , k1c , XXX } , \
{ k20 , k21 , k22 , k23 , k24 , k25 , k26 , k27 , k28 , k29 , k2a , k2b , k2c , k2d } , \
{ k30 , k31 , k32 , k33 , k34 , k35 , k36 , k37 , k38 , k39 , k3a , k3b , k3c , k3d } , \
{ k40 , k41 , k42 , XXX , XXX , k45 , XXX , XXX , XXX , k49, k4a , k4b , k4c , k4d } \
{ k40 , k41 , k42 , XXX , XXX , k45 , XXX , XXX , XXX , XXX, k4a , k4b , k4c , k4d } , \
}
void matrix_init_user ( void ) ;
void matrix_scan_user ( void ) ;
# endif