X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=keyboards%2Fcospad%2Fcospad.h;h=ad3ca0d6bc334bf71a8de78fa2609f6f1c4edc5d;hb=6af77551c67c846b06c596cbd367d66c755f8051;hp=36c7f3367a6b6e17678eaebc70cf21dac22f967c;hpb=5953af32153a4813279c57396f6bebc798de2ae2;p=qmk_firmware.git diff --git a/keyboards/cospad/cospad.h b/keyboards/cospad/cospad.h index 36c7f3367..ad3ca0d6b 100644 --- a/keyboards/cospad/cospad.h +++ b/keyboards/cospad/cospad.h @@ -1,10 +1,32 @@ -#ifndef COSPAD_H -#define COSPAD_H + +/* Copyright 2019 + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#pragma once #include "quantum.h" +#define ___ KC_NO -// readability -#define XXX KC_NO +/* This a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ /* COSPAD ortho matrix layout * ,-------------------. @@ -21,9 +43,24 @@ * | 50 | 51 | 52 | 53 | * `-------------------' */ +#define LAYOUT_ortho_6x4( \ + k00, k01, k02, k03, \ + k10, k11, k12, k13, \ + k20, k21, k22, k23, \ + k30, k31, k32, k33, \ + k40, k41, k42, k43, \ + k50, k51, k52, k53 \ +) \ +{ \ + {k00, k01, k02, k03}, \ + {k10, k11, k12, k13}, \ + {k20, k21, k22, k23}, \ + {k30, k31, k32, k33}, \ + {k40, k41, k42, k43}, \ + {k50, k51, k52, k53} \ +} - -/* COSPAD numpad matrix layout +/* COSPAD gamepad matrix layout * ,-------------------. * | 00 | 01 | 02 | 03 | * |----|----|----|----| @@ -33,32 +70,45 @@ * |----|----|----| 23 | * | 30 | 31 | 32 | | * |----|----|----|----| - * | 40 | 41 | 42 | | - * |----|----|----| 43 | - * | 50 | 52 | | + * | 40 | 41 | 42 | 43 | + * |----|----|----|----| + * | 50 | 51 | 52 | 53 | * `-------------------' */ -// The first section contains all of the arguments -// The second converts the arguments into a two-dimensional array -#define LAYOUT_ortho_6x4( \ - k00, k01, k02, k03, \ +#define LAYOUT_gamepad_6x4( \ + k00, k01, k02, k03, \ k10, k11, k12, k13, \ - k20, k21, k22, k23, \ - k30, k31, k32, k33, \ + k20, k21, k22, \ + k30, k31, k32, k23, \ k40, k41, k42, k43, \ k50, k51, k52, k53 \ ) \ { \ - {k00, k01, k02, k03}, \ - {k10, k11, k12, k13}, \ - {k20, k21, k22, k23}, \ - {k30, k31, k32, k33}, \ - {k40, k41, k42, k43}, \ - {k50, k51, k52, k53} \ + {k00, k01, k02, k03}, \ + {k10, k11, k12, k13}, \ + {k20, k21, k22, k23}, \ + {k30, k31, k32, ___}, \ + {k40, k41, k42, k43}, \ + {k50, k51, k52, k53} \ } +/* COSPAD numpad matrix layout + * ,-------------------. + * | 00 | 01 | 02 | 03 | + * |----|----|----|----| + * | 10 | 11 | 12 | 13 | + * |----|----|----|----| + * | 20 | 21 | 22 | | + * |----|----|----| 23 | + * | 30 | 31 | 32 | | + * |----|----|----|----| + * | 40 | 41 | 42 | | + * |----|----|----| 43 | + * | 50 | 52 | | + * `-------------------' + */ #define LAYOUT_numpad_6x4( \ - k00, k01, k02, k03, \ + k00, k01, k02, k03, \ k10, k11, k12, k13, \ k20, k21, k22, \ k30, k31, k32, k23, \ @@ -66,25 +116,15 @@ k50, k52, k43 \ ) \ { \ - {k00, k01, k02, k03}, \ - {k10, k11, k12, k13}, \ - {k20, k21, k22, k23}, \ - {k30, k31, k32, KC_NO}, \ - {k40, k41, k42, k43}, \ - {k50, KC_NO, k52, KC_NO} \ + {k00, k01, k02, k03}, \ + {k10, k11, k12, k13}, \ + {k20, k21, k22, k23}, \ + {k30, k31, k32, ___}, \ + {k40, k41, k42, k43}, \ + {k50, ___, k52, ___} \ } -void matrix_init_user(void); -void matrix_scan_user(void); - -inline void cospad_bl_led_on(void) { PORTF &= ~(1<<7); } -inline void cospad_bl_led_off(void) { PORTF |= (1<<7); } -inline void cospad_bl_led_togg(void) { - uint8_t bl_mask = PORTF&(1<<7); - if (bl_mask) { - PORTF &= ~(1<<7); - } else { - PORTF |= (1<<7); - } -} -#endif +// Add backwards compatibility for existing keymaps +#define cospad_bl_led_on backlight_enable +#define cospad_bl_led_off backlight_disable +#define cospad_bl_led_togg backlight_toggle