]> git.donarmstrong.com Git - tmk_firmware.git/blob - converter/x68k_usb/led.c
Use serial_uart.c instead of x68k.c now
[tmk_firmware.git] / converter / x68k_usb / led.c
1 /*
2 Copyright 2012 Jun Wako <wakojun@gmail.com>
3
4 This program is free software: you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation, either version 2 of the License, or
7 (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 GNU General Public License for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with this program.  If not, see <http://www.gnu.org/licenses/>.
16 */
17
18 #include "stdint.h"
19 #include "serial.h"
20 #include "led.h"
21 #include "debug.h"
22
23
24 void led_set(uint8_t usb_led)
25 {
26     /* X68000 LED bits 0: on, 1: off
27      * bit 7   1(fixed)
28      * bit 6   全角
29      * bit 5   ひらがな
30      * bit 4   INS
31      * bit 3   CAPS
32      * bit 2   コード入力
33      * bit 1   ローマ字
34      * bit 0   かな
35      */
36     uint8_t led = 0xFF;
37     if (usb_led&(1<<USB_LED_NUM_LOCK))      led &= ~(1<<2);
38     if (usb_led&(1<<USB_LED_CAPS_LOCK))     led &= ~(1<<3);
39     if (usb_led&(1<<USB_LED_SCROLL_LOCK))   led &= ~(1<<1);
40     if (usb_led&(1<<USB_LED_COMPOSE))       led &= ~(1<<4);
41     if (usb_led&(1<<USB_LED_KANA))          led &= ~(1<<0);
42     serial_send(led);
43 }