FS#8708: D2/m:robe500 touchscreen keymaps by Andreas Mueller.
[kugel-rb.git] / apps / plugins / reversi / reversi-gui.h
blobd1cea9c2bf7a3dd362ed579f17ac17a0c0150410
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
10 * Copyright (c) 2006 Alexander Levin
12 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement.
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
18 ****************************************************************************/
20 #ifndef _REVERSI_GUI_H
21 #define _REVERSI_GUI_H
23 #include "plugin.h"
25 #define GAME_FILE PLUGIN_GAMES_DIR "/reversi.rev"
27 /* variable button definitions */
28 #if CONFIG_KEYPAD == RECORDER_PAD
29 #define REVERSI_BUTTON_QUIT BUTTON_OFF
30 #define REVERSI_BUTTON_UP BUTTON_UP
31 #define REVERSI_BUTTON_DOWN BUTTON_DOWN
32 #define REVERSI_BUTTON_LEFT BUTTON_LEFT
33 #define REVERSI_BUTTON_RIGHT BUTTON_RIGHT
34 #define REVERSI_BUTTON_MAKE_MOVE BUTTON_PLAY
35 #define REVERSI_BUTTON_MENU BUTTON_F1
37 #elif CONFIG_KEYPAD == ONDIO_PAD
38 #define REVERSI_BUTTON_QUIT BUTTON_OFF
39 #define REVERSI_BUTTON_UP BUTTON_UP
40 #define REVERSI_BUTTON_DOWN BUTTON_DOWN
41 #define REVERSI_BUTTON_LEFT BUTTON_LEFT
42 #define REVERSI_BUTTON_RIGHT BUTTON_RIGHT
43 #define REVERSI_BUTTON_MAKE_MOVE_PRE BUTTON_MENU
44 #define REVERSI_BUTTON_MAKE_MOVE (BUTTON_MENU | BUTTON_REL)
45 #define REVERSI_BUTTON_ALT_MAKE_MOVE (BUTTON_MENU | BUTTON_DOWN)
46 #define REVERSI_BUTTON_MENU_PRE BUTTON_MENU
47 #define REVERSI_BUTTON_MENU (BUTTON_MENU | BUTTON_REPEAT)
49 #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \
50 (CONFIG_KEYPAD == IRIVER_H300_PAD)
51 #define REVERSI_BUTTON_QUIT BUTTON_OFF
52 #define REVERSI_BUTTON_UP BUTTON_UP
53 #define REVERSI_BUTTON_DOWN BUTTON_DOWN
54 #define REVERSI_BUTTON_LEFT BUTTON_LEFT
55 #define REVERSI_BUTTON_RIGHT BUTTON_RIGHT
56 #define REVERSI_BUTTON_MAKE_MOVE BUTTON_SELECT
57 #define REVERSI_BUTTON_MENU BUTTON_MODE
59 #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \
60 (CONFIG_KEYPAD == IPOD_3G_PAD) || \
61 (CONFIG_KEYPAD == IPOD_1G2G_PAD)
62 #define REVERSI_BUTTON_UP BUTTON_MENU
63 #define REVERSI_BUTTON_DOWN BUTTON_PLAY
64 #define REVERSI_BUTTON_LEFT BUTTON_LEFT
65 #define REVERSI_BUTTON_RIGHT BUTTON_RIGHT
66 #define REVERSI_BUTTON_ALT_LEFT BUTTON_SCROLL_BACK
67 #define REVERSI_BUTTON_ALT_RIGHT BUTTON_SCROLL_FWD
68 #define REVERSI_BUTTON_MAKE_MOVE (BUTTON_SELECT | BUTTON_REL)
69 #define REVERSI_BUTTON_MENU (BUTTON_MENU | BUTTON_SELECT)
71 #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD)
72 #define REVERSI_BUTTON_QUIT BUTTON_POWER
73 #define REVERSI_BUTTON_UP BUTTON_UP
74 #define REVERSI_BUTTON_DOWN BUTTON_DOWN
75 #define REVERSI_BUTTON_LEFT BUTTON_LEFT
76 #define REVERSI_BUTTON_RIGHT BUTTON_RIGHT
77 #define REVERSI_BUTTON_MAKE_MOVE BUTTON_SELECT
78 #define REVERSI_BUTTON_MENU BUTTON_PLAY
80 #elif (CONFIG_KEYPAD == GIGABEAT_PAD)
81 #define REVERSI_BUTTON_QUIT BUTTON_POWER
82 #define REVERSI_BUTTON_UP BUTTON_UP
83 #define REVERSI_BUTTON_DOWN BUTTON_DOWN
84 #define REVERSI_BUTTON_LEFT BUTTON_LEFT
85 #define REVERSI_BUTTON_RIGHT BUTTON_RIGHT
86 #define REVERSI_BUTTON_MAKE_MOVE BUTTON_SELECT
87 #define REVERSI_BUTTON_MENU BUTTON_MENU
89 #elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
90 #define REVERSI_BUTTON_QUIT BUTTON_POWER
91 #define REVERSI_BUTTON_UP BUTTON_SCROLL_UP
92 #define REVERSI_BUTTON_DOWN BUTTON_SCROLL_DOWN
93 #define REVERSI_BUTTON_LEFT BUTTON_LEFT
94 #define REVERSI_BUTTON_RIGHT BUTTON_RIGHT
95 #define REVERSI_BUTTON_MAKE_MOVE BUTTON_REW
96 #define REVERSI_BUTTON_MENU BUTTON_PLAY
98 #elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
99 (CONFIG_KEYPAD == SANSA_C200_PAD)
100 #define REVERSI_BUTTON_QUIT BUTTON_POWER
101 #define REVERSI_BUTTON_UP BUTTON_UP
102 #define REVERSI_BUTTON_DOWN BUTTON_DOWN
103 #define REVERSI_BUTTON_LEFT BUTTON_LEFT
104 #define REVERSI_BUTTON_RIGHT BUTTON_RIGHT
105 #define REVERSI_BUTTON_MAKE_MOVE BUTTON_SELECT
106 #define REVERSI_BUTTON_MENU (BUTTON_SELECT|BUTTON_REPEAT)
108 #elif CONFIG_KEYPAD == MROBE500_PAD
109 #define REVERSI_QUIT BUTTON_POWER
110 #define REVERSI_BUTTON_UP BUTTON_RC_PLAY
111 #define REVERSI_BUTTON_DOWN BUTTON_RC_DOWN
112 #define REVERSI_BUTTON_LEFT BUTTON_RC_REW
113 #define REVERSI_BUTTON_RIGHT BUTTON_RC_FF
114 #define REVERSI_BUTTON_MAKE_MOVE BUTTON_RC_MODE
115 #define REVERSI_BUTTON_MENU (BUTTON_POWER | BUTTON_REL)
117 #elif (CONFIG_KEYPAD == MROBE100_PAD)
118 #define REVERSI_BUTTON_QUIT BUTTON_POWER
119 #define REVERSI_BUTTON_UP BUTTON_UP
120 #define REVERSI_BUTTON_DOWN BUTTON_DOWN
121 #define REVERSI_BUTTON_LEFT BUTTON_LEFT
122 #define REVERSI_BUTTON_RIGHT BUTTON_RIGHT
123 #define REVERSI_BUTTON_MAKE_MOVE BUTTON_SELECT
124 #define REVERSI_BUTTON_MENU BUTTON_MENU
126 #elif CONFIG_KEYPAD == IAUDIO_M3_PAD
127 #define REVERSI_BUTTON_QUIT BUTTON_RC_REC
128 #define REVERSI_BUTTON_UP BUTTON_RC_VOL_UP
129 #define REVERSI_BUTTON_DOWN BUTTON_RC_VOL_DOWN
130 #define REVERSI_BUTTON_LEFT BUTTON_RC_REW
131 #define REVERSI_BUTTON_RIGHT BUTTON_RC_FF
132 #define REVERSI_BUTTON_MAKE_MOVE BUTTON_RC_PLAY
133 #define REVERSI_BUTTON_MENU BUTTON_RC_MENU
135 #elif CONFIG_KEYPAD == COWOND2_PAD
136 #define REVERSI_QUIT BUTTON_POWER
137 #define REVERSI_BUTTON_MENU BUTTON_MENU
139 #else
140 #error No keymap defined!
141 #endif
143 #ifdef HAVE_TOUCHPAD
144 #ifndef REVERSI_QUIT
145 #define REVERSI_QUIT BUTTON_TOPLEFT
146 #endif
147 #ifndef REVERSI_BUTTON_UP
148 #define REVERSI_BUTTON_UP BUTTON_TOPMIDDLE
149 #endif
150 #ifndef REVERSI_BUTTON_DOWN
151 #define REVERSI_BUTTON_DOWN BUTTON_BOTTOMMIDDLE
152 #endif
153 #ifndef REVERSI_BUTTON_LEFT
154 #define REVERSI_BUTTON_LEFT BUTTON_MIDLEFT
155 #endif
156 #ifndef REVERSI_BUTTON_RIGHT
157 #define REVERSI_BUTTON_RIGHT BUTTON_MIDRIGHT
158 #endif
159 #ifndef REVERSI_BUTTON_MAKE_MOVE
160 #define REVERSI_BUTTON_MAKE_MOVE BUTTON_CENTER
161 #endif
162 #ifndef REVERSI_BUTTON_MENU
163 #define REVERSI_BUTTON_MENU BUTTON_TOPRIGHT
164 #endif
165 #endif
167 /* Modes for the cursor behaviour at the board edges */
168 typedef enum _cursor_wrap_mode_t {
169 WRAP_FLAT, /* No wrapping */
170 WRAP_SPHERE, /* (7,7) > right > (7,0); (7,7) > down > (0,7) */
171 WRAP_TORUS, /* (7,7) > right > (0,0); (7,7) > down > (0,0) */
172 } cursor_wrap_mode_t;
175 #endif