summaryrefslogtreecommitdiff
path: root/apps/plugins/chessbox
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2008-03-22 14:20:04 +0000
committerJens Arnold <amiconn@rockbox.org>2008-03-22 14:20:04 +0000
commit106ac75ad8229d4c5f66a846609520d22d9d8f0c (patch)
treedefc6786b833bbef4f589070814eee59a8567ba8 /apps/plugins/chessbox
parent95d8590659602080acc7d25f49e7b24b429aa5af (diff)
downloadrockbox-106ac75ad8229d4c5f66a846609520d22d9d8f0c.tar.gz
rockbox-106ac75ad8229d4c5f66a846609520d22d9d8f0c.zip
Adapted most multi-source plugins to the iAudio M3 keypad and screen. Doom and mpegplayer are disabled because of the not yet implemented greyscale library, and zxbox used 2-bit greyscale for now. * Slight optimisation for the (currently unused except on M3) 2-bit greyscale code in zxbox. * Simplified button definitions in chessbox.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16744 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/chessbox')
-rw-r--r--apps/plugins/chessbox/chessbox.c205
-rw-r--r--apps/plugins/chessbox/chessbox_pgn.c215
-rw-r--r--apps/plugins/chessbox/chessbox_pgn.h231
3 files changed, 232 insertions, 419 deletions
diff --git a/apps/plugins/chessbox/chessbox.c b/apps/plugins/chessbox/chessbox.c
index 24198e507a..920def82d5 100644
--- a/apps/plugins/chessbox/chessbox.c
+++ b/apps/plugins/chessbox/chessbox.c
@@ -40,211 +40,6 @@ extern const fb_data chessbox_pieces[];
40 40
41PLUGIN_HEADER 41PLUGIN_HEADER
42 42
43/* button definitions */
44#if (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \
45 (CONFIG_KEYPAD == IPOD_1G2G_PAD)
46#define CB_SELECT BUTTON_SELECT
47#define CB_UP BUTTON_MENU
48#define CB_DOWN BUTTON_PLAY
49#define CB_LEFT BUTTON_LEFT
50#define CB_RIGHT BUTTON_RIGHT
51#define CB_PLAY (BUTTON_SELECT | BUTTON_PLAY)
52#define CB_LEVEL (BUTTON_SELECT | BUTTON_RIGHT)
53#define CB_MENU (BUTTON_SELECT | BUTTON_MENU)
54
55#define CB_SCROLL_UP (BUTTON_SCROLL_FWD|BUTTON_REPEAT)
56#define CB_SCROLL_DOWN (BUTTON_SCROLL_BACK|BUTTON_REPEAT)
57#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
58#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
59
60#elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD
61#define CB_SELECT BUTTON_SELECT
62#define CB_UP BUTTON_UP
63#define CB_DOWN BUTTON_DOWN
64#define CB_LEFT BUTTON_LEFT
65#define CB_RIGHT BUTTON_RIGHT
66#define CB_PLAY BUTTON_PLAY
67#define CB_LEVEL BUTTON_REC
68#define CB_MENU BUTTON_POWER
69
70#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
71#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
72#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
73#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
74
75#elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD)
76#define CB_SELECT BUTTON_SELECT
77#define CB_UP BUTTON_UP
78#define CB_DOWN BUTTON_DOWN
79#define CB_LEFT BUTTON_LEFT
80#define CB_RIGHT BUTTON_RIGHT
81#define CB_PLAY BUTTON_ON
82#define CB_LEVEL BUTTON_MODE
83#define CB_MENU BUTTON_OFF
84
85#define CB_RC_QUIT BUTTON_RC_STOP
86
87#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
88#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
89#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
90#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
91
92#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
93#define CB_SELECT BUTTON_SELECT
94#define CB_UP BUTTON_UP
95#define CB_DOWN BUTTON_DOWN
96#define CB_LEFT BUTTON_LEFT
97#define CB_RIGHT BUTTON_RIGHT
98#define CB_PLAY BUTTON_PLAY
99#define CB_LEVEL BUTTON_EQ
100#define CB_MENU BUTTON_MODE
101
102#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
103#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
104#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
105#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
106
107#elif CONFIG_KEYPAD == RECORDER_PAD
108#define CB_SELECT BUTTON_PLAY
109#define CB_UP BUTTON_UP
110#define CB_DOWN BUTTON_DOWN
111#define CB_LEFT BUTTON_LEFT
112#define CB_RIGHT BUTTON_RIGHT
113#define CB_PLAY BUTTON_ON
114#define CB_LEVEL BUTTON_F1
115#define CB_MENU BUTTON_OFF
116
117#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
118#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
119#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
120#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
121
122#elif CONFIG_KEYPAD == ARCHOS_AV300_PAD
123#define CB_SELECT BUTTON_SELECT
124#define CB_UP BUTTON_UP
125#define CB_DOWN BUTTON_DOWN
126#define CB_LEFT BUTTON_LEFT
127#define CB_RIGHT BUTTON_RIGHT
128#define CB_PLAY BUTTON_ON
129#define CB_LEVEL BUTTON_F1
130#define CB_MENU BUTTON_OFF
131
132#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
133#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
134#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
135#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
136
137#elif CONFIG_KEYPAD == ONDIO_PAD
138#define CB_SELECT_PRE BUTTON_MENU
139#define CB_SELECT (BUTTON_MENU|BUTTON_REL)
140#define CB_UP BUTTON_UP
141#define CB_DOWN BUTTON_DOWN
142#define CB_LEFT BUTTON_LEFT
143#define CB_RIGHT BUTTON_RIGHT
144#define CB_PLAY_PRE BUTTON_MENU
145#define CB_PLAY (BUTTON_MENU|BUTTON_REPEAT)
146#define CB_LEVEL (BUTTON_MENU|BUTTON_OFF)
147#define CB_MENU BUTTON_OFF
148
149#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
150#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
151#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
152#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
153
154#elif (CONFIG_KEYPAD == GIGABEAT_PAD)
155#define CB_SELECT BUTTON_SELECT
156#define CB_UP BUTTON_UP
157#define CB_DOWN BUTTON_DOWN
158#define CB_LEFT BUTTON_LEFT
159#define CB_RIGHT BUTTON_RIGHT
160#define CB_PLAY BUTTON_A
161#define CB_LEVEL BUTTON_MENU
162#define CB_MENU BUTTON_POWER
163
164#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
165#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
166#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
167#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
168
169#elif CONFIG_KEYPAD == IRIVER_H10_PAD
170#define CB_SELECT BUTTON_REW
171#define CB_UP BUTTON_SCROLL_UP
172#define CB_DOWN BUTTON_SCROLL_DOWN
173#define CB_LEFT BUTTON_LEFT
174#define CB_RIGHT BUTTON_RIGHT
175#define CB_PLAY BUTTON_PLAY
176#define CB_LEVEL BUTTON_FF
177#define CB_MENU BUTTON_POWER
178
179#define CB_SCROLL_UP (BUTTON_SCROLL_UP|BUTTON_REPEAT)
180#define CB_SCROLL_DOWN (BUTTON_SCROLL_DOWN|BUTTON_REPEAT)
181#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
182#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
183
184#elif CONFIG_KEYPAD == SANSA_E200_PAD
185#define CB_SELECT BUTTON_SELECT
186#define CB_UP BUTTON_UP
187#define CB_DOWN BUTTON_DOWN
188#define CB_LEFT BUTTON_LEFT
189#define CB_RIGHT BUTTON_RIGHT
190#define CB_PLAY (BUTTON_SELECT | BUTTON_RIGHT)
191#define CB_LEVEL BUTTON_REC
192#define CB_MENU BUTTON_POWER
193
194#define CB_SCROLL_UP (BUTTON_SCROLL_BACK|BUTTON_REPEAT)
195#define CB_SCROLL_DOWN (BUTTON_SCROLL_FWD|BUTTON_REPEAT)
196#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
197#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
198
199#elif CONFIG_KEYPAD == SANSA_C200_PAD
200#define CB_SELECT BUTTON_SELECT
201#define CB_UP BUTTON_UP
202#define CB_DOWN BUTTON_DOWN
203#define CB_LEFT BUTTON_LEFT
204#define CB_RIGHT BUTTON_RIGHT
205#define CB_PLAY BUTTON_VOL_UP
206#define CB_LEVEL BUTTON_REC
207#define CB_MENU BUTTON_POWER
208
209#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
210#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
211#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
212#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
213
214#elif CONFIG_KEYPAD == MROBE500_PAD
215#define CB_SELECT BUTTON_RC_MODE
216#define CB_UP BUTTON_RC_PLAY
217#define CB_DOWN BUTTON_RC_DOWN
218#define CB_LEFT BUTTON_RC_REW
219#define CB_RIGHT BUTTON_RC_FF
220#define CB_PLAY BUTTON_RC_HEART
221#define CB_LEVEL BUTTON_RC_VOL_DOWN
222#define CB_MENU BUTTON_POWER
223
224#define CB_SCROLL_UP (BUTTON_RC_PLAY|BUTTON_REPEAT)
225#define CB_SCROLL_DOWN (BUTTON_RC_DOWN|BUTTON_REPEAT)
226#define CB_SCROLL_LEFT (BUTTON_RC_REW|BUTTON_REPEAT)
227#define CB_SCROLL_RIGHT (BUTTON_RC_FF|BUTTON_REPEAT)
228
229#elif (CONFIG_KEYPAD == MROBE100_PAD)
230#define CB_SELECT BUTTON_SELECT
231#define CB_UP BUTTON_UP
232#define CB_DOWN BUTTON_DOWN
233#define CB_LEFT BUTTON_LEFT
234#define CB_RIGHT BUTTON_RIGHT
235#define CB_PLAY BUTTON_PLAY
236#define CB_LEVEL BUTTON_DISPLAY
237#define CB_MENU BUTTON_POWER
238
239#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
240#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
241#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
242#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
243
244#else
245#error No keymap defined!
246#endif
247
248/* Tile size defined by the assigned bitmap */ 43/* Tile size defined by the assigned bitmap */
249#include "chessbox_pieces.h" 44#include "chessbox_pieces.h"
250#define TILE_WIDTH BMPWIDTH_chessbox_pieces 45#define TILE_WIDTH BMPWIDTH_chessbox_pieces
diff --git a/apps/plugins/chessbox/chessbox_pgn.c b/apps/plugins/chessbox/chessbox_pgn.c
index b59d0fc308..b3e71de77f 100644
--- a/apps/plugins/chessbox/chessbox_pgn.c
+++ b/apps/plugins/chessbox/chessbox_pgn.c
@@ -17,221 +17,8 @@
17* 17*
18****************************************************************************/ 18****************************************************************************/
19 19
20#include "chessbox_pgn.h"
21#include "plugin.h" 20#include "plugin.h"
22 21#include "chessbox_pgn.h"
23/* button definitions */
24#if (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \
25 (CONFIG_KEYPAD == IPOD_1G2G_PAD)
26#define CB_SELECT BUTTON_SELECT
27#define CB_UP BUTTON_MENU
28#define CB_DOWN BUTTON_PLAY
29#define CB_LEFT BUTTON_LEFT
30#define CB_RIGHT BUTTON_RIGHT
31#define CB_PLAY (BUTTON_SELECT | BUTTON_PLAY)
32#define CB_LEVEL (BUTTON_SELECT | BUTTON_RIGHT)
33#define CB_RESTART (BUTTON_SELECT | BUTTON_LEFT)
34#define CB_MENU (BUTTON_SELECT | BUTTON_MENU)
35
36#define CB_SCROLL_UP (BUTTON_SCROLL_FWD|BUTTON_REPEAT)
37#define CB_SCROLL_DOWN (BUTTON_SCROLL_BACK|BUTTON_REPEAT)
38#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
39#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
40
41#elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD
42#define CB_SELECT BUTTON_SELECT
43#define CB_UP BUTTON_UP
44#define CB_DOWN BUTTON_DOWN
45#define CB_LEFT BUTTON_LEFT
46#define CB_RIGHT BUTTON_RIGHT
47#define CB_PLAY BUTTON_PLAY
48#define CB_LEVEL BUTTON_REC
49#define CB_RESTART (BUTTON_SELECT | BUTTON_PLAY)
50#define CB_MENU BUTTON_POWER
51
52#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
53#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
54#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
55#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
56
57#elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD)
58#define CB_SELECT BUTTON_SELECT
59#define CB_UP BUTTON_UP
60#define CB_DOWN BUTTON_DOWN
61#define CB_LEFT BUTTON_LEFT
62#define CB_RIGHT BUTTON_RIGHT
63#define CB_PLAY BUTTON_ON
64#define CB_LEVEL BUTTON_MODE
65#define CB_RESTART BUTTON_REC
66#define CB_MENU BUTTON_OFF
67
68#define CB_RC_QUIT BUTTON_RC_STOP
69
70#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
71#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
72#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
73#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
74
75#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
76#define CB_SELECT BUTTON_SELECT
77#define CB_UP BUTTON_UP
78#define CB_DOWN BUTTON_DOWN
79#define CB_LEFT BUTTON_LEFT
80#define CB_RIGHT BUTTON_RIGHT
81#define CB_PLAY BUTTON_PLAY
82#define CB_LEVEL BUTTON_EQ
83#define CB_MENU BUTTON_MODE
84
85#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
86#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
87#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
88#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
89
90#elif CONFIG_KEYPAD == RECORDER_PAD
91#define CB_SELECT BUTTON_PLAY
92#define CB_UP BUTTON_UP
93#define CB_DOWN BUTTON_DOWN
94#define CB_LEFT BUTTON_LEFT
95#define CB_RIGHT BUTTON_RIGHT
96#define CB_PLAY BUTTON_ON
97#define CB_LEVEL BUTTON_F1
98#define CB_RESTART BUTTON_F3
99#define CB_MENU BUTTON_OFF
100
101#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
102#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
103#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
104#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
105
106#elif CONFIG_KEYPAD == ARCHOS_AV300_PAD
107#define CB_SELECT BUTTON_SELECT
108#define CB_UP BUTTON_UP
109#define CB_DOWN BUTTON_DOWN
110#define CB_LEFT BUTTON_LEFT
111#define CB_RIGHT BUTTON_RIGHT
112#define CB_PLAY BUTTON_ON
113#define CB_LEVEL BUTTON_F1
114#define CB_RESTART BUTTON_F3
115#define CB_MENU BUTTON_OFF
116
117#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
118#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
119#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
120#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
121
122#elif CONFIG_KEYPAD == ONDIO_PAD
123#define CB_SELECT_PRE BUTTON_MENU
124#define CB_SELECT (BUTTON_MENU|BUTTON_REL)
125#define CB_UP BUTTON_UP
126#define CB_DOWN BUTTON_DOWN
127#define CB_LEFT BUTTON_LEFT
128#define CB_RIGHT BUTTON_RIGHT
129#define CB_PLAY_PRE BUTTON_MENU
130#define CB_PLAY (BUTTON_MENU|BUTTON_REPEAT)
131#define CB_LEVEL (BUTTON_MENU|BUTTON_OFF)
132#define CB_RESTART (BUTTON_MENU|BUTTON_LEFT)
133#define CB_MENU BUTTON_OFF
134
135#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
136#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
137#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
138#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
139
140#elif (CONFIG_KEYPAD == GIGABEAT_PAD)
141#define CB_SELECT BUTTON_SELECT
142#define CB_UP BUTTON_UP
143#define CB_DOWN BUTTON_DOWN
144#define CB_LEFT BUTTON_LEFT
145#define CB_RIGHT BUTTON_RIGHT
146#define CB_PLAY BUTTON_A
147#define CB_LEVEL BUTTON_MENU
148#define CB_MENU BUTTON_POWER
149
150#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
151#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
152#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
153#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
154
155#elif CONFIG_KEYPAD == IRIVER_H10_PAD
156#define CB_SELECT BUTTON_REW
157#define CB_UP BUTTON_SCROLL_UP
158#define CB_DOWN BUTTON_SCROLL_DOWN
159#define CB_LEFT BUTTON_LEFT
160#define CB_RIGHT BUTTON_RIGHT
161#define CB_PLAY BUTTON_PLAY
162#define CB_LEVEL BUTTON_FF
163#define CB_RESTART (BUTTON_REW | BUTTON_PLAY)
164#define CB_MENU BUTTON_POWER
165
166#define CB_SCROLL_UP (BUTTON_SCROLL_BACK|BUTTON_REPEAT)
167#define CB_SCROLL_DOWN (BUTTON_SCROLL_FWD|BUTTON_REPEAT)
168#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
169#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
170
171#elif CONFIG_KEYPAD == SANSA_E200_PAD
172#define CB_SELECT BUTTON_SELECT
173#define CB_UP BUTTON_UP
174#define CB_DOWN BUTTON_DOWN
175#define CB_LEFT BUTTON_LEFT
176#define CB_RIGHT BUTTON_RIGHT
177#define CB_PLAY (BUTTON_SELECT | BUTTON_RIGHT)
178#define CB_LEVEL BUTTON_REC
179#define CB_RESTART (BUTTON_SELECT | BUTTON_REPEAT)
180#define CB_MENU BUTTON_POWER
181
182#define CB_SCROLL_UP (BUTTON_SCROLL_UP|BUTTON_REPEAT)
183#define CB_SCROLL_DOWN (BUTTON_SCROLL_DOWN|BUTTON_REPEAT)
184#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
185#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
186
187#elif CONFIG_KEYPAD == SANSA_C200_PAD
188#define CB_SELECT BUTTON_SELECT
189#define CB_UP BUTTON_UP
190#define CB_DOWN BUTTON_DOWN
191#define CB_LEFT BUTTON_LEFT
192#define CB_RIGHT BUTTON_RIGHT
193#define CB_PLAY BUTTON_VOL_UP
194#define CB_LEVEL BUTTON_REC
195#define CB_MENU BUTTON_POWER
196
197#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
198#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
199#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
200#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
201
202#elif CONFIG_KEYPAD == MROBE500_PAD
203#define CB_SELECT BUTTON_RC_MODE
204#define CB_UP BUTTON_RC_PLAY
205#define CB_DOWN BUTTON_RC_DOWN
206#define CB_LEFT BUTTON_RC_REW
207#define CB_RIGHT BUTTON_RC_FF
208#define CB_PLAY BUTTON_RC_HEART
209#define CB_LEVEL BUTTON_RC_VOL_DOWN
210#define CB_MENU BUTTON_POWER
211
212#define CB_SCROLL_UP (BUTTON_RC_PLAY|BUTTON_REPEAT)
213#define CB_SCROLL_DOWN (BUTTON_RC_DOWN|BUTTON_REPEAT)
214#define CB_SCROLL_LEFT (BUTTON_RC_REW|BUTTON_REPEAT)
215#define CB_SCROLL_RIGHT (BUTTON_RC_FF|BUTTON_REPEAT)
216
217#elif (CONFIG_KEYPAD == MROBE100_PAD)
218#define CB_SELECT BUTTON_SELECT
219#define CB_UP BUTTON_UP
220#define CB_DOWN BUTTON_DOWN
221#define CB_LEFT BUTTON_LEFT
222#define CB_RIGHT BUTTON_RIGHT
223#define CB_PLAY BUTTON_PLAY
224#define CB_LEVEL BUTTON_DISPLAY
225#define CB_MENU BUTTON_POWER
226
227#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
228#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
229#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
230#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
231
232#else
233#error No keymap defined!
234#endif
235 22
236#define PGN_FILE PLUGIN_GAMES_DIR "/chessbox.pgn" 23#define PGN_FILE PLUGIN_GAMES_DIR "/chessbox.pgn"
237#define LOG_FILE PLUGIN_GAMES_DIR "/chessbox.log" 24#define LOG_FILE PLUGIN_GAMES_DIR "/chessbox.log"
diff --git a/apps/plugins/chessbox/chessbox_pgn.h b/apps/plugins/chessbox/chessbox_pgn.h
index c4dd5c671f..59760ec7b3 100644
--- a/apps/plugins/chessbox/chessbox_pgn.h
+++ b/apps/plugins/chessbox/chessbox_pgn.h
@@ -20,6 +20,237 @@
20#include "plugin.h" 20#include "plugin.h"
21#include "gnuchess.h" 21#include "gnuchess.h"
22 22
23/* button definitions */
24#if (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \
25 (CONFIG_KEYPAD == IPOD_1G2G_PAD)
26#define CB_SELECT BUTTON_SELECT
27#define CB_UP BUTTON_MENU
28#define CB_DOWN BUTTON_PLAY
29#define CB_LEFT BUTTON_LEFT
30#define CB_RIGHT BUTTON_RIGHT
31#define CB_PLAY (BUTTON_SELECT | BUTTON_PLAY)
32#define CB_LEVEL (BUTTON_SELECT | BUTTON_RIGHT)
33#define CB_RESTART (BUTTON_SELECT | BUTTON_LEFT)
34#define CB_MENU (BUTTON_SELECT | BUTTON_MENU)
35
36#define CB_SCROLL_UP (BUTTON_SCROLL_FWD|BUTTON_REPEAT)
37#define CB_SCROLL_DOWN (BUTTON_SCROLL_BACK|BUTTON_REPEAT)
38#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
39#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
40
41#elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD
42#define CB_SELECT BUTTON_SELECT
43#define CB_UP BUTTON_UP
44#define CB_DOWN BUTTON_DOWN
45#define CB_LEFT BUTTON_LEFT
46#define CB_RIGHT BUTTON_RIGHT
47#define CB_PLAY BUTTON_PLAY
48#define CB_LEVEL BUTTON_REC
49#define CB_RESTART (BUTTON_SELECT | BUTTON_PLAY)
50#define CB_MENU BUTTON_POWER
51
52#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
53#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
54#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
55#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
56
57#elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD)
58#define CB_SELECT BUTTON_SELECT
59#define CB_UP BUTTON_UP
60#define CB_DOWN BUTTON_DOWN
61#define CB_LEFT BUTTON_LEFT
62#define CB_RIGHT BUTTON_RIGHT
63#define CB_PLAY BUTTON_ON
64#define CB_LEVEL BUTTON_MODE
65#define CB_RESTART BUTTON_REC
66#define CB_MENU BUTTON_OFF
67
68#define CB_RC_QUIT BUTTON_RC_STOP
69
70#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
71#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
72#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
73#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
74
75#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
76#define CB_SELECT BUTTON_SELECT
77#define CB_UP BUTTON_UP
78#define CB_DOWN BUTTON_DOWN
79#define CB_LEFT BUTTON_LEFT
80#define CB_RIGHT BUTTON_RIGHT
81#define CB_PLAY BUTTON_PLAY
82#define CB_LEVEL BUTTON_EQ
83#define CB_MENU BUTTON_MODE
84
85#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
86#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
87#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
88#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
89
90#elif CONFIG_KEYPAD == RECORDER_PAD
91#define CB_SELECT BUTTON_PLAY
92#define CB_UP BUTTON_UP
93#define CB_DOWN BUTTON_DOWN
94#define CB_LEFT BUTTON_LEFT
95#define CB_RIGHT BUTTON_RIGHT
96#define CB_PLAY BUTTON_ON
97#define CB_LEVEL BUTTON_F1
98#define CB_RESTART BUTTON_F3
99#define CB_MENU BUTTON_OFF
100
101#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
102#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
103#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
104#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
105
106#elif CONFIG_KEYPAD == ARCHOS_AV300_PAD
107#define CB_SELECT BUTTON_SELECT
108#define CB_UP BUTTON_UP
109#define CB_DOWN BUTTON_DOWN
110#define CB_LEFT BUTTON_LEFT
111#define CB_RIGHT BUTTON_RIGHT
112#define CB_PLAY BUTTON_ON
113#define CB_LEVEL BUTTON_F1
114#define CB_RESTART BUTTON_F3
115#define CB_MENU BUTTON_OFF
116
117#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
118#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
119#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
120#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
121
122#elif CONFIG_KEYPAD == ONDIO_PAD
123#define CB_SELECT_PRE BUTTON_MENU
124#define CB_SELECT (BUTTON_MENU|BUTTON_REL)
125#define CB_UP BUTTON_UP
126#define CB_DOWN BUTTON_DOWN
127#define CB_LEFT BUTTON_LEFT
128#define CB_RIGHT BUTTON_RIGHT
129#define CB_PLAY_PRE BUTTON_MENU
130#define CB_PLAY (BUTTON_MENU|BUTTON_REPEAT)
131#define CB_LEVEL (BUTTON_MENU|BUTTON_OFF)
132#define CB_RESTART (BUTTON_MENU|BUTTON_LEFT)
133#define CB_MENU BUTTON_OFF
134
135#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
136#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
137#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
138#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
139
140#elif (CONFIG_KEYPAD == GIGABEAT_PAD)
141#define CB_SELECT BUTTON_SELECT
142#define CB_UP BUTTON_UP
143#define CB_DOWN BUTTON_DOWN
144#define CB_LEFT BUTTON_LEFT
145#define CB_RIGHT BUTTON_RIGHT
146#define CB_PLAY BUTTON_A
147#define CB_LEVEL BUTTON_MENU
148#define CB_MENU BUTTON_POWER
149
150#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
151#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
152#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
153#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
154
155#elif CONFIG_KEYPAD == IRIVER_H10_PAD
156#define CB_SELECT BUTTON_REW
157#define CB_UP BUTTON_SCROLL_UP
158#define CB_DOWN BUTTON_SCROLL_DOWN
159#define CB_LEFT BUTTON_LEFT
160#define CB_RIGHT BUTTON_RIGHT
161#define CB_PLAY BUTTON_PLAY
162#define CB_LEVEL BUTTON_FF
163#define CB_RESTART (BUTTON_REW | BUTTON_PLAY)
164#define CB_MENU BUTTON_POWER
165
166#define CB_SCROLL_UP (BUTTON_SCROLL_BACK|BUTTON_REPEAT)
167#define CB_SCROLL_DOWN (BUTTON_SCROLL_FWD|BUTTON_REPEAT)
168#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
169#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
170
171#elif CONFIG_KEYPAD == SANSA_E200_PAD
172#define CB_SELECT BUTTON_SELECT
173#define CB_UP BUTTON_UP
174#define CB_DOWN BUTTON_DOWN
175#define CB_LEFT BUTTON_LEFT
176#define CB_RIGHT BUTTON_RIGHT
177#define CB_PLAY (BUTTON_SELECT | BUTTON_RIGHT)
178#define CB_LEVEL BUTTON_REC
179#define CB_RESTART (BUTTON_SELECT | BUTTON_REPEAT)
180#define CB_MENU BUTTON_POWER
181
182#define CB_SCROLL_UP (BUTTON_SCROLL_UP|BUTTON_REPEAT)
183#define CB_SCROLL_DOWN (BUTTON_SCROLL_DOWN|BUTTON_REPEAT)
184#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
185#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
186
187#elif CONFIG_KEYPAD == SANSA_C200_PAD
188#define CB_SELECT BUTTON_SELECT
189#define CB_UP BUTTON_UP
190#define CB_DOWN BUTTON_DOWN
191#define CB_LEFT BUTTON_LEFT
192#define CB_RIGHT BUTTON_RIGHT
193#define CB_PLAY BUTTON_VOL_UP
194#define CB_LEVEL BUTTON_REC
195#define CB_MENU BUTTON_POWER
196
197#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
198#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
199#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
200#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
201
202#elif CONFIG_KEYPAD == MROBE500_PAD
203#define CB_SELECT BUTTON_RC_MODE
204#define CB_UP BUTTON_RC_PLAY
205#define CB_DOWN BUTTON_RC_DOWN
206#define CB_LEFT BUTTON_RC_REW
207#define CB_RIGHT BUTTON_RC_FF
208#define CB_PLAY BUTTON_RC_HEART
209#define CB_LEVEL BUTTON_RC_VOL_DOWN
210#define CB_MENU BUTTON_POWER
211
212#define CB_SCROLL_UP (BUTTON_RC_PLAY|BUTTON_REPEAT)
213#define CB_SCROLL_DOWN (BUTTON_RC_DOWN|BUTTON_REPEAT)
214#define CB_SCROLL_LEFT (BUTTON_RC_REW|BUTTON_REPEAT)
215#define CB_SCROLL_RIGHT (BUTTON_RC_FF|BUTTON_REPEAT)
216
217#elif (CONFIG_KEYPAD == MROBE100_PAD)
218#define CB_SELECT BUTTON_SELECT
219#define CB_UP BUTTON_UP
220#define CB_DOWN BUTTON_DOWN
221#define CB_LEFT BUTTON_LEFT
222#define CB_RIGHT BUTTON_RIGHT
223#define CB_PLAY BUTTON_PLAY
224#define CB_LEVEL BUTTON_DISPLAY
225#define CB_MENU BUTTON_POWER
226
227#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT)
228#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT)
229#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
230#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
231
232#elif CONFIG_KEYPAD == IAUDIO_M3_PAD
233#define CB_SELECT BUTTON_RC_PLAY
234#define CB_UP BUTTON_RC_VOL_UP
235#define CB_DOWN BUTTON_RC_VOL_DOWN
236#define CB_LEFT BUTTON_RC_REW
237#define CB_RIGHT BUTTON_RC_FF
238#define CB_PLAY BUTTON_RC_MODE
239#define CB_LEVEL BUTTON_RC_MENU
240#define CB_RESTART (BUTTON_RC_PLAY|BUTTON_REPEAT)
241#define CB_MENU BUTTON_RC_REC
242
243#define CB_SCROLL_UP (BUTTON_RC_VOL_UP|BUTTON_REPEAT)
244#define CB_SCROLL_DOWN (BUTTON_RC_VOL_DOWN|BUTTON_REPEAT)
245#define CB_SCROLL_LEFT (BUTTON_RC_REW|BUTTON_REPEAT)
246#define CB_SCROLL_RIGHT (BUTTON_RC_FF|BUTTON_REPEAT)
247
248#define CB_RC_QUIT BUTTON_REC
249
250#else
251#error No keymap defined!
252#endif
253
23/* structure to represent the plies */ 254/* structure to represent the plies */
24struct pgn_ply_node { 255struct pgn_ply_node {
25 unsigned short player; 256 unsigned short player;