RetroArch
blissbox.h
Go to the documentation of this file.
1 /* RetroArch - A frontend for libretro.
2  * Copyright (C) 2010-2014 - Hans-Kristian Arntzen
3  * Copyright (C) 2011-2016 - Daniel De Matteis
4  * Copyright (C) 2016-2017 - Brad Parker
5  *
6  * RetroArch is free software: you can redistribute it and/or modify it under the terms
7  * of the GNU General Public License as published by the Free Software Found-
8  * ation, either version 3 of the License, or (at your option) any later version.
9  *
10  * RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
11  * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  * PURPOSE. See the GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License along with RetroArch.
15  * If not, see <http://www.gnu.org/licenses/>.
16  */
17 
18 #ifndef __BLISSBOX_H
19 #define __BLISSBOX_H
20 
21 #include <retro_common_api.h>
22 
23 #define BLISSBOX_VID 0x16d0 /* requires firmware 2.0 */
24 #define BLISSBOX_PID 0x0d04 /* first of 4 controllers, each one increments PID by 1 */
25 #define BLISSBOX_UPDATE_MODE_PID 0x0a5f
26 #define BLISSBOX_OLD_PID 0x0a60
27 #define BLISSBOX_MAX_PADS 4
28 #define BLISSBOX_MAX_PAD_INDEX (BLISSBOX_MAX_PADS - 1)
29 
30 #define BLISSBOX_USB_FEATURE_REPORT_ID 17
31 
33 
34 typedef struct {
35  const char *name;
36  int index;
38 
40 {
41  {"A5200", 6},
42  {"A5200_TB", 50},
43  {"A7800", 4},
44  {"ATARI_KEYPAD", 43},
45  {"ATARI", 0},
46  {"ATMARK", 10},
47  {"BALLY", 42},
48  {"CD32", 24},
49  {"CDI", 33},
50  {"COL", 1},
51  {"DC_ASCI", 15},
52  {"DC_PAD", 16},
53  {"FC_ARKANOID", 53},
54  {"FC_NES", 52},
55  {"GC", 9},
56  {"GC_WHEEL", 18},
57  {"GEN_3", 20},
58  {"GEN_6", 21},
59  {"GRAVIS_EX", 38},
60  {"gx4000", 2},
61  {"HAMMERHEAD", 40},
62  {"HPD", 7},
63  {"INTELI", 14},
64  {"JAG", 11},
65  {"MSSW", 39},
66  {"N64", 19},
67  {"NEO", 49},
68  {"NES", 17},
69  {"PADDLES", 41},
70  {"PC_FX", 26},
71  {"PC_GAMEPAD", 46},
72  {"PSX_DIGITAL", 65},
73  {"PSX_DS", 115},
74  {"PSX_DS2", 121},
75  {"PSX_FS", 83},
76  {"PSX_NEGCON", 51},
77  {"PSX_WHEEL", 12},
78  {"SAC", 34},
79  {"SATURN_ANALOG", 8},
80  {"SATURN_DIGITAL", 3},
81  {"SMS", 22},
82  {"SPEEK", 45},
83  {"TG16", 23},
84  {"THREE_DO", 25},
85  {"THREE_DO_ANALOG", 37},
86  {"VEC", 5},
87  {"WII_NUNCHUK", 13},
88  {"ZXSINC", 44},
89  {"NES_ARKANOID", 30},
90  {"NES_GUN", 28},
91  {"NES_POWERPAD", 36},
92  {"SNES", 27},
93  {"V_BOY", 29},
94  {"WII_CLASSIC", 31},
95  {"WII_MPLUS", 32},
96  {NULL, 0}, /* used to mark unconnected ports, do not remove */
97 };
98 
100 
101 #endif
#define RETRO_BEGIN_DECLS
Definition: retro_common_api.h:41
Definition: blissbox.h:34
const blissbox_pad_type_t blissbox_pad_types[]
Definition: blissbox.h:39
#define NULL
Pointer to 0.
Definition: gctypes.h:65
int index
Definition: blissbox.h:36
const char * name
Definition: blissbox.h:35
#define RETRO_END_DECLS
Definition: retro_common_api.h:42