From 97df0fc072333684e7dfbca0effd7d25097c2e26 Mon Sep 17 00:00:00 2001 From: MechMerlin <30334081+mechmerlin@users.noreply.github.com> Date: Thu, 16 Aug 2018 09:06:19 -0700 Subject: Keyboard: DC60 Support (#3667) * initial commit and get pins correct * get the switch matrix done * Add Configurator support * update LED numbering * enable lighting options * add a default-ish keymap * turn off mouse keys as the file gets too large * put my name everywhere * update Alf names * update keymap to match whats on qmkeyboard.cn --- keyboards/dc60/dc60.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 keyboards/dc60/dc60.c (limited to 'keyboards/dc60/dc60.c') diff --git a/keyboards/dc60/dc60.c b/keyboards/dc60/dc60.c new file mode 100644 index 000000000..70979adf4 --- /dev/null +++ b/keyboards/dc60/dc60.c @@ -0,0 +1,49 @@ +/* Copyright 2018 MechMerlin + * + * 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 . + */ +#include "dc60.h" + +void matrix_init_kb(void) { + // put your keyboard start-up code here + // runs once when the firmware starts up + + matrix_init_user(); +} + +void matrix_scan_kb(void) { + // put your looping keyboard code here + // runs every cycle (a lot) + + matrix_scan_user(); +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + // put your per-action keyboard code here + // runs for every action, just before processing by the firmware + + return process_record_user(keycode, record); +} + +void led_set_kb(uint8_t usb_led) { + if (usb_led & (1 << USB_LED_CAPS_LOCK)) { + DDRB |= (1 << 7); + PORTB &= ~(1 << 7); + } else { + DDRB &= ~(1 << 7); + PORTB &= ~(1 << 7); + } + + led_set_user(usb_led); +} -- cgit v1.2.3-24-g4f1b