summaryrefslogtreecommitdiff
path: root/include/controller.h
blob: dbc850aa2166328c4573afac28f6a2be419c3b5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#ifndef CONTROLLER_H
#define CONTROLLER_H

#define BTN_A           0x8000
#define BTN_B           0x4000
#define BTN_Z           0x2000
#define BTN_START       0x1000
#define BTN_DUP         0x0800
#define BTN_DDOWN       0x0400
#define BTN_DLEFT       0x0200
#define BTN_DRIGHT      0x0100
#define BTN_L           0x0020
#define BTN_R           0x0010
#define BTN_CUP         0x0008
#define BTN_CDOWN       0x0004
#define BTN_CLEFT       0x0002
#define BTN_CRIGHT      0x0001

#define CHECK_BTN_ANY(state, combo) (((state) & (combo)) != 0)

#if PLATFORM_N64
#define CHECK_BTN_ALL(state, combo) (((state) & (combo)) == (combo))
#else
#define CHECK_BTN_ALL(state, combo) (~((state) | ~(combo)) == 0)
#endif

#endif