/* Copyright 2014 Kai Ryu 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 #include "ledmap.h" #ifdef LEDMAP_ENABLE static const uint16_t ledmaps[LED_COUNT] PROGMEM = { [0] = LEDMAP_CAPS_LOCK | LEDMAP_BACKLIGHT, // CapsLock #ifdef NO_NUMLOCK [1] = LEDMAP_BACKLIGHT, // NumLock #else [1] = LEDMAP_NUM_LOCK | LEDMAP_BACKLIGHT, // NumLock #endif #ifdef REDSCARFII_PLUS [2] = LEDMAP_BACKLIGHT, // Backlight #else [2] = LEDMAP_SCROLL_LOCK | LEDMAP_BACKLIGHT, // Logo [3] = LEDMAP_BACKLIGHT, // Backlight #endif }; ledmap_t ledmap_get_code(uint8_t index) { return (ledmap_t) { .code = pgm_read_word(&ledmaps[index]) }; } /* LED pin configration * CapsLock: PC7 * NumLock: PE6 * Logo: PC6 * Backlight: PB7 */ void ledmap_led_init(void) { DDRC |= (1<