3 * I/O Port defines / KEYBOARD.
4 * Copyright (C) 2013-08-22 K.Ohta <whatisthis.sowhat ai gmail.com>
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2,
10 * or (at your option) any later version.
11 * This library / program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14 * See the GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this library; see the file COPYING. If not, write to the
18 * Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
21 * As a special exception, if you link this(includeed from sdcc) library
22 * with other files, some of which are compiled with SDCC,
23 * to produce an executable, this library does not by itself cause
24 * the resulting executable to be covered by the GNU General Public License.
25 * This exception does not however invalidate any other reasons why
26 * the executable file might be covered by the GNU General Public License.
37 #define _KEY_SENDPORT LATA
38 #define _KEY_RECVPORT PORTB
39 #define _KEY_GRP1MASK 0x01
40 #define _KEY_GRP2MASK 0x02
41 #define _KEY_GRP3MASK 0x04
42 #define _KEY_GRP4MASK 0x08
43 #define _KEY_SENDPORTMASK (_KEY_GRP1MASK | _KEY_GRP2MASK | _KEY_GRP3MASK | _KEY_GRP4MASK)
44 #define _KEY_SEND_GRP1 LATAbits.LATA0
45 #define _KEY_SEND_GRP2 LATAbits.LATA1
46 #define _KEY_SEND_GRP3 LATAbits.LATA2
47 #define _KEY_SEND_GRP4 LATAbits.LATA3
48 #define _KEY_POS1MASK(p) p.b0
49 #define _KEY_POS2MASK(p) p.b1
50 #define _KEY_POS3MASK(p) p.b2
51 #define _KEY_POS4MASK(p) p.b3
76 unsigned char byte[2];
97 // Special keys was removed.
106 #endif /* IODEF_KEY_H */