summaryrefslogtreecommitdiff
path: root/apps/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins')
-rw-r--r--apps/plugins/battery_bench.c6
-rw-r--r--apps/plugins/blackjack.c6
-rw-r--r--apps/plugins/bounce.c3
-rw-r--r--apps/plugins/brickmania.c3
-rw-r--r--apps/plugins/calculator.c13
-rw-r--r--apps/plugins/calendar.c10
-rw-r--r--apps/plugins/chessbox/chessbox_pgn.h16
-rw-r--r--apps/plugins/chessclock.c10
-rw-r--r--apps/plugins/chip8.c13
-rw-r--r--apps/plugins/chopper.c3
-rw-r--r--apps/plugins/clix.c3
-rw-r--r--apps/plugins/cube.c10
-rw-r--r--apps/plugins/doom/i_video.c10
-rw-r--r--apps/plugins/fft/fft.c9
-rw-r--r--apps/plugins/fireworks.c3
-rw-r--r--apps/plugins/flipit.c18
-rw-r--r--apps/plugins/fractals/fractal.h12
-rw-r--r--apps/plugins/goban/goban.h13
-rw-r--r--apps/plugins/imageviewer/imageviewer_button.h15
-rw-r--r--apps/plugins/invadrox.c3
-rw-r--r--apps/plugins/jewels.c3
-rw-r--r--apps/plugins/lamp.c3
-rw-r--r--apps/plugins/lib/pluginlib_actions.c6
-rw-r--r--apps/plugins/logo.c3
-rw-r--r--apps/plugins/matrix.c3
-rw-r--r--apps/plugins/midi/midiplay.c8
-rw-r--r--apps/plugins/minesweeper.c14
-rw-r--r--apps/plugins/mosaique.c5
-rw-r--r--apps/plugins/mp3_encoder.c6
-rw-r--r--apps/plugins/mpegplayer/mpeg_settings.c8
-rw-r--r--apps/plugins/mpegplayer/mpegplayer.c9
-rw-r--r--apps/plugins/oscilloscope.c11
-rw-r--r--apps/plugins/pacbox/pacbox.h11
-rw-r--r--apps/plugins/pegbox.c19
-rw-r--r--apps/plugins/plugin.lds2
-rw-r--r--apps/plugins/pong.c3
-rw-r--r--apps/plugins/reversi/reversi-gui.h3
-rw-r--r--apps/plugins/rockblox.c10
-rw-r--r--apps/plugins/rockblox1d.c3
-rw-r--r--apps/plugins/rockboy/rockboy.c12
-rw-r--r--apps/plugins/rockpaint.c11
-rw-r--r--apps/plugins/sliding_puzzle.c9
-rw-r--r--apps/plugins/snake.c3
-rw-r--r--apps/plugins/snake2.c3
-rw-r--r--apps/plugins/snow.c3
-rw-r--r--apps/plugins/sokoban.c22
-rw-r--r--apps/plugins/solitaire.c18
-rw-r--r--apps/plugins/spacerocks.c10
-rw-r--r--apps/plugins/star.c17
-rw-r--r--apps/plugins/starfield.c3
-rw-r--r--apps/plugins/stats.c3
-rw-r--r--apps/plugins/stopwatch.c8
-rw-r--r--apps/plugins/sudoku/sudoku.h11
-rw-r--r--apps/plugins/superdom.c8
-rw-r--r--apps/plugins/text_viewer/tv_button.h12
-rw-r--r--apps/plugins/vu_meter.c11
-rw-r--r--apps/plugins/wormlet.c10
-rw-r--r--apps/plugins/xobox.c9
-rw-r--r--apps/plugins/zxbox/keymaps.h3
-rw-r--r--apps/plugins/zxbox/zxbox_keyb.c3
60 files changed, 473 insertions, 25 deletions
diff --git a/apps/plugins/battery_bench.c b/apps/plugins/battery_bench.c
index 1adc30278a..b88c4dc46a 100644
--- a/apps/plugins/battery_bench.c
+++ b/apps/plugins/battery_bench.c
@@ -235,6 +235,12 @@
235#define BATTERY_ON_TXT "PLAYPAUSE - start" 235#define BATTERY_ON_TXT "PLAYPAUSE - start"
236#define BATTERY_OFF_TXT "POWER" 236#define BATTERY_OFF_TXT "POWER"
237 237
238#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
239#define BATTERY_ON BUTTON_SELECT
240#define BATTERY_OFF BUTTON_POWER
241#define BATTERY_ON_TXT "SELECT - start"
242#define BATTERY_OFF_TXT "POWER"
243
238#else 244#else
239#error No keymap defined! 245#error No keymap defined!
240#endif 246#endif
diff --git a/apps/plugins/blackjack.c b/apps/plugins/blackjack.c
index 578136802c..0c35306cfc 100644
--- a/apps/plugins/blackjack.c
+++ b/apps/plugins/blackjack.c
@@ -166,7 +166,8 @@ enum {
166#define BJACK_RIGHT BUTTON_RIGHT 166#define BJACK_RIGHT BUTTON_RIGHT
167#define BJACK_LEFT BUTTON_LEFT 167#define BJACK_LEFT BUTTON_LEFT
168 168
169#elif CONFIG_KEYPAD == SANSA_E200_PAD 169#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
170 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
170#define BJACK_SELECT_NAME "SELECT" 171#define BJACK_SELECT_NAME "SELECT"
171#define BJACK_STAY_NAME "RIGHT" 172#define BJACK_STAY_NAME "RIGHT"
172#define BJACK_QUIT_NAME "POWER" 173#define BJACK_QUIT_NAME "POWER"
@@ -1032,7 +1033,8 @@ static signed int blackjack_get_amount(char message[20], signed int lower_limit,
1032 (CONFIG_KEYPAD == IPOD_3G_PAD) || \ 1033 (CONFIG_KEYPAD == IPOD_3G_PAD) || \
1033 (CONFIG_KEYPAD == IPOD_1G2G_PAD) || \ 1034 (CONFIG_KEYPAD == IPOD_1G2G_PAD) || \
1034 (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 1035 (CONFIG_KEYPAD == SANSA_E200_PAD) || \
1035 (CONFIG_KEYPAD == SANSA_FUZE_PAD) 1036 (CONFIG_KEYPAD == SANSA_FUZE_PAD) || \
1037 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
1036 rb->lcd_putsxy(LCD_WIDTH/2 - 9*w, LCD_HEIGHT/2 - h-2, " >>|: +1"); 1038 rb->lcd_putsxy(LCD_WIDTH/2 - 9*w, LCD_HEIGHT/2 - h-2, " >>|: +1");
1037 rb->lcd_putsxy(LCD_WIDTH/2 - 9*w, LCD_HEIGHT/2 - 1, " |<<: -1"); 1039 rb->lcd_putsxy(LCD_WIDTH/2 - 9*w, LCD_HEIGHT/2 - 1, " |<<: -1");
1038 rb->lcd_putsxy(LCD_WIDTH/2 - 9*w, LCD_HEIGHT/2 + h, "SCROLL+: +10"); 1040 rb->lcd_putsxy(LCD_WIDTH/2 - 9*w, LCD_HEIGHT/2 + h, "SCROLL+: +10");
diff --git a/apps/plugins/bounce.c b/apps/plugins/bounce.c
index c3a0dc9657..6880e269e2 100644
--- a/apps/plugins/bounce.c
+++ b/apps/plugins/bounce.c
@@ -110,7 +110,8 @@
110 110
111#elif CONFIG_KEYPAD == SANSA_C200_PAD || \ 111#elif CONFIG_KEYPAD == SANSA_C200_PAD || \
112 CONFIG_KEYPAD == SANSA_CLIP_PAD || \ 112 CONFIG_KEYPAD == SANSA_CLIP_PAD || \
113 CONFIG_KEYPAD == SANSA_M200_PAD 113 CONFIG_KEYPAD == SANSA_M200_PAD || \
114 CONFIG_KEYPAD == SANSA_CONNECT_PAD
114#define BOUNCE_LEFT BUTTON_LEFT 115#define BOUNCE_LEFT BUTTON_LEFT
115#define BOUNCE_RIGHT BUTTON_RIGHT 116#define BOUNCE_RIGHT BUTTON_RIGHT
116#define BOUNCE_UP BUTTON_UP 117#define BOUNCE_UP BUTTON_UP
diff --git a/apps/plugins/brickmania.c b/apps/plugins/brickmania.c
index 993a3c488b..c362ffe702 100644
--- a/apps/plugins/brickmania.c
+++ b/apps/plugins/brickmania.c
@@ -139,7 +139,8 @@
139 139
140#elif CONFIG_KEYPAD == SANSA_C200_PAD || \ 140#elif CONFIG_KEYPAD == SANSA_C200_PAD || \
141CONFIG_KEYPAD == SANSA_CLIP_PAD || \ 141CONFIG_KEYPAD == SANSA_CLIP_PAD || \
142CONFIG_KEYPAD == SANSA_M200_PAD 142CONFIG_KEYPAD == SANSA_M200_PAD || \
143CONFIG_KEYPAD == SANSA_CONNECT_PAD
143#define QUIT BUTTON_POWER 144#define QUIT BUTTON_POWER
144#define LEFT BUTTON_LEFT 145#define LEFT BUTTON_LEFT
145#define RIGHT BUTTON_RIGHT 146#define RIGHT BUTTON_RIGHT
diff --git a/apps/plugins/calculator.c b/apps/plugins/calculator.c
index 994b066e7b..8288f34c28 100644
--- a/apps/plugins/calculator.c
+++ b/apps/plugins/calculator.c
@@ -418,6 +418,19 @@ F3: equal to "="
418#define CALCULATOR_CALC BUTTON_PLAYPAUSE 418#define CALCULATOR_CALC BUTTON_PLAYPAUSE
419#define CALCULATOR_CLEAR BUTTON_BACK 419#define CALCULATOR_CLEAR BUTTON_BACK
420 420
421#elif (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
422#define CALCULATOR_LEFT BUTTON_LEFT
423#define CALCULATOR_RIGHT BUTTON_RIGHT
424#define CALCULATOR_UP BUTTON_UP
425#define CALCULATOR_DOWN BUTTON_DOWN
426#define CALCULATOR_UP_W_SHIFT BUTTON_SCROLL_BACK
427#define CALCULATOR_DOWN_W_SHIFT BUTTON_SCROLL_FWD
428#define CALCULATOR_QUIT BUTTON_POWER
429#define CALCULATOR_INPUT_CALC_PRE BUTTON_SELECT
430#define CALCULATOR_INPUT (BUTTON_SELECT|BUTTON_REL)
431#define CALCULATOR_CALC BUTTON_NEXT
432#define CALCULATOR_CLEAR BUTTON_PREV
433
421#else 434#else
422#error No keymap defined! 435#error No keymap defined!
423#endif 436#endif
diff --git a/apps/plugins/calendar.c b/apps/plugins/calendar.c
index 0a94dfcffc..d8d8f1ad12 100644
--- a/apps/plugins/calendar.c
+++ b/apps/plugins/calendar.c
@@ -298,6 +298,16 @@
298#define CALENDAR_NEXT_MONTH BUTTON_PLAYPAUSE 298#define CALENDAR_NEXT_MONTH BUTTON_PLAYPAUSE
299#define CALENDAR_PREV_MONTH BUTTON_BACK 299#define CALENDAR_PREV_MONTH BUTTON_BACK
300 300
301#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
302#define CALENDAR_QUIT BUTTON_POWER
303#define CALENDAR_SELECT BUTTON_SELECT
304#define CALENDAR_NEXT_WEEK BUTTON_RIGHT
305#define CALENDAR_PREV_WEEK BUTTON_LEFT
306#define CALENDAR_NEXT_DAY BUTTON_UP
307#define CALENDAR_PREV_DAY BUTTON_DOWN
308#define CALENDAR_NEXT_MONTH BUTTON_NEXT
309#define CALENDAR_PREV_MONTH BUTTON_PREV
310
301#else 311#else
302#error "No keypad setting." 312#error "No keypad setting."
303#endif 313#endif
diff --git a/apps/plugins/chessbox/chessbox_pgn.h b/apps/plugins/chessbox/chessbox_pgn.h
index 9f25eb97aa..1627426cef 100644
--- a/apps/plugins/chessbox/chessbox_pgn.h
+++ b/apps/plugins/chessbox/chessbox_pgn.h
@@ -406,6 +406,22 @@
406#define CB_LEVEL BUTTON_BACK 406#define CB_LEVEL BUTTON_BACK
407#define CB_MENU (BUTTON_PLAYPAUSE | BUTTON_REPEAT) 407#define CB_MENU (BUTTON_PLAYPAUSE | BUTTON_REPEAT)
408 408
409#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
410#define CB_SELECT BUTTON_SELECT
411#define CB_UP BUTTON_UP
412#define CB_DOWN BUTTON_DOWN
413#define CB_LEFT BUTTON_LEFT
414#define CB_RIGHT BUTTON_RIGHT
415#define CB_PLAY BUTTON_NEXT
416#define CB_LEVEL BUTTON_VOL_DOWN
417#define CB_RESTART BUTTON_PREV
418#define CB_MENU BUTTON_POWER
419
420#define CB_SCROLL_UP (BUTTON_SCROLL_UP|BUTTON_REPEAT)
421#define CB_SCROLL_DOWN (BUTTON_SCROLL_DOWN|BUTTON_REPEAT)
422#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)
423#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT)
424
409#else 425#else
410#error No keymap defined! 426#error No keymap defined!
411#endif 427#endif
diff --git a/apps/plugins/chessclock.c b/apps/plugins/chessclock.c
index b05e849e83..dca5c4040e 100644
--- a/apps/plugins/chessclock.c
+++ b/apps/plugins/chessclock.c
@@ -316,6 +316,16 @@
316#define CHC_SETTINGS_OK BUTTON_SELECT 316#define CHC_SETTINGS_OK BUTTON_SELECT
317#define CHC_SETTINGS_CANCEL BUTTON_BACK 317#define CHC_SETTINGS_CANCEL BUTTON_BACK
318 318
319#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
320#define CHC_QUIT BUTTON_POWER
321#define CHC_STARTSTOP BUTTON_NEXT
322#define CHC_RESET BUTTON_PREV
323#define CHC_MENU BUTTON_SELECT
324#define CHC_SETTINGS_INC BUTTON_VOL_UP
325#define CHC_SETTINGS_DEC BUTTON_VOL_DOWN
326#define CHC_SETTINGS_OK BUTTON_SELECT
327#define CHC_SETTINGS_CANCEL BUTTON_LEFT
328
319#else 329#else
320#error No keymap defined! 330#error No keymap defined!
321#endif 331#endif
diff --git a/apps/plugins/chip8.c b/apps/plugins/chip8.c
index 71024b27a2..97d8351fe9 100644
--- a/apps/plugins/chip8.c
+++ b/apps/plugins/chip8.c
@@ -1180,6 +1180,19 @@ CONFIG_KEYPAD == MROBE500_PAD
1180#define CHIP8_KEY8 BUTTON_VOL_DOWN 1180#define CHIP8_KEY8 BUTTON_VOL_DOWN
1181#define CHIP8_KEY9 BUTTON_VOL_UP 1181#define CHIP8_KEY9 BUTTON_VOL_UP
1182 1182
1183#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
1184
1185#define CHIP8_OFF BUTTON_POWER
1186#define CHIP8_KEY1 BUTTON_LEFT
1187#define CHIP8_KEY2 BUTTON_UP
1188#define CHIP8_KEY3 BUTTON_RIGHT
1189#define CHIP8_KEY4 BUTTON_DOWN
1190#define CHIP8_KEY5 BUTTON_NEXT
1191#define CHIP8_KEY6 BUTTON_PREV
1192#define CHIP8_KEY7 BUTTON_SELECT
1193#define CHIP8_KEY8 BUTTON_VOL_DOWN
1194#define CHIP8_KEY9 BUTTON_VOL_UP
1195
1183#else 1196#else
1184#error No keymap defined! 1197#error No keymap defined!
1185#endif 1198#endif
diff --git a/apps/plugins/chopper.c b/apps/plugins/chopper.c
index ef1f8aacf3..71ea8f835f 100644
--- a/apps/plugins/chopper.c
+++ b/apps/plugins/chopper.c
@@ -70,7 +70,8 @@ Still To do:
70#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 70#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
71 (CONFIG_KEYPAD == SANSA_C200_PAD) || \ 71 (CONFIG_KEYPAD == SANSA_C200_PAD) || \
72 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \ 72 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \
73 (CONFIG_KEYPAD == SANSA_M200_PAD) 73 (CONFIG_KEYPAD == SANSA_M200_PAD) || \
74 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
74#define QUIT BUTTON_POWER 75#define QUIT BUTTON_POWER
75#define ACTION BUTTON_SELECT 76#define ACTION BUTTON_SELECT
76#define ACTIONTEXT "SELECT" 77#define ACTIONTEXT "SELECT"
diff --git a/apps/plugins/clix.c b/apps/plugins/clix.c
index 14a758f1a6..378e9813e6 100644
--- a/apps/plugins/clix.c
+++ b/apps/plugins/clix.c
@@ -24,7 +24,8 @@
24 24
25 25
26 26
27#if (CONFIG_KEYPAD == SANSA_E200_PAD) 27#if (CONFIG_KEYPAD == SANSA_E200_PAD) || \
28 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
28#define CLIX_BUTTON_QUIT BUTTON_POWER 29#define CLIX_BUTTON_QUIT BUTTON_POWER
29#define CLIX_BUTTON_UP BUTTON_UP 30#define CLIX_BUTTON_UP BUTTON_UP
30#define CLIX_BUTTON_DOWN BUTTON_DOWN 31#define CLIX_BUTTON_DOWN BUTTON_DOWN
diff --git a/apps/plugins/cube.c b/apps/plugins/cube.c
index 5f4a0f6a69..7e97eaf569 100644
--- a/apps/plugins/cube.c
+++ b/apps/plugins/cube.c
@@ -319,6 +319,16 @@
319#define CUBE_PAUSE BUTTON_PLAYPAUSE 319#define CUBE_PAUSE BUTTON_PLAYPAUSE
320#define CUBE_HIGHSPEED BUTTON_BACK 320#define CUBE_HIGHSPEED BUTTON_BACK
321 321
322#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
323#define CUBE_QUIT BUTTON_POWER
324#define CUBE_NEXT BUTTON_NEXT
325#define CUBE_PREV BUTTON_PREV
326#define CUBE_INC BUTTON_VOL_UP
327#define CUBE_DEC BUTTON_VOL_DOWN
328#define CUBE_MODE BUTTON_SELECT
329#define CUBE_PAUSE BUTTON_DOWN
330#define CUBE_HIGHSPEED BUTTON_LEFT
331
322#else 332#else
323#error No keymap defined! 333#error No keymap defined!
324#endif 334#endif
diff --git a/apps/plugins/doom/i_video.c b/apps/plugins/doom/i_video.c
index 473ce49f8c..d12799cac4 100644
--- a/apps/plugins/doom/i_video.c
+++ b/apps/plugins/doom/i_video.c
@@ -413,6 +413,16 @@ void I_ShutdownGraphics(void)
413#define DOOMBUTTON_ESC BUTTON_BACK 413#define DOOMBUTTON_ESC BUTTON_BACK
414#define DOOMBUTTON_ENTER (BUTTON_PLAYPAUSE|BUTTON_REPEAT) 414#define DOOMBUTTON_ENTER (BUTTON_PLAYPAUSE|BUTTON_REPEAT)
415#define DOOMBUTTON_WEAPON (BUTTON_SELECT|BUTTON_REPEAT) 415#define DOOMBUTTON_WEAPON (BUTTON_SELECT|BUTTON_REPEAT)
416#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
417#define DOOMBUTTON_UP BUTTON_UP
418#define DOOMBUTTON_DOWN BUTTON_DOWN
419#define DOOMBUTTON_LEFT BUTTON_LEFT
420#define DOOMBUTTON_RIGHT BUTTON_RIGHT
421#define DOOMBUTTON_SHOOT BUTTON_SELECT
422#define DOOMBUTTON_OPEN BUTTON_VOL_DOWN
423#define DOOMBUTTON_ESC BUTTON_VOL_UP
424#define DOOMBUTTON_ENTER BUTTON_NEXT
425#define DOOMBUTTON_WEAPON BUTTON_PREV
416 426
417#else 427#else
418#error Keymap not defined! 428#error Keymap not defined!
diff --git a/apps/plugins/fft/fft.c b/apps/plugins/fft/fft.c
index fa08848f03..11bdfc8e74 100644
--- a/apps/plugins/fft/fft.c
+++ b/apps/plugins/fft/fft.c
@@ -248,6 +248,15 @@ GREY_INFO_STRUCT
248# define FFT_AMP_SCALE BUTTON_PLAYPAUSE 248# define FFT_AMP_SCALE BUTTON_PLAYPAUSE
249# define FFT_QUIT BUTTON_POWER 249# define FFT_QUIT BUTTON_POWER
250 250
251#elif (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
252# define FFT_PREV_GRAPH BUTTON_LEFT
253# define FFT_NEXT_GRAPH BUTTON_RIGHT
254# define FFT_ORIENTATION BUTTON_SELECT
255# define FFT_WINDOW BUTTON_VOL_DOWN
256# define FFT_AMP_SCALE BUTTON_UP
257# define FFT_FREQ_SCALE BUTTON_DOWN
258# define FFT_QUIT BUTTON_POWER
259
251#else 260#else
252#error No keymap defined! 261#error No keymap defined!
253#endif 262#endif
diff --git a/apps/plugins/fireworks.c b/apps/plugins/fireworks.c
index 69c7be0bc4..e3a391035a 100644
--- a/apps/plugins/fireworks.c
+++ b/apps/plugins/fireworks.c
@@ -68,7 +68,8 @@
68#define BTN_FIRE BUTTON_SELECT 68#define BTN_FIRE BUTTON_SELECT
69 69
70#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 70#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
71 (CONFIG_KEYPAD == SANSA_C200_PAD) 71 (CONFIG_KEYPAD == SANSA_C200_PAD) || \
72 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
72#define BTN_MENU BUTTON_POWER 73#define BTN_MENU BUTTON_POWER
73#define BTN_FIRE BUTTON_SELECT 74#define BTN_FIRE BUTTON_SELECT
74 75
diff --git a/apps/plugins/flipit.c b/apps/plugins/flipit.c
index 70d35ec100..ffc691c720 100644
--- a/apps/plugins/flipit.c
+++ b/apps/plugins/flipit.c
@@ -368,6 +368,18 @@
368#define FLIPIT_STEP_BY_STEP (BUTTON_BACK|BUTTON_PLAYPAUSE) 368#define FLIPIT_STEP_BY_STEP (BUTTON_BACK|BUTTON_PLAYPAUSE)
369#define FLIPIT_TOGGLE BUTTON_SELECT 369#define FLIPIT_TOGGLE BUTTON_SELECT
370 370
371#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
372
373#define FLIPIT_LEFT BUTTON_LEFT
374#define FLIPIT_RIGHT BUTTON_RIGHT
375#define FLIPIT_UP BUTTON_UP
376#define FLIPIT_DOWN BUTTON_DOWN
377#define FLIPIT_QUIT BUTTON_POWER
378#define FLIPIT_SHUFFLE BUTTON_VOL_UP
379#define FLIPIT_SOLVE BUTTON_PREV
380#define FLIPIT_STEP_BY_STEP BUTTON_NEXT
381#define FLIPIT_TOGGLE BUTTON_SELECT
382
371#else 383#else
372#error No keymap defined! 384#error No keymap defined!
373#endif 385#endif
@@ -838,6 +850,12 @@ enum plugin_status plugin_start(const void* parameter)
838 rb->lcd_putsxy(2, 28, "[MODE] shuffle"); 850 rb->lcd_putsxy(2, 28, "[MODE] shuffle");
839 rb->lcd_putsxy(2, 38, "[MENU..] solution"); 851 rb->lcd_putsxy(2, 38, "[MENU..] solution");
840 rb->lcd_putsxy(2, 48, "[MENU] step by step"); 852 rb->lcd_putsxy(2, 48, "[MENU] step by step");
853#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
854 rb->lcd_putsxy(2, 8, "[POWER] to stop");
855 rb->lcd_putsxy(2, 18, "[SELECT] toggle");
856 rb->lcd_putsxy(2, 28, "[VOL+] shuffle");
857 rb->lcd_putsxy(2, 38, "[PREV] solution");
858 rb->lcd_putsxy(2, 48, "[NEXT] step by step");
841#endif 859#endif
842 860
843#ifdef HAVE_TOUCHSCREEN 861#ifdef HAVE_TOUCHSCREEN
diff --git a/apps/plugins/fractals/fractal.h b/apps/plugins/fractals/fractal.h
index b0fa93752c..76f3229399 100644
--- a/apps/plugins/fractals/fractal.h
+++ b/apps/plugins/fractals/fractal.h
@@ -366,6 +366,18 @@
366#define FRACTAL_PRECISION_DEC (BUTTON_PLAYPAUSE|BUTTON_RIGHT) 366#define FRACTAL_PRECISION_DEC (BUTTON_PLAYPAUSE|BUTTON_RIGHT)
367#define FRACTAL_RESET BUTTON_BACK 367#define FRACTAL_RESET BUTTON_BACK
368 368
369#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
370#define FRACTAL_QUIT BUTTON_POWER
371#define FRACTAL_UP BUTTON_UP
372#define FRACTAL_DOWN BUTTON_DOWN
373#define FRACTAL_LEFT BUTTON_LEFT
374#define FRACTAL_RIGHT BUTTON_RIGHT
375#define FRACTAL_ZOOM_IN BUTTON_SCROLL_FWD
376#define FRACTAL_ZOOM_OUT BUTTON_SCROLL_BACK
377#define FRACTAL_PRECISION_INC BUTTON_VOL_UP
378#define FRACTAL_PRECISION_DEC BUTTON_VOL_DOWN
379#define FRACTAL_RESET BUTTON_PREV
380
369#else 381#else
370#error No keymap defined! 382#error No keymap defined!
371#endif 383#endif
diff --git a/apps/plugins/goban/goban.h b/apps/plugins/goban/goban.h
index 1931311d2d..d03bc82474 100644
--- a/apps/plugins/goban/goban.h
+++ b/apps/plugins/goban/goban.h
@@ -138,6 +138,19 @@
138#define GBN_BUTTON_CONTEXT BUTTON_SELECT | BUTTON_REPEAT 138#define GBN_BUTTON_CONTEXT BUTTON_SELECT | BUTTON_REPEAT
139/* No next var */ 139/* No next var */
140 140
141#elif (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
142#define GBN_BUTTON_UP BUTTON_UP
143#define GBN_BUTTON_DOWN BUTTON_DOWN
144#define GBN_BUTTON_LEFT BUTTON_LEFT
145#define GBN_BUTTON_RIGHT BUTTON_RIGHT
146#define GBN_BUTTON_RETREAT BUTTON_VOL_DOWN
147#define GBN_BUTTON_ADVANCE BUTTON_VOL_UP
148#define GBN_BUTTON_MENU BUTTON_POWER
149#define GBN_BUTTON_PLAY BUTTON_SELECT | BUTTON_REL
150#define GBN_BUTTON_CONTEXT BUTTON_SELECT | BUTTON_REPEAT
151#define GBN_BUTTON_NEXT_VAR BUTTON_NEXT
152
153
141#elif (CONFIG_KEYPAD == CREATIVEZVM_PAD) \ 154#elif (CONFIG_KEYPAD == CREATIVEZVM_PAD) \
142 || (CONFIG_KEYPAD == CREATIVEZV_PAD) 155 || (CONFIG_KEYPAD == CREATIVEZV_PAD)
143#define GBN_BUTTON_UP BUTTON_UP 156#define GBN_BUTTON_UP BUTTON_UP
diff --git a/apps/plugins/imageviewer/imageviewer_button.h b/apps/plugins/imageviewer/imageviewer_button.h
index 198b35c14c..9f345d83f3 100644
--- a/apps/plugins/imageviewer/imageviewer_button.h
+++ b/apps/plugins/imageviewer/imageviewer_button.h
@@ -364,6 +364,21 @@
364#define IMGVIEW_MENU BUTTON_SELECT 364#define IMGVIEW_MENU BUTTON_SELECT
365#define IMGVIEW_QUIT BUTTON_POWER 365#define IMGVIEW_QUIT BUTTON_POWER
366 366
367#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
368#define IMGVIEW_ZOOM_PRE BUTTON_SELECT
369#define IMGVIEW_ZOOM_IN BUTTON_VOL_UP
370#define IMGVIEW_ZOOM_OUT BUTTON_VOL_DOWN
371#define IMGVIEW_UP BUTTON_UP
372#define IMGVIEW_DOWN BUTTON_DOWN
373#define IMGVIEW_LEFT BUTTON_LEFT
374#define IMGVIEW_RIGHT BUTTON_RIGHT
375#define IMGVIEW_NEXT BUTTON_SCROLL_FWD
376#define IMGVIEW_NEXT_REPEAT (BUTTON_SCROLL_FWD|BUTTON_REPEAT)
377#define IMGVIEW_PREVIOUS BUTTON_SCROLL_BACK
378#define IMGVIEW_PREVIOUS_REPEAT (BUTTON_SCROLL_BACK|BUTTON_REPEAT)
379#define IMGVIEW_MENU BUTTON_POWER
380#define IMGVIEW_SLIDE_SHOW BUTTON_NEXT
381
367#else 382#else
368#error No keymap defined! 383#error No keymap defined!
369#endif 384#endif
diff --git a/apps/plugins/invadrox.c b/apps/plugins/invadrox.c
index 94d079f2b4..96e04a976f 100644
--- a/apps/plugins/invadrox.c
+++ b/apps/plugins/invadrox.c
@@ -129,7 +129,8 @@
129#define RIGHT BUTTON_RIGHT 129#define RIGHT BUTTON_RIGHT
130#define FIRE BUTTON_SELECT 130#define FIRE BUTTON_SELECT
131 131
132#elif CONFIG_KEYPAD == SANSA_E200_PAD 132#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
133 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
133 134
134#define QUIT BUTTON_POWER 135#define QUIT BUTTON_POWER
135#define LEFT BUTTON_LEFT 136#define LEFT BUTTON_LEFT
diff --git a/apps/plugins/jewels.c b/apps/plugins/jewels.c
index ae6105bcb0..4d5a5b6ce9 100644
--- a/apps/plugins/jewels.c
+++ b/apps/plugins/jewels.c
@@ -123,7 +123,8 @@
123#define HK_SELECT "SELECT" 123#define HK_SELECT "SELECT"
124#define HK_CANCEL "POWER" 124#define HK_CANCEL "POWER"
125 125
126#elif CONFIG_KEYPAD == SANSA_E200_PAD 126#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
127 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
127#define JEWELS_SCROLLWHEEL 128#define JEWELS_SCROLLWHEEL
128#define JEWELS_UP BUTTON_UP 129#define JEWELS_UP BUTTON_UP
129#define JEWELS_DOWN BUTTON_DOWN 130#define JEWELS_DOWN BUTTON_DOWN
diff --git a/apps/plugins/lamp.c b/apps/plugins/lamp.c
index 7389811a59..d9ad70b946 100644
--- a/apps/plugins/lamp.c
+++ b/apps/plugins/lamp.c
@@ -64,7 +64,8 @@
64# define LAMP_DOWN BUTTON_DOWN 64# define LAMP_DOWN BUTTON_DOWN
65 65
66#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 66#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
67 (CONFIG_KEYPAD == SANSA_FUZE_PAD) 67 (CONFIG_KEYPAD == SANSA_FUZE_PAD) || \
68 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
68# define LAMP_LEFT BUTTON_LEFT 69# define LAMP_LEFT BUTTON_LEFT
69# define LAMP_RIGHT BUTTON_RIGHT 70# define LAMP_RIGHT BUTTON_RIGHT
70# define LAMP_UP BUTTON_SCROLL_FWD 71# define LAMP_UP BUTTON_SCROLL_FWD
diff --git a/apps/plugins/lib/pluginlib_actions.c b/apps/plugins/lib/pluginlib_actions.c
index 4b0f3a6945..0a2f12da50 100644
--- a/apps/plugins/lib/pluginlib_actions.c
+++ b/apps/plugins/lib/pluginlib_actions.c
@@ -115,7 +115,8 @@ const struct button_mapping pla_main_ctx[] =
115 || (CONFIG_KEYPAD == SANSA_E200_PAD) \ 115 || (CONFIG_KEYPAD == SANSA_E200_PAD) \
116 || (CONFIG_KEYPAD == SANSA_FUZE_PAD) \ 116 || (CONFIG_KEYPAD == SANSA_FUZE_PAD) \
117 || (CONFIG_KEYPAD == SAMSUNG_YH_PAD) \ 117 || (CONFIG_KEYPAD == SAMSUNG_YH_PAD) \
118 || (CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD)) 118 || (CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD) \
119 || (CONFIG_KEYPAD == SANSA_CONNECT_PAD))
119 { PLA_UP, BUTTON_UP, BUTTON_NONE }, 120 { PLA_UP, BUTTON_UP, BUTTON_NONE },
120 { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE }, 121 { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE },
121 { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE }, 122 { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE },
@@ -270,7 +271,8 @@ const struct button_mapping pla_main_ctx[] =
270 || CONFIG_KEYPAD == SANSA_CLIP_PAD \ 271 || CONFIG_KEYPAD == SANSA_CLIP_PAD \
271 || CONFIG_KEYPAD == SANSA_M200_PAD \ 272 || CONFIG_KEYPAD == SANSA_M200_PAD \
272 || CONFIG_KEYPAD == MROBE100_PAD \ 273 || CONFIG_KEYPAD == MROBE100_PAD \
273 || CONFIG_KEYPAD == PHILIPS_HDD1630_PAD) 274 || CONFIG_KEYPAD == PHILIPS_HDD1630_PAD \
275 || CONFIG_KEYPAD == SANSA_CONNECT_PAD)
274 {PLA_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_POWER}, 276 {PLA_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_POWER},
275 {PLA_EXIT, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE}, 277 {PLA_EXIT, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE},
276 {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE}, 278 {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE},
diff --git a/apps/plugins/logo.c b/apps/plugins/logo.c
index dc0db8e95a..d651c2f634 100644
--- a/apps/plugins/logo.c
+++ b/apps/plugins/logo.c
@@ -98,7 +98,8 @@ const unsigned char rockbox16x7[] = {
98#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 98#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
99 (CONFIG_KEYPAD == SANSA_C200_PAD) || \ 99 (CONFIG_KEYPAD == SANSA_C200_PAD) || \
100 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \ 100 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \
101 (CONFIG_KEYPAD == SANSA_M200_PAD) 101 (CONFIG_KEYPAD == SANSA_M200_PAD) || \
102 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
102#define LP_QUIT BUTTON_POWER 103#define LP_QUIT BUTTON_POWER
103#define LP_DEC_X BUTTON_LEFT 104#define LP_DEC_X BUTTON_LEFT
104#define LP_INC_X BUTTON_RIGHT 105#define LP_INC_X BUTTON_RIGHT
diff --git a/apps/plugins/matrix.c b/apps/plugins/matrix.c
index d1a672cd96..1a1008073c 100644
--- a/apps/plugins/matrix.c
+++ b/apps/plugins/matrix.c
@@ -82,7 +82,8 @@
82#define MATRIX_SLEEP_LESS BUTTON_DOWN 82#define MATRIX_SLEEP_LESS BUTTON_DOWN
83#define MATRIX_PAUSE BUTTON_SELECT 83#define MATRIX_PAUSE BUTTON_SELECT
84 84
85#elif CONFIG_KEYPAD == SANSA_E200_PAD 85#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
86 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
86#define MATRIX_EXIT BUTTON_POWER 87#define MATRIX_EXIT BUTTON_POWER
87#define MATRIX_SLEEP_MORE BUTTON_SCROLL_BACK|BUTTON_REPEAT 88#define MATRIX_SLEEP_MORE BUTTON_SCROLL_BACK|BUTTON_REPEAT
88#define MATRIX_SLEEP_LESS BUTTON_SCROLL_FWD|BUTTON_REPEAT 89#define MATRIX_SLEEP_LESS BUTTON_SCROLL_FWD|BUTTON_REPEAT
diff --git a/apps/plugins/midi/midiplay.c b/apps/plugins/midi/midiplay.c
index 3066502dda..1b5d18465b 100644
--- a/apps/plugins/midi/midiplay.c
+++ b/apps/plugins/midi/midiplay.c
@@ -225,6 +225,14 @@
225#define BTN_DOWN BUTTON_DOWN 225#define BTN_DOWN BUTTON_DOWN
226#define BTN_PLAY BUTTON_PLAYPAUSE 226#define BTN_PLAY BUTTON_PLAYPAUSE
227 227
228#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
229#define BTN_QUIT BUTTON_POWER
230#define BTN_RIGHT BUTTON_RIGHT
231#define BTN_LEFT BUTTON_LEFT
232#define BTN_UP BUTTON_UP
233#define BTN_DOWN BUTTON_DOWN
234#define BTN_PLAY BUTTON_SELECT
235
228#else 236#else
229#error No keymap defined! 237#error No keymap defined!
230#endif 238#endif
diff --git a/apps/plugins/minesweeper.c b/apps/plugins/minesweeper.c
index d8313fb741..ad67b1dd67 100644
--- a/apps/plugins/minesweeper.c
+++ b/apps/plugins/minesweeper.c
@@ -297,6 +297,20 @@ CONFIG_KEYPAD == MROBE500_PAD
297# define MINESWP_DISCOVER BUTTON_PLAYPAUSE 297# define MINESWP_DISCOVER BUTTON_PLAYPAUSE
298# define MINESWP_INFO BUTTON_BACK 298# define MINESWP_INFO BUTTON_BACK
299 299
300#elif (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
301
302# define MINESWP_SCROLLWHEEL
303# define MINESWP_LEFT BUTTON_LEFT
304# define MINESWP_RIGHT BUTTON_RIGHT
305# define MINESWP_UP BUTTON_UP
306# define MINESWP_DOWN BUTTON_DOWN
307# define MINESWP_QUIT BUTTON_POWER
308# define MINESWP_NEXT BUTTON_SCROLL_FWD
309# define MINESWP_PREV BUTTON_SCROLL_BACK
310# define MINESWP_TOGGLE BUTTON_NEXT
311# define MINESWP_DISCOVER BUTTON_SELECT
312# define MINESWP_INFO BUTTON_PREV
313
300#else 314#else
301#error No keymap defined! 315#error No keymap defined!
302#endif 316#endif
diff --git a/apps/plugins/mosaique.c b/apps/plugins/mosaique.c
index f0f260fc13..ec41c8c02b 100644
--- a/apps/plugins/mosaique.c
+++ b/apps/plugins/mosaique.c
@@ -188,6 +188,11 @@
188#define MOSAIQUE_SPEED BUTTON_PLAYPAUSE 188#define MOSAIQUE_SPEED BUTTON_PLAYPAUSE
189#define MOSAIQUE_RESTART BUTTON_BACK 189#define MOSAIQUE_RESTART BUTTON_BACK
190 190
191#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
192#define MOSAIQUE_QUIT BUTTON_POWER
193#define MOSAIQUE_SPEED BUTTON_SELECT
194#define MOSAIQUE_RESTART BUTTON_DOWN
195
191#else 196#else
192#error No keymap defined! 197#error No keymap defined!
193#endif 198#endif
diff --git a/apps/plugins/mp3_encoder.c b/apps/plugins/mp3_encoder.c
index ac6a0baf73..a70e316f06 100644
--- a/apps/plugins/mp3_encoder.c
+++ b/apps/plugins/mp3_encoder.c
@@ -2507,6 +2507,12 @@ CONFIG_KEYPAD == MROBE500_PAD
2507#define MP3ENC_DONE BUTTON_PLAYPAUSE 2507#define MP3ENC_DONE BUTTON_PLAYPAUSE
2508#define MP3ENC_SELECT BUTTON_SELECT 2508#define MP3ENC_SELECT BUTTON_SELECT
2509 2509
2510#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
2511#define MP3ENC_PREV BUTTON_PREV
2512#define MP3ENC_NEXT BUTTON_NEXT
2513#define MP3ENC_DONE BUTTON_DOWN
2514#define MP3ENC_SELECT BUTTON_SELECT
2515
2510#else 2516#else
2511#error No keymap defined! 2517#error No keymap defined!
2512#endif 2518#endif
diff --git a/apps/plugins/mpegplayer/mpeg_settings.c b/apps/plugins/mpegplayer/mpeg_settings.c
index 093d8ec2c0..90b547893e 100644
--- a/apps/plugins/mpegplayer/mpeg_settings.c
+++ b/apps/plugins/mpegplayer/mpeg_settings.c
@@ -240,6 +240,14 @@ struct mpeg_settings settings;
240#define MPEG_START_TIME_DOWN BUTTON_DOWN 240#define MPEG_START_TIME_DOWN BUTTON_DOWN
241#define MPEG_START_TIME_EXIT BUTTON_POWER 241#define MPEG_START_TIME_EXIT BUTTON_POWER
242 242
243#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
244#define MPEG_START_TIME_SELECT BUTTON_SELECT
245#define MPEG_START_TIME_LEFT BUTTON_LEFT
246#define MPEG_START_TIME_RIGHT BUTTON_RIGHT
247#define MPEG_START_TIME_UP BUTTON_UP
248#define MPEG_START_TIME_DOWN BUTTON_DOWN
249#define MPEG_START_TIME_EXIT BUTTON_POWER
250
243#else 251#else
244#error No keymap defined! 252#error No keymap defined!
245#endif 253#endif
diff --git a/apps/plugins/mpegplayer/mpegplayer.c b/apps/plugins/mpegplayer/mpegplayer.c
index 2491bb1aec..e3d9865e12 100644
--- a/apps/plugins/mpegplayer/mpegplayer.c
+++ b/apps/plugins/mpegplayer/mpegplayer.c
@@ -353,6 +353,15 @@ CONFIG_KEYPAD == SANSA_M200_PAD
353#define MPEG_RW BUTTON_LEFT 353#define MPEG_RW BUTTON_LEFT
354#define MPEG_FF BUTTON_RIGHT 354#define MPEG_FF BUTTON_RIGHT
355 355
356#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
357#define MPEG_MENU BUTTON_POWER
358#define MPEG_PAUSE (BUTTON_SELECT | BUTTON_REL)
359#define MPEG_STOP (BUTTON_SELECT | BUTTON_REPEAT)
360#define MPEG_VOLDOWN BUTTON_VOL_DOWN
361#define MPEG_VOLUP BUTTON_VOL_UP
362#define MPEG_RW BUTTON_LEFT
363#define MPEG_FF BUTTON_RIGHT
364
356#else 365#else
357#error No keymap defined! 366#error No keymap defined!
358#endif 367#endif
diff --git a/apps/plugins/oscilloscope.c b/apps/plugins/oscilloscope.c
index 52cef65d64..4469a92e12 100644
--- a/apps/plugins/oscilloscope.c
+++ b/apps/plugins/oscilloscope.c
@@ -331,6 +331,17 @@
331#define OSCILLOSCOPE_VOL_UP BUTTON_VOL_UP 331#define OSCILLOSCOPE_VOL_UP BUTTON_VOL_UP
332#define OSCILLOSCOPE_VOL_DOWN BUTTON_VOL_DOWN 332#define OSCILLOSCOPE_VOL_DOWN BUTTON_VOL_DOWN
333 333
334#elif (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
335#define OSCILLOSCOPE_QUIT BUTTON_POWER
336#define OSCILLOSCOPE_DRAWMODE BUTTON_SELECT
337#define OSCILLOSCOPE_ADVMODE BUTTON_DOWN
338#define OSCILLOSCOPE_ORIENTATION BUTTON_UP
339#define OSCILLOSCOPE_PAUSE BUTTON_NEXT
340#define OSCILLOSCOPE_SPEED_UP BUTTON_RIGHT
341#define OSCILLOSCOPE_SPEED_DOWN BUTTON_LEFT
342#define OSCILLOSCOPE_VOL_UP BUTTON_VOL_UP
343#define OSCILLOSCOPE_VOL_DOWN BUTTON_VOL_DOWN
344
334#else 345#else
335#error No keymap defined! 346#error No keymap defined!
336#endif 347#endif
diff --git a/apps/plugins/pacbox/pacbox.h b/apps/plugins/pacbox/pacbox.h
index d9b8ec7460..3c906ac0aa 100644
--- a/apps/plugins/pacbox/pacbox.h
+++ b/apps/plugins/pacbox/pacbox.h
@@ -254,6 +254,17 @@
254#define PACMAN_COIN BUTTON_PLAYPAUSE 254#define PACMAN_COIN BUTTON_PLAYPAUSE
255#define PACMAN_MENU BUTTON_POWER 255#define PACMAN_MENU BUTTON_POWER
256 256
257#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
258
259#define PACMAN_UP BUTTON_UP
260#define PACMAN_DOWN BUTTON_DOWN
261#define PACMAN_LEFT BUTTON_LEFT
262#define PACMAN_RIGHT BUTTON_RIGHT
263#define PACMAN_1UP BUTTON_SELECT
264#define PACMAN_2UP BUTTON_NEXT
265#define PACMAN_COIN BUTTON_VOL_DOWN
266#define PACMAN_MENU BUTTON_POWER
267
257#else 268#else
258 269
259#error Keymap not defined! 270#error Keymap not defined!
diff --git a/apps/plugins/pegbox.c b/apps/plugins/pegbox.c
index babe653e93..3eb6008f76 100644
--- a/apps/plugins/pegbox.c
+++ b/apps/plugins/pegbox.c
@@ -491,6 +491,25 @@ CONFIG_KEYPAD == MROBE500_PAD
491#define LVL_DOWN_TEXT "Vol-" 491#define LVL_DOWN_TEXT "Vol-"
492#define SELECT_TEXT "SELECT" 492#define SELECT_TEXT "SELECT"
493 493
494#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
495#define PEGBOX_SELECT BUTTON_SELECT
496#define PEGBOX_QUIT BUTTON_POWER
497#define PEGBOX_SAVE BUTTON_VOL_UP
498#define PEGBOX_RESTART BUTTON_VOL_DOWN
499#define PEGBOX_LVL_UP BUTTON_NEXT
500#define PEGBOX_LVL_DOWN BUTTON_PREV
501#define PEGBOX_UP BUTTON_UP
502#define PEGBOX_DOWN BUTTON_DOWN
503#define PEGBOX_RIGHT BUTTON_RIGHT
504#define PEGBOX_LEFT BUTTON_LEFT
505
506#define SAVE_TEXT "Vol+"
507#define QUIT_TEXT "POWER"
508#define RESTART_TEXT "Vol-"
509#define LVL_UP_TEXT "NEXT"
510#define LVL_DOWN_TEXT "PREV"
511#define SELECT_TEXT "SELECT"
512
494#else 513#else
495#error Unsupported keymap! 514#error Unsupported keymap!
496#endif 515#endif
diff --git a/apps/plugins/plugin.lds b/apps/plugins/plugin.lds
index 7a20ddd219..1da9065760 100644
--- a/apps/plugins/plugin.lds
+++ b/apps/plugins/plugin.lds
@@ -120,7 +120,7 @@ OUTPUT_FORMAT(elf32-littlemips)
120#define IRAMSIZE 0 120#define IRAMSIZE 0
121 121
122#elif CONFIG_CPU==DM320 122#elif CONFIG_CPU==DM320
123#define DRAMORIG 0x00900000 + STUBOFFSET 123#define DRAMORIG CONFIG_SDRAM_START + STUBOFFSET
124#define IRAM DRAM 124#define IRAM DRAM
125/* The bit of IRAM that is available is used in the core */ 125/* The bit of IRAM that is available is used in the core */
126#define IRAMSIZE 0 126#define IRAMSIZE 0
diff --git a/apps/plugins/pong.c b/apps/plugins/pong.c
index 37d71155ee..d3875f39e4 100644
--- a/apps/plugins/pong.c
+++ b/apps/plugins/pong.c
@@ -105,7 +105,8 @@
105 105
106#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 106#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
107 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \ 107 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \
108 (CONFIG_KEYPAD == SANSA_M200_PAD) 108 (CONFIG_KEYPAD == SANSA_M200_PAD) || \
109 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
109#define PONG_QUIT BUTTON_POWER 110#define PONG_QUIT BUTTON_POWER
110#define PONG_PAUSE BUTTON_SELECT 111#define PONG_PAUSE BUTTON_SELECT
111#define PONG_LEFT_UP BUTTON_LEFT 112#define PONG_LEFT_UP BUTTON_LEFT
diff --git a/apps/plugins/reversi/reversi-gui.h b/apps/plugins/reversi/reversi-gui.h
index baeb343005..a36efe51cb 100644
--- a/apps/plugins/reversi/reversi-gui.h
+++ b/apps/plugins/reversi/reversi-gui.h
@@ -108,7 +108,8 @@
108#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 108#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
109(CONFIG_KEYPAD == SANSA_C200_PAD) || \ 109(CONFIG_KEYPAD == SANSA_C200_PAD) || \
110(CONFIG_KEYPAD == SANSA_CLIP_PAD) || \ 110(CONFIG_KEYPAD == SANSA_CLIP_PAD) || \
111(CONFIG_KEYPAD == SANSA_M200_PAD) 111(CONFIG_KEYPAD == SANSA_M200_PAD) || \
112(CONFIG_KEYPAD == SANSA_CONNECT_PAD)
112#define REVERSI_BUTTON_QUIT BUTTON_POWER 113#define REVERSI_BUTTON_QUIT BUTTON_POWER
113#define REVERSI_BUTTON_UP BUTTON_UP 114#define REVERSI_BUTTON_UP BUTTON_UP
114#define REVERSI_BUTTON_DOWN BUTTON_DOWN 115#define REVERSI_BUTTON_DOWN BUTTON_DOWN
diff --git a/apps/plugins/rockblox.c b/apps/plugins/rockblox.c
index 07e9c16b79..9354d10f5a 100644
--- a/apps/plugins/rockblox.c
+++ b/apps/plugins/rockblox.c
@@ -369,6 +369,16 @@
369#define ROCKBLOX_DROP BUTTON_PLAYPAUSE 369#define ROCKBLOX_DROP BUTTON_PLAYPAUSE
370#define ROCKBLOX_RESTART BUTTON_BACK 370#define ROCKBLOX_RESTART BUTTON_BACK
371 371
372#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
373#define ROCKBLOX_OFF BUTTON_POWER
374#define ROCKBLOX_ROTATE_CW BUTTON_NEXT
375#define ROCKBLOX_ROTATE_CCW BUTTON_PREV
376#define ROCKBLOX_DOWN BUTTON_DOWN
377#define ROCKBLOX_LEFT BUTTON_LEFT
378#define ROCKBLOX_RIGHT BUTTON_RIGHT
379#define ROCKBLOX_DROP BUTTON_SELECT
380#define ROCKBLOX_RESTART BUTTON_VOL_DOWN
381
372#else 382#else
373#error No keymap defined! 383#error No keymap defined!
374#endif 384#endif
diff --git a/apps/plugins/rockblox1d.c b/apps/plugins/rockblox1d.c
index 073bc30f06..49219c2eba 100644
--- a/apps/plugins/rockblox1d.c
+++ b/apps/plugins/rockblox1d.c
@@ -56,7 +56,8 @@
56#elif CONFIG_KEYPAD == SANSA_E200_PAD || \ 56#elif CONFIG_KEYPAD == SANSA_E200_PAD || \
57 CONFIG_KEYPAD == SANSA_C200_PAD || \ 57 CONFIG_KEYPAD == SANSA_C200_PAD || \
58 CONFIG_KEYPAD == SANSA_CLIP_PAD || \ 58 CONFIG_KEYPAD == SANSA_CLIP_PAD || \
59 CONFIG_KEYPAD == SANSA_M200_PAD 59 CONFIG_KEYPAD == SANSA_M200_PAD || \
60 CONFIG_KEYPAD == SANSA_CONNECT_PAD
60#define ONEDROCKBLOX_DOWN BUTTON_SELECT 61#define ONEDROCKBLOX_DOWN BUTTON_SELECT
61#define ONEDROCKBLOX_QUIT BUTTON_POWER 62#define ONEDROCKBLOX_QUIT BUTTON_POWER
62 63
diff --git a/apps/plugins/rockboy/rockboy.c b/apps/plugins/rockboy/rockboy.c
index f3ca002e5d..37f0566b21 100644
--- a/apps/plugins/rockboy/rockboy.c
+++ b/apps/plugins/rockboy/rockboy.c
@@ -330,6 +330,18 @@ static void setoptions (void)
330 options.SELECT = (BUTTON_PLAYPAUSE | BUTTON_REPEAT); 330 options.SELECT = (BUTTON_PLAYPAUSE | BUTTON_REPEAT);
331 options.MENU = (BUTTON_SELECT | BUTTON_REPEAT); 331 options.MENU = (BUTTON_SELECT | BUTTON_REPEAT);
332 332
333#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
334 options.UP = BUTTON_UP;
335 options.DOWN = BUTTON_DOWN;
336 options.LEFT = BUTTON_LEFT;
337 options.RIGHT = BUTTON_RIGHT;
338
339 options.A = BUTTON_VOL_UP;
340 options.B = BUTTON_VOL_DOWN;
341 options.START = BUTTON_PREV;
342 options.SELECT = BUTTON_NEXT;
343 options.MENU = BUTTON_SELECT;
344
333#else 345#else
334#error No Keymap Defined! 346#error No Keymap Defined!
335#endif 347#endif
diff --git a/apps/plugins/rockpaint.c b/apps/plugins/rockpaint.c
index 9ec289fce4..7f16bf2763 100644
--- a/apps/plugins/rockpaint.c
+++ b/apps/plugins/rockpaint.c
@@ -232,6 +232,17 @@
232#define ROCKPAINT_LEFT BUTTON_LEFT 232#define ROCKPAINT_LEFT BUTTON_LEFT
233#define ROCKPAINT_RIGHT BUTTON_RIGHT 233#define ROCKPAINT_RIGHT BUTTON_RIGHT
234 234
235#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
236#define ROCKPAINT_QUIT BUTTON_POWER
237#define ROCKPAINT_DRAW BUTTON_SELECT
238#define ROCKPAINT_MENU BUTTON_VOL_DOWN
239#define ROCKPAINT_TOOLBAR BUTTON_PREV
240#define ROCKPAINT_TOOLBAR2 BUTTON_NEXT
241#define ROCKPAINT_UP BUTTON_UP
242#define ROCKPAINT_DOWN BUTTON_DOWN
243#define ROCKPAINT_LEFT BUTTON_LEFT
244#define ROCKPAINT_RIGHT BUTTON_RIGHT
245
235#else 246#else
236#error "Please define keys for this keypad" 247#error "Please define keys for this keypad"
237#endif 248#endif
diff --git a/apps/plugins/sliding_puzzle.c b/apps/plugins/sliding_puzzle.c
index 1d857c0198..653099a547 100644
--- a/apps/plugins/sliding_puzzle.c
+++ b/apps/plugins/sliding_puzzle.c
@@ -254,6 +254,15 @@ CONFIG_KEYPAD == MROBE500_PAD
254#define PUZZLE_SHUFFLE BUTTON_PLAYPAUSE 254#define PUZZLE_SHUFFLE BUTTON_PLAYPAUSE
255#define PUZZLE_PICTURE BUTTON_SELECT 255#define PUZZLE_PICTURE BUTTON_SELECT
256 256
257#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
258#define PUZZLE_QUIT BUTTON_POWER
259#define PUZZLE_LEFT BUTTON_LEFT
260#define PUZZLE_RIGHT BUTTON_RIGHT
261#define PUZZLE_UP BUTTON_UP
262#define PUZZLE_DOWN BUTTON_DOWN
263#define PUZZLE_SHUFFLE BUTTON_VOL_DOWN
264#define PUZZLE_PICTURE BUTTON_SELECT
265
257#else 266#else
258#error No keymap defined! 267#error No keymap defined!
259#endif 268#endif
diff --git a/apps/plugins/snake.c b/apps/plugins/snake.c
index 2223887f94..09e72a5fff 100644
--- a/apps/plugins/snake.c
+++ b/apps/plugins/snake.c
@@ -105,7 +105,8 @@ dir is the current direction of the snake - 0=up, 1=right, 2=down, 3=left;
105#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 105#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
106 (CONFIG_KEYPAD == SANSA_C200_PAD) || \ 106 (CONFIG_KEYPAD == SANSA_C200_PAD) || \
107 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \ 107 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \
108 (CONFIG_KEYPAD == SANSA_M200_PAD) 108 (CONFIG_KEYPAD == SANSA_M200_PAD) || \
109 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
109#define SNAKE_QUIT BUTTON_POWER 110#define SNAKE_QUIT BUTTON_POWER
110#define SNAKE_LEFT BUTTON_LEFT 111#define SNAKE_LEFT BUTTON_LEFT
111#define SNAKE_RIGHT BUTTON_RIGHT 112#define SNAKE_RIGHT BUTTON_RIGHT
diff --git a/apps/plugins/snake2.c b/apps/plugins/snake2.c
index c23772ab1c..0e7b499271 100644
--- a/apps/plugins/snake2.c
+++ b/apps/plugins/snake2.c
@@ -200,7 +200,8 @@ Head and Tail are stored
200#define SNAKE2_PLAYPAUSE_TEXT "Select" 200#define SNAKE2_PLAYPAUSE_TEXT "Select"
201 201
202#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 202#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
203(CONFIG_KEYPAD == SANSA_C200_PAD) 203(CONFIG_KEYPAD == SANSA_C200_PAD) || \
204(CONFIG_KEYPAD == SANSA_CONNECT_PAD)
204#define SNAKE2_LEFT BUTTON_LEFT 205#define SNAKE2_LEFT BUTTON_LEFT
205#define SNAKE2_RIGHT BUTTON_RIGHT 206#define SNAKE2_RIGHT BUTTON_RIGHT
206#define SNAKE2_UP BUTTON_UP 207#define SNAKE2_UP BUTTON_UP
diff --git a/apps/plugins/snow.c b/apps/plugins/snow.c
index 2a3ba17fcc..8a2de39707 100644
--- a/apps/plugins/snow.c
+++ b/apps/plugins/snow.c
@@ -59,7 +59,8 @@
59(CONFIG_KEYPAD == ONDAVX747_PAD) || \ 59(CONFIG_KEYPAD == ONDAVX747_PAD) || \
60(CONFIG_KEYPAD == ONDAVX777_PAD) || \ 60(CONFIG_KEYPAD == ONDAVX777_PAD) || \
61(CONFIG_KEYPAD == GIGABEAT_PAD) || \ 61(CONFIG_KEYPAD == GIGABEAT_PAD) || \
62(CONFIG_KEYPAD == IAUDIO_X5M5_PAD) 62(CONFIG_KEYPAD == IAUDIO_X5M5_PAD) || \
63(CONFIG_KEYPAD == SANSA_CONNECT_PAD)
63#define SNOW_QUIT BUTTON_POWER 64#define SNOW_QUIT BUTTON_POWER
64 65
65#elif (CONFIG_KEYPAD == SANSA_FUZE_PAD) 66#elif (CONFIG_KEYPAD == SANSA_FUZE_PAD)
diff --git a/apps/plugins/sokoban.c b/apps/plugins/sokoban.c
index c5ba706047..ddc95290da 100644
--- a/apps/plugins/sokoban.c
+++ b/apps/plugins/sokoban.c
@@ -511,6 +511,21 @@
511#define BUTTON_SAVE (BUTTON_SELECT|BUTTON_REPEAT) 511#define BUTTON_SAVE (BUTTON_SELECT|BUTTON_REPEAT)
512#define BUTTON_SAVE_NAME "SELECT LONG" 512#define BUTTON_SAVE_NAME "SELECT LONG"
513 513
514#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
515#define SOKOBAN_LEFT BUTTON_LEFT
516#define SOKOBAN_RIGHT BUTTON_RIGHT
517#define SOKOBAN_UP BUTTON_UP
518#define SOKOBAN_DOWN BUTTON_DOWN
519#define SOKOBAN_MENU BUTTON_POWER
520#define SOKOBAN_UNDO BUTTON_PREV
521#define SOKOBAN_REDO BUTTON_NEXT
522#define SOKOBAN_LEVEL_DOWN BUTTON_VOL_DOWN
523#define SOKOBAN_LEVEL_REPEAT (BUTTON_NEXT|BUTTON_PREV)
524#define SOKOBAN_LEVEL_UP BUTTON_VOL_UP
525#define SOKOBAN_PAUSE BUTTON_SELECT
526#define BUTTON_SAVE (BUTTON_SELECT|BUTTON_REPEAT)
527#define BUTTON_SAVE_NAME "SELECT LONG"
528
514#else 529#else
515#error No keymap defined! 530#error No keymap defined!
516#endif 531#endif
@@ -1487,6 +1502,13 @@ static int sokoban_menu(void)
1487 rb->lcd_putsxy(3, 36, "[PREV] Previous Level"); 1502 rb->lcd_putsxy(3, 36, "[PREV] Previous Level");
1488 rb->lcd_putsxy(3, 46, "[PLAY] Restart Level"); 1503 rb->lcd_putsxy(3, 46, "[PLAY] Restart Level");
1489 rb->lcd_putsxy(3, 56, "[NEXT] Next Level"); 1504 rb->lcd_putsxy(3, 56, "[NEXT] Next Level");
1505#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
1506 rb->lcd_putsxy(3, 6, "[POWER] Menu");
1507 rb->lcd_putsxy(3, 16, "[PREV] Undo");
1508 rb->lcd_putsxy(3, 26, "[NEXT] Redo");
1509 rb->lcd_putsxy(3, 36, "[VOL-] Previous Level");
1510 rb->lcd_putsxy(3, 46, "[NEXT+PREV] Restart Level");
1511 rb->lcd_putsxy(3, 56, "[VOL+] Next Level");
1490#endif 1512#endif
1491 1513
1492#ifdef HAVE_TOUCHSCREEN 1514#ifdef HAVE_TOUCHSCREEN
diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c
index b011d1d248..91ef346221 100644
--- a/apps/plugins/solitaire.c
+++ b/apps/plugins/solitaire.c
@@ -526,6 +526,24 @@ CONFIG_KEYPAD == MROBE500_PAD
526# define HK_CUR2STACK "DOUBLE SELECT" 526# define HK_CUR2STACK "DOUBLE SELECT"
527# define HK_REM2STACK "LEFT" 527# define HK_REM2STACK "LEFT"
528 528
529#elif (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
530# define SOL_QUIT BUTTON_POWER
531# define SOL_UP BUTTON_UP
532# define SOL_DOWN BUTTON_DOWN
533# define SOL_LEFT BUTTON_SCROLL_BACK
534# define SOL_RIGHT BUTTON_SCROLL_FWD
535# define SOL_MOVE BUTTON_SELECT
536# define SOL_DRAW BUTTON_VOL_UP
537# define SOL_REM2CUR BUTTON_LEFT
538# define SOL_CUR2STACK_PRE BUTTON_VOL_DOWN
539# define SOL_CUR2STACK BUTTON_NEXT
540# define SOL_REM2STACK BUTTON_PREV
541# define HK_MOVE "SELECT"
542# define HK_DRAW "Vol+"
543# define HK_REM2CUR "LEFT"
544# define HK_CUR2STACK "NEXT"
545# define HK_REM2STACK "PREV"
546
529#else 547#else
530#error No keymap defined! 548#error No keymap defined!
531#endif 549#endif
diff --git a/apps/plugins/spacerocks.c b/apps/plugins/spacerocks.c
index d0826408e0..0c03a3183b 100644
--- a/apps/plugins/spacerocks.c
+++ b/apps/plugins/spacerocks.c
@@ -268,6 +268,16 @@
268#define AST_RIGHT BUTTON_RIGHT 268#define AST_RIGHT BUTTON_RIGHT
269#define AST_FIRE BUTTON_SELECT 269#define AST_FIRE BUTTON_SELECT
270 270
271#elif (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
272
273#define ALT_PAUSE BUTTON_VOL_DOWN
274#define AST_QUIT BUTTON_POWER
275#define AST_THRUST BUTTON_UP
276#define AST_HYPERSPACE BUTTON_DOWN
277#define AST_LEFT BUTTON_LEFT
278#define AST_RIGHT BUTTON_RIGHT
279#define AST_FIRE BUTTON_SELECT
280
271#else 281#else
272#error No keymap defined! 282#error No keymap defined!
273#endif 283#endif
diff --git a/apps/plugins/star.c b/apps/plugins/star.c
index ebdaca58c3..620cddf77e 100644
--- a/apps/plugins/star.c
+++ b/apps/plugins/star.c
@@ -463,6 +463,23 @@
463#define STAR_LEVEL_DOWN_NAME "Vol-" 463#define STAR_LEVEL_DOWN_NAME "Vol-"
464#define STAR_LEVEL_REPEAT_NAME "BACK LONG" 464#define STAR_LEVEL_REPEAT_NAME "BACK LONG"
465 465
466#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
467
468#define STAR_QUIT BUTTON_POWER
469#define STAR_LEFT BUTTON_LEFT
470#define STAR_RIGHT BUTTON_RIGHT
471#define STAR_UP BUTTON_UP
472#define STAR_DOWN BUTTON_DOWN
473#define STAR_TOGGLE_CONTROL BUTTON_SELECT
474#define STAR_LEVEL_UP BUTTON_VOL_UP
475#define STAR_LEVEL_DOWN BUTTON_VOL_DOWN
476#define STAR_LEVEL_REPEAT (BUTTON_PREV | BUTTON_REPEAT)
477#define STAR_TOGGLE_CONTROL_NAME "SELECT"
478#define STAR_QUIT_NAME "POWER"
479#define STAR_LEVEL_UP_NAME "Vol+"
480#define STAR_LEVEL_DOWN_NAME "Vol-"
481#define STAR_LEVEL_REPEAT_NAME "PREV LONG"
482
466#else 483#else
467#error No keymap defined! 484#error No keymap defined!
468#endif 485#endif
diff --git a/apps/plugins/starfield.c b/apps/plugins/starfield.c
index 6ead68fb3a..e3b5634978 100644
--- a/apps/plugins/starfield.c
+++ b/apps/plugins/starfield.c
@@ -61,7 +61,8 @@
61#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 61#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
62 (CONFIG_KEYPAD == SANSA_C200_PAD) || \ 62 (CONFIG_KEYPAD == SANSA_C200_PAD) || \
63 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \ 63 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \
64 (CONFIG_KEYPAD == SANSA_M200_PAD) 64 (CONFIG_KEYPAD == SANSA_M200_PAD) || \
65 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
65#define STARFIELD_QUIT BUTTON_POWER 66#define STARFIELD_QUIT BUTTON_POWER
66#define STARFIELD_INCREASE_ZMOVE BUTTON_UP 67#define STARFIELD_INCREASE_ZMOVE BUTTON_UP
67#define STARFIELD_DECREASE_ZMOVE BUTTON_DOWN 68#define STARFIELD_DECREASE_ZMOVE BUTTON_DOWN
diff --git a/apps/plugins/stats.c b/apps/plugins/stats.c
index 1bfd10788a..c5ff31e2bd 100644
--- a/apps/plugins/stats.c
+++ b/apps/plugins/stats.c
@@ -58,7 +58,8 @@ static bool cancel;
58#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 58#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
59(CONFIG_KEYPAD == SANSA_C200_PAD) || \ 59(CONFIG_KEYPAD == SANSA_C200_PAD) || \
60(CONFIG_KEYPAD == SANSA_CLIP_PAD) || \ 60(CONFIG_KEYPAD == SANSA_CLIP_PAD) || \
61(CONFIG_KEYPAD == SANSA_M200_PAD) 61(CONFIG_KEYPAD == SANSA_M200_PAD) || \
62(CONFIG_KEYPAD == SANSA_CONNECT_PAD)
62#define STATS_STOP BUTTON_POWER 63#define STATS_STOP BUTTON_POWER
63 64
64#elif (CONFIG_KEYPAD == SANSA_FUZE_PAD) 65#elif (CONFIG_KEYPAD == SANSA_FUZE_PAD)
diff --git a/apps/plugins/stopwatch.c b/apps/plugins/stopwatch.c
index 03f183e916..94785dc352 100644
--- a/apps/plugins/stopwatch.c
+++ b/apps/plugins/stopwatch.c
@@ -255,6 +255,14 @@
255#define STOPWATCH_SCROLL_UP BUTTON_UP 255#define STOPWATCH_SCROLL_UP BUTTON_UP
256#define STOPWATCH_SCROLL_DOWN BUTTON_DOWN 256#define STOPWATCH_SCROLL_DOWN BUTTON_DOWN
257 257
258#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
259#define STOPWATCH_QUIT BUTTON_POWER
260#define STOPWATCH_START_STOP BUTTON_SELECT
261#define STOPWATCH_RESET_TIMER BUTTON_LEFT
262#define STOPWATCH_LAP_TIMER BUTTON_RIGHT
263#define STOPWATCH_SCROLL_UP BUTTON_UP
264#define STOPWATCH_SCROLL_DOWN BUTTON_DOWN
265
258#else 266#else
259#error No keymap defined! 267#error No keymap defined!
260#endif 268#endif
diff --git a/apps/plugins/sudoku/sudoku.h b/apps/plugins/sudoku/sudoku.h
index 86a8b33a35..456e4fd9ee 100644
--- a/apps/plugins/sudoku/sudoku.h
+++ b/apps/plugins/sudoku/sudoku.h
@@ -318,6 +318,17 @@
318#define SUDOKU_BUTTON_TOGGLEBACK BUTTON_DOWN 318#define SUDOKU_BUTTON_TOGGLEBACK BUTTON_DOWN
319#define SUDOKU_BUTTON_POSSIBLE BUTTON_PLAYPAUSE 319#define SUDOKU_BUTTON_POSSIBLE BUTTON_PLAYPAUSE
320 320
321#elif (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
322#define SUDOKU_BUTTON_QUIT BUTTON_POWER
323#define SUDOKU_BUTTON_UP BUTTON_UP
324#define SUDOKU_BUTTON_DOWN BUTTON_DOWN
325#define SUDOKU_BUTTON_LEFT BUTTON_LEFT
326#define SUDOKU_BUTTON_RIGHT BUTTON_RIGHT
327#define SUDOKU_BUTTON_TOGGLEBACK BUTTON_PREV
328#define SUDOKU_BUTTON_TOGGLE BUTTON_NEXT
329#define SUDOKU_BUTTON_MENU BUTTON_SELECT
330#define SUDOKU_BUTTON_POSSIBLE BUTTON_VOL_DOWN
331
321#else 332#else
322#error No keymap defined! 333#error No keymap defined!
323#endif 334#endif
diff --git a/apps/plugins/superdom.c b/apps/plugins/superdom.c
index 2dfd142bde..b4e25afdb1 100644
--- a/apps/plugins/superdom.c
+++ b/apps/plugins/superdom.c
@@ -190,6 +190,14 @@ char buf[255];
190#define SUPERDOM_RIGHT BUTTON_RIGHT 190#define SUPERDOM_RIGHT BUTTON_RIGHT
191#define SUPERDOM_CANCEL BUTTON_BACK 191#define SUPERDOM_CANCEL BUTTON_BACK
192 192
193#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
194#define SUPERDOM_OK BUTTON_SELECT
195#define SUPERDOM_UP BUTTON_UP
196#define SUPERDOM_DOWN BUTTON_DOWN
197#define SUPERDOM_LEFT BUTTON_LEFT
198#define SUPERDOM_RIGHT BUTTON_RIGHT
199#define SUPERDOM_CANCEL BUTTON_POWER
200
193#endif 201#endif
194 202
195#ifdef HAVE_TOUCHSCREEN 203#ifdef HAVE_TOUCHSCREEN
diff --git a/apps/plugins/text_viewer/tv_button.h b/apps/plugins/text_viewer/tv_button.h
index 3de276228c..697076e643 100644
--- a/apps/plugins/text_viewer/tv_button.h
+++ b/apps/plugins/text_viewer/tv_button.h
@@ -424,6 +424,18 @@
424#define TV_AUTOSCROLL BUTTON_BACK 424#define TV_AUTOSCROLL BUTTON_BACK
425#define TV_BOOKMARK BUTTON_PLAYPAUSE 425#define TV_BOOKMARK BUTTON_PLAYPAUSE
426 426
427#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
428#define TV_QUIT BUTTON_POWER
429#define TV_SCROLL_UP BUTTON_UP
430#define TV_SCROLL_DOWN BUTTON_DOWN
431#define TV_SCREEN_LEFT BUTTON_LEFT
432#define TV_SCREEN_RIGHT BUTTON_RIGHT
433#define TV_MENU BUTTON_SELECT
434#define TV_AUTOSCROLL BUTTON_VOL_DOWN
435#define TV_LINE_UP BUTTON_SCROLL_BACK
436#define TV_LINE_DOWN BUTTON_SCROLL_FWD
437#define TV_BOOKMARK (BUTTON_DOWN|BUTTON_SELECT)
438
427#else 439#else
428#error No keymap defined! 440#error No keymap defined!
429#endif 441#endif
diff --git a/apps/plugins/vu_meter.c b/apps/plugins/vu_meter.c
index 27f9fe06df..cf66070c6b 100644
--- a/apps/plugins/vu_meter.c
+++ b/apps/plugins/vu_meter.c
@@ -327,6 +327,17 @@
327#define LABEL_MENU "BACK" 327#define LABEL_MENU "BACK"
328#define LABEL_VOLUME "UP/DOWN" 328#define LABEL_VOLUME "UP/DOWN"
329 329
330#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
331#define VUMETER_QUIT BUTTON_POWER
332#define VUMETER_HELP BUTTON_NEXT
333#define VUMETER_MENU BUTTON_PREV
334#define VUMETER_UP BUTTON_UP
335#define VUMETER_DOWN BUTTON_DOWN
336#define LABEL_HELP "NEXT"
337#define LABEL_QUIT "POWER"
338#define LABEL_MENU "PREV"
339#define LABEL_VOLUME "VOL+/VOL-"
340
330#else 341#else
331#error No keymap defined! 342#error No keymap defined!
332#endif 343#endif
diff --git a/apps/plugins/wormlet.c b/apps/plugins/wormlet.c
index bb3526991d..016c4ad31b 100644
--- a/apps/plugins/wormlet.c
+++ b/apps/plugins/wormlet.c
@@ -310,6 +310,16 @@ CONFIG_KEYPAD == MROBE500_PAD
310#define BTN_QUIT BUTTON_POWER 310#define BTN_QUIT BUTTON_POWER
311#define BTN_STOPRESET BUTTON_BACK 311#define BTN_STOPRESET BUTTON_BACK
312 312
313#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
314
315#define BTN_DIR_UP BUTTON_UP
316#define BTN_DIR_DOWN BUTTON_DOWN
317#define BTN_DIR_LEFT BUTTON_LEFT
318#define BTN_DIR_RIGHT BUTTON_RIGHT
319#define BTN_STARTPAUSE BUTTON_SELECT
320#define BTN_QUIT BUTTON_POWER
321#define BTN_STOPRESET BUTTON_VOL_DOWN
322
313#else 323#else
314#error No keymap defined! 324#error No keymap defined!
315#endif 325#endif
diff --git a/apps/plugins/xobox.c b/apps/plugins/xobox.c
index 33cf823c4d..8de0c8fe16 100644
--- a/apps/plugins/xobox.c
+++ b/apps/plugins/xobox.c
@@ -268,6 +268,15 @@ CONFIG_KEYPAD == MROBE500_PAD
268#define DOWN BUTTON_DOWN 268#define DOWN BUTTON_DOWN
269#define PAUSE BUTTON_PLAYPAUSE 269#define PAUSE BUTTON_PLAYPAUSE
270 270
271#elif CONFIG_KEYPAD == SANSA_CONNECT_PAD
272
273#define QUIT BUTTON_POWER
274#define LEFT BUTTON_LEFT
275#define RIGHT BUTTON_RIGHT
276#define UP BUTTON_UP
277#define DOWN BUTTON_DOWN
278#define PAUSE BUTTON_SELECT
279
271#else 280#else
272#error No keymap defined! 281#error No keymap defined!
273#endif 282#endif
diff --git a/apps/plugins/zxbox/keymaps.h b/apps/plugins/zxbox/keymaps.h
index 5f216fda14..4e5d73a343 100644
--- a/apps/plugins/zxbox/keymaps.h
+++ b/apps/plugins/zxbox/keymaps.h
@@ -89,7 +89,8 @@
89#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ 89#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
90 (CONFIG_KEYPAD == SANSA_C200_PAD) || \ 90 (CONFIG_KEYPAD == SANSA_C200_PAD) || \
91 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \ 91 (CONFIG_KEYPAD == SANSA_CLIP_PAD) || \
92 (CONFIG_KEYPAD == SANSA_M200_PAD) 92 (CONFIG_KEYPAD == SANSA_M200_PAD) || \
93 (CONFIG_KEYPAD == SANSA_CONNECT_PAD)
93#define ZX_SELECT BUTTON_SELECT 94#define ZX_SELECT BUTTON_SELECT
94#define ZX_MENU BUTTON_POWER 95#define ZX_MENU BUTTON_POWER
95#define ZX_LEFT BUTTON_LEFT 96#define ZX_LEFT BUTTON_LEFT
diff --git a/apps/plugins/zxbox/zxbox_keyb.c b/apps/plugins/zxbox/zxbox_keyb.c
index 92a56a8a4d..fc5ed41169 100644
--- a/apps/plugins/zxbox/zxbox_keyb.c
+++ b/apps/plugins/zxbox/zxbox_keyb.c
@@ -117,7 +117,8 @@
117(CONFIG_KEYPAD == SANSA_CLIP_PAD) || \ 117(CONFIG_KEYPAD == SANSA_CLIP_PAD) || \
118(CONFIG_KEYPAD == SANSA_M200_PAD) || \ 118(CONFIG_KEYPAD == SANSA_M200_PAD) || \
119(CONFIG_KEYPAD == SANSA_FUZE_PAD) || \ 119(CONFIG_KEYPAD == SANSA_FUZE_PAD) || \
120(CONFIG_KEYPAD == MROBE100_PAD) 120(CONFIG_KEYPAD == MROBE100_PAD) || \
121(CONFIG_KEYPAD == SANSA_CONNECT_PAD)
121 122
122/* TODO: Check keyboard mappings */ 123/* TODO: Check keyboard mappings */
123 124