]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/rama/m6_a/keymaps/knops/keymap.c
Initial support for RAMA M6-A (#2600)
[qmk_firmware.git] / keyboards / rama / m6_a / keymaps / knops / keymap.c
1 #include "../../m6_a.h"
2
3 /*KNOPS_MISC*/
4
5 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
6
7     /*KNOPS_KEYMAP*/
8
9 };
10
11 void set_led_state(int ledId, bool state) {
12     if(state) {
13                 switch(ledId) {
14                         case 0:
15                                 PORTD |= (1<<6);
16                                 break;
17                         case 1:
18                                 PORTB |= (1<<6);
19                                 break;
20                         case 2:
21                                 PORTF |= (1<<5);
22                                 break;
23                         case 3:
24                                 PORTB |= (1<<4);
25                                 break;
26                         case 4:
27                                 PORTC |= (1<<7);
28                                 break;
29                         case 5:
30                                 PORTF |= (1<<7);
31                                 break;
32                 }
33         } else {
34                 switch(ledId) {
35                         case 0:
36                                 PORTD &= ~(1<<6);
37                                 break;
38                         case 1:
39                                 PORTB &= ~(1<<6);
40                                 break;
41                         case 2:
42                                 PORTF &= ~(1<<5);
43                                 break;
44                         case 3:
45                                 PORTB &= ~(1<<4);
46                                 break;
47                         case 4:
48                                 PORTC &= ~(1<<7);
49                                 break;
50                         case 5:
51                                 PORTF &= ~(1<<7);
52                                 break;
53                 }
54         }
55 }
56
57 void led_init_ports() {
58         // Switch #1
59         DDRD |= (1<<6);
60         PORTD &= ~(1<<6);
61         
62         // Switch #2
63         DDRB |= (1<<6);
64         PORTB &= ~(1<<6);
65         
66         // Switch #3
67         DDRF |= (1<<5);
68         PORTF &= ~(1<<5);
69         
70         // Switch #4
71         DDRB |= (1<<4);
72         PORTB &= ~(1<<4);
73
74         // Switch #5
75         DDRC |= (1<<7);
76         PORTC &= ~(1<<7);
77         
78         // Switch #6
79         DDRF |= (1<<7);
80         PORTF &= ~(1<<7);
81 }
82
83 void led_set_layer(int layer) {
84
85     /*KNOPS_SIMPLELED_STATES*/
86
87 }
88
89 void matrix_init_user(void) {
90     led_init_ports();
91
92     led_set_layer(0);
93
94     /*KNOPS_INIT*/
95 }
96
97 const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
98     //keyevent_t event = record->event;
99
100     /*KNOPS_MACRO*/
101         return NULL;
102 }
103
104 void matrix_scan_user(void) {
105     /*KNOPS_SCAN*/
106 }
107
108 void led_set_user(uint8_t usb_led) {
109
110     /*KNOPS_FUNCTIONALLED_STATES*/
111
112 }
113
114 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
115
116     /*KNOPS_PROCESS_STATE*/
117         return NULL;
118 }
119
120