]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/foobar/foobar.h
Keyboard: Initial foobar port (#4367)
[qmk_firmware.git] / keyboards / foobar / foobar.h
1 /* Copyright 2018
2  *
3  * This program is free software: you can redistribute it and/or modify
4  * it under the terms of the GNU General Public License as published by
5  * the Free Software Foundation, either version 2 of the License, or
6  * (at your option) any later version.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
15  */
16 #pragma once
17
18 #include "quantum.h"
19 #define ___ KC_NO
20
21 #ifndef FLIP_HALF
22 #define LAYOUT_split( \
23         L00, L01, L02, L03, L04, R00, R01, R02, R03, R04, \
24         L10, L11, L12, L13, L14, R10, R11, R12, R13, R14, \
25         L20, L21, L22, L23, L24, R20, R21, R22, R23, R24  \
26 ) { \
27         { L00, L01, L02, L03, L04 }, \
28         { L10, L11, L12, L13, L14 }, \
29         { L20, L21, L22, L23, L24 }, \
30         { R04, R03, R02, R01, R00 }, \
31         { R14, R13, R12, R11, R10 }, \
32         { R24, R23, R22, R21, R20 }  \
33 }
34 #else
35 #define LAYOUT_split( \
36         L00, L01, L02, L03, L04, R00, R01, R02, R03, R04, \
37         L10, L11, L12, L13, L14, R10, R11, R12, R13, R14, \
38         L20, L21, L22, L23, L24, R20, R21, R22, R23, R24  \
39 ) { \
40         { L00, L01, L02, L03, L04 }, \
41         { L10, L11, L12, L13, L14 }, \
42         { L20, L21, L22, L23, L24 }, \
43         { R00, R01, R02, R03, R04 }, \
44         { R10, R11, R12, R13, R14 }, \
45         { R20, R21, R22, R23, R24 }  \
46 }
47 #endif
48
49 #define LAYOUT_macro( \
50         L00, L01, L02, L03, L04, \
51   L10, L11, L12, L13, L14, \
52   L20, L21, L22, L23, L24  \
53 ) { \
54         { L00, L01, L02, L03, L04 }, \
55         { L10, L11, L12, L13, L14 }, \
56         { L20, L21, L22, L23, L24 }, \
57         { ___, ___, ___, ___, ___ }, \
58   { ___, ___, ___, ___, ___ }, \
59   { ___, ___, ___, ___, ___ }  \
60 }
61
62 #define LAYOUT LAYOUT_macro
63
64 #ifdef USE_I2C
65   #error "I2C not Supported"
66 #endif