diff --git a/apps/keymaps/keymap-c200.c b/apps/keymaps/keymap-c200.c index 9a4c2b4c75..6e541579f7 100644 --- a/apps/keymaps/keymap-c200.c +++ b/apps/keymaps/keymap-c200.c @@ -269,19 +269,16 @@ static const struct button_mapping button_context_radio[] = { static const struct button_mapping button_context_keyboard[] = { { ACTION_KBD_LEFT, BUTTON_LEFT, BUTTON_NONE }, { ACTION_KBD_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_KBD_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_KBD_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_KBD_CURSOR_LEFT, BUTTON_REC|BUTTON_LEFT, BUTTON_NONE }, + { ACTION_KBD_CURSOR_LEFT, BUTTON_REC|BUTTON_LEFT, BUTTON_NONE }, { ACTION_KBD_CURSOR_LEFT, BUTTON_REC|BUTTON_LEFT|BUTTON_REPEAT,BUTTON_NONE }, - - { ACTION_KBD_CURSOR_RIGHT, BUTTON_REC|BUTTON_RIGHT, BUTTON_NONE }, + { ACTION_KBD_CURSOR_RIGHT, BUTTON_REC|BUTTON_RIGHT, BUTTON_NONE }, { ACTION_KBD_CURSOR_RIGHT, BUTTON_REC|BUTTON_RIGHT|BUTTON_REPEAT,BUTTON_NONE }, { ACTION_KBD_UP, BUTTON_UP, BUTTON_NONE }, { ACTION_KBD_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_KBD_DOWN, BUTTON_DOWN, BUTTON_NONE }, { ACTION_KBD_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, @@ -291,7 +288,8 @@ static const struct button_mapping button_context_keyboard[] = { { ACTION_KBD_PAGE_FLIP, BUTTON_REC|BUTTON_SELECT, BUTTON_REC }, { ACTION_KBD_SELECT, BUTTON_SELECT, BUTTON_NONE }, - { ACTION_KBD_DONE, BUTTON_UP, BUTTON_NONE }, + { ACTION_KBD_DONE, BUTTON_VOL_UP, BUTTON_NONE }, + { ACTION_KBD_DONE, BUTTON_VOL_DOWN, BUTTON_NONE }, { ACTION_KBD_ABORT, BUTTON_POWER, BUTTON_NONE }, LAST_ITEM_IN_LIST diff --git a/apps/plugins/SOURCES b/apps/plugins/SOURCES index 31d94d5811..8479cd8b9b 100644 --- a/apps/plugins/SOURCES +++ b/apps/plugins/SOURCES @@ -34,7 +34,9 @@ wavrecord.c #ifndef IRIVER_IFP7XX_SERIES /* Temporarily disable plugins for iFP7xx */ dice.c disktidy.c +#ifndef SANSA_C200 flipit.c +#endif #ifdef HAVE_LCD_BITMAP /* Not for the Player */ maze.c @@ -50,14 +52,16 @@ plasma.c blackjack.c bounce.c +#ifndef SANSA_C200 bubbles.c +#endif -#if (LCD_DEPTH >= 2) && !defined(IPOD_MINI) && !defined(IPOD_MINI2G) && !defined(IRIVER_H10_5GB) +#if (LCD_WIDTH >= 160) invadrox.c #endif -#if LCD_WIDTH != 128 -/* These need adjusting for the iRiver if'p screen */ +#if LCD_WIDTH != 128 && !defined SANSA_C200 +/* These need adjusting for the iRiver if'p and Sansa c200, small H10 screen */ brickmania.c #endif calculator.c @@ -65,14 +69,18 @@ chip8.c chopper.c demystify.c jewels.c +#ifndef SANSA_C200 minesweeper.c +#endif oscilloscope.c pong.c sliding_puzzle.c snake.c snake2.c solitaire.c +#ifndef SANSA_C200 sokoban.c +#endif star.c starfield.c #if CONFIG_LCD == LCD_SSD1815 diff --git a/apps/plugins/SUBDIRS b/apps/plugins/SUBDIRS index 11643a5b2f..f537fb8965 100644 --- a/apps/plugins/SUBDIRS +++ b/apps/plugins/SUBDIRS @@ -16,7 +16,9 @@ rockboy /* For all targets with a bitmap display */ #ifdef HAVE_LCD_BITMAP +#ifndef SANSA_C200 chessbox +#endif sudoku reversi #endif @@ -27,8 +29,8 @@ zxbox #endif /* For all the colour targets, iriver H1x0 and iAudio M5 */ -#if defined(HAVE_LCD_COLOR) || defined(IRIVER_H100_SERIES) \ - || defined(IAUDIO_M5) +#if defined(HAVE_LCD_COLOR) && !defined (SANSA_C200)\ + || defined(IRIVER_H100_SERIES) || defined(IAUDIO_M5) pacbox #endif diff --git a/apps/plugins/battery_bench.c b/apps/plugins/battery_bench.c index 85377e22a9..43bfc7255f 100644 --- a/apps/plugins/battery_bench.c +++ b/apps/plugins/battery_bench.c @@ -80,7 +80,8 @@ PLUGIN_HEADER #define BATTERY_ON BUTTON_SELECT #define BATTERY_OFF BUTTON_PLAY -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define BATTERY_ON BUTTON_SELECT #define BATTERY_OFF BUTTON_POWER diff --git a/apps/plugins/bitmaps/native/SOURCES b/apps/plugins/bitmaps/native/SOURCES index 93939c95f7..55ad8392c3 100644 --- a/apps/plugins/bitmaps/native/SOURCES +++ b/apps/plugins/bitmaps/native/SOURCES @@ -167,6 +167,14 @@ clock_segments.138x110x2.bmp clock_smallsegments.160x128x2.bmp clock_logo.138x110x2.bmp clock_messages.138x110x2.bmp +#elif (LCD_WIDTH >= 132) && (LCD_HEIGHT >= 80) && (LCD_DEPTH >= 16) +clock_binary.132x80x16.bmp +clock_digits.132x80x16.bmp +clock_smalldigits.132x80x16.bmp +clock_segments.132x80x16.bmp +clock_smallsegments.132x80x16.bmp +clock_logo.132x80x16.bmp +clock_messages.132x80x16.bmp #elif (LCD_WIDTH >= 112) && (LCD_HEIGHT >= 64) && (LCD_DEPTH >= 1) clock_binary.112x64x1.bmp clock_digits.112x64x1.bmp @@ -237,6 +245,8 @@ jewels.112x64x1.bmp jewels.112x64x1.bmp #elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 128) jewels.128x128x16.bmp +#elif (LCD_WIDTH == 132) && (LCD_HEIGHT == 80) +jewels.132x80x16.bmp #elif (LCD_WIDTH == 138) && (LCD_HEIGHT == 110) jewels.138x110x2.bmp #elif (LCD_WIDTH == 160) && (LCD_HEIGHT == 128) && !defined(HAVE_LCD_COLOR) @@ -283,6 +293,8 @@ rockblox_background.176x220x16.bmp rockblox_background.160x128x16.bmp #elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 128) && (LCD_DEPTH == 16) rockblox_background.128x128x16.bmp +#elif (LCD_WIDTH == 132) && (LCD_HEIGHT == 80) && (LCD_DEPTH == 16) +rockblox_background.132x80x16.bmp #elif (LCD_WIDTH == 160) && (LCD_HEIGHT == 128) && (LCD_DEPTH == 2) rockblox_background.160x128x2.bmp #elif (LCD_WIDTH == 138) && (LCD_HEIGHT == 110) && (LCD_DEPTH == 2) @@ -426,6 +438,10 @@ sudoku_inverse.112x64x1.bmp sudoku_start.138x110x2.bmp sudoku_normal.138x110x2.bmp sudoku_inverse.138x110x2.bmp +#elif (LCD_WIDTH == 132) && (LCD_HEIGHT == 80) && (LCD_DEPTH >= 16) +sudoku_start.132x80x16.bmp +sudoku_normal.132x80x16.bmp +sudoku_inverse.132x80x16.bmp #elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 128) && (LCD_DEPTH == 16) sudoku_start.128x128x16.bmp sudoku_normal.128x128x16.bmp diff --git a/apps/plugins/bitmaps/native/clock_binary.132x80x16.bmp b/apps/plugins/bitmaps/native/clock_binary.132x80x16.bmp new file mode 100755 index 0000000000..fcf7097f8a Binary files /dev/null and b/apps/plugins/bitmaps/native/clock_binary.132x80x16.bmp differ diff --git a/apps/plugins/bitmaps/native/clock_digits.132x80x16.bmp b/apps/plugins/bitmaps/native/clock_digits.132x80x16.bmp new file mode 100755 index 0000000000..eff4c370a8 Binary files /dev/null and b/apps/plugins/bitmaps/native/clock_digits.132x80x16.bmp differ diff --git a/apps/plugins/bitmaps/native/clock_logo.132x80x16.bmp b/apps/plugins/bitmaps/native/clock_logo.132x80x16.bmp new file mode 100755 index 0000000000..b3d620954e Binary files /dev/null and b/apps/plugins/bitmaps/native/clock_logo.132x80x16.bmp differ diff --git a/apps/plugins/bitmaps/native/clock_messages.132x80x16.bmp b/apps/plugins/bitmaps/native/clock_messages.132x80x16.bmp new file mode 100755 index 0000000000..e8a25d5bf5 Binary files /dev/null and b/apps/plugins/bitmaps/native/clock_messages.132x80x16.bmp differ diff --git a/apps/plugins/bitmaps/native/clock_segments.132x80x16.bmp b/apps/plugins/bitmaps/native/clock_segments.132x80x16.bmp new file mode 100755 index 0000000000..0b9d436e1c Binary files /dev/null and b/apps/plugins/bitmaps/native/clock_segments.132x80x16.bmp differ diff --git a/apps/plugins/bitmaps/native/clock_smalldigits.132x80x16.bmp b/apps/plugins/bitmaps/native/clock_smalldigits.132x80x16.bmp new file mode 100755 index 0000000000..e82dbe8727 Binary files /dev/null and b/apps/plugins/bitmaps/native/clock_smalldigits.132x80x16.bmp differ diff --git a/apps/plugins/bitmaps/native/clock_smallsegments.132x80x16.bmp b/apps/plugins/bitmaps/native/clock_smallsegments.132x80x16.bmp new file mode 100755 index 0000000000..e4bd944865 Binary files /dev/null and b/apps/plugins/bitmaps/native/clock_smallsegments.132x80x16.bmp differ diff --git a/apps/plugins/bitmaps/native/jewels.132x80x16.bmp b/apps/plugins/bitmaps/native/jewels.132x80x16.bmp new file mode 100755 index 0000000000..c6c8e04eba Binary files /dev/null and b/apps/plugins/bitmaps/native/jewels.132x80x16.bmp differ diff --git a/apps/plugins/bitmaps/native/rockblox_background.132x80x16.bmp b/apps/plugins/bitmaps/native/rockblox_background.132x80x16.bmp new file mode 100755 index 0000000000..d4d720f088 Binary files /dev/null and b/apps/plugins/bitmaps/native/rockblox_background.132x80x16.bmp differ diff --git a/apps/plugins/bitmaps/native/sudoku_inverse.132x80x16.bmp b/apps/plugins/bitmaps/native/sudoku_inverse.132x80x16.bmp new file mode 100755 index 0000000000..491593c3a0 Binary files /dev/null and b/apps/plugins/bitmaps/native/sudoku_inverse.132x80x16.bmp differ diff --git a/apps/plugins/bitmaps/native/sudoku_normal.132x80x16.bmp b/apps/plugins/bitmaps/native/sudoku_normal.132x80x16.bmp new file mode 100755 index 0000000000..ff2a824464 Binary files /dev/null and b/apps/plugins/bitmaps/native/sudoku_normal.132x80x16.bmp differ diff --git a/apps/plugins/bitmaps/native/sudoku_start.132x80x16.bmp b/apps/plugins/bitmaps/native/sudoku_start.132x80x16.bmp new file mode 100755 index 0000000000..ab6e978e0b Binary files /dev/null and b/apps/plugins/bitmaps/native/sudoku_start.132x80x16.bmp differ diff --git a/apps/plugins/blackjack.c b/apps/plugins/blackjack.c index c4b424143d..2ece48d75d 100644 --- a/apps/plugins/blackjack.c +++ b/apps/plugins/blackjack.c @@ -173,6 +173,21 @@ PLUGIN_HEADER #define BJACK_RIGHT BUTTON_RIGHT #define BJACK_LEFT BUTTON_LEFT +#elif CONFIG_KEYPAD == SANSA_C200_PAD +#define BJACK_START BUTTON_SELECT +#define BJACK_QUIT BUTTON_POWER +#define BJACK_MAX (BUTTON_REC|BUTTON_UP) +#define BJACK_MIN (BUTTON_REC|BUTTON_VOL_DOWN) +#define BJACK_HIT BUTTON_SELECT +#define BJACK_STAY BUTTON_RIGHT +#define BJACK_DOUBLEDOWN BUTTON_LEFT +#define BJACK_SCORES BUTTON_VOL_UP +#define BJACK_RESUME BUTTON_REC +#define BJACK_UP BUTTON_UP +#define BJACK_DOWN BUTTON_DOWN +#define BJACK_RIGHT BUTTON_RIGHT +#define BJACK_LEFT BUTTON_LEFT + #elif CONFIG_KEYPAD == ELIO_TPJ1022_PAD #define BJACK_START BUTTON_MAIN #define BJACK_QUIT BUTTON_POWER diff --git a/apps/plugins/bounce.c b/apps/plugins/bounce.c index eac6933815..9373050292 100644 --- a/apps/plugins/bounce.c +++ b/apps/plugins/bounce.c @@ -82,6 +82,12 @@ PLUGIN_HEADER #define BOUNCE_QUIT BUTTON_POWER #define BOUNCE_MODE BUTTON_SELECT +#elif CONFIG_KEYPAD == SANSA_C200_PAD +#define BOUNCE_UP BUTTON_UP +#define BOUNCE_DOWN BUTTON_DOWN +#define BOUNCE_QUIT BUTTON_POWER +#define BOUNCE_MODE BUTTON_SELECT + #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) #define BOUNCE_UP BUTTON_SCROLL_UP #define BOUNCE_DOWN BUTTON_SCROLL_DOWN diff --git a/apps/plugins/calculator.c b/apps/plugins/calculator.c index e16f58a412..103ce50a07 100644 --- a/apps/plugins/calculator.c +++ b/apps/plugins/calculator.c @@ -176,14 +176,15 @@ PLUGIN_HEADER #define CALCULATOR_CALC BUTTON_SELECT #define CALCULATOR_CLEAR BUTTON_A -#elif CONFIG_KEYPAD == SANSA_E200_PAD -#define CALCULATOR_UP BUTTON_UP -#define CALCULATOR_DOWN BUTTON_DOWN -#define CALCULATOR_QUIT BUTTON_POWER +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) +#define CALCULATOR_UP BUTTON_UP +#define CALCULATOR_DOWN BUTTON_DOWN +#define CALCULATOR_QUIT BUTTON_POWER #define CALCULATOR_INPUT_CALC_PRE BUTTON_SELECT -#define CALCULATOR_INPUT (BUTTON_SELECT|BUTTON_REL) -#define CALCULATOR_CALC BUTTON_SELECT -#define CALCULATOR_CLEAR BUTTON_REC +#define CALCULATOR_INPUT (BUTTON_SELECT|BUTTON_REL) +#define CALCULATOR_CALC (BUTTON_SELECT|BUTTON_REPEAT) +#define CALCULATOR_CLEAR BUTTON_REC #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) diff --git a/apps/plugins/chessclock.c b/apps/plugins/chessclock.c index 73c49767f9..56d2709bb7 100644 --- a/apps/plugins/chessclock.c +++ b/apps/plugins/chessclock.c @@ -119,7 +119,8 @@ PLUGIN_HEADER #define CHC_SETTINGS_OK BUTTON_SELECT #define CHC_SETTINGS_CANCEL BUTTON_POWER -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define CHC_QUIT BUTTON_POWER #define CHC_STARTSTOP BUTTON_SELECT #define CHC_RESET BUTTON_DOWN diff --git a/apps/plugins/chip8.c b/apps/plugins/chip8.c index 0b06ace784..ae6e3bfd29 100644 --- a/apps/plugins/chip8.c +++ b/apps/plugins/chip8.c @@ -1028,6 +1028,14 @@ STATIC void chip8 (void) #define CHIP8_KEY6 BUTTON_RIGHT #define CHIP8_KEY8 BUTTON_SCROLL_DOWN +#elif CONFIG_KEYPAD == SANSA_C200_PAD +#define CHIP8_OFF BUTTON_POWER +#define CHIP8_KEY2 BUTTON_VOL_UP +#define CHIP8_KEY4 BUTTON_LEFT +#define CHIP8_KEY5 BUTTON_SELECT +#define CHIP8_KEY6 BUTTON_RIGHT +#define CHIP8_KEY8 BUTTON_VOL_DOWN + #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) #define CHIP8_OFF BUTTON_POWER #define CHIP8_KEY2 BUTTON_SCROLL_UP diff --git a/apps/plugins/chopper.c b/apps/plugins/chopper.c index 5e27a5e6e7..46acf2c74e 100644 --- a/apps/plugins/chopper.c +++ b/apps/plugins/chopper.c @@ -64,7 +64,8 @@ Still To do: #define ACTION BUTTON_RIGHT #define ACTIONTEXT "RIGHT" -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define QUIT BUTTON_POWER #define ACTION BUTTON_SELECT #define ACTIONTEXT "SELECT" diff --git a/apps/plugins/cube.c b/apps/plugins/cube.c index f5158e9b7a..3294b37fab 100644 --- a/apps/plugins/cube.c +++ b/apps/plugins/cube.c @@ -163,6 +163,21 @@ PLUGIN_HEADER #define CUBE_PAUSE (BUTTON_SELECT|BUTTON_REL) #define CUBE_HIGHSPEED BUTTON_REC +#elif (CONFIG_KEYPAD == SANSA_C200_PAD) +#define CUBE_QUIT BUTTON_POWER +#define CUBE_X_INC BUTTON_LEFT +#define CUBE_X_DEC BUTTON_RIGHT +#define CUBE_Y_INC BUTTON_VOL_UP +#define CUBE_Y_DEC BUTTON_VOL_DOWN +#define CUBE_Z_INC BUTTON_UP +#define CUBE_Z_DEC BUTTON_DOWN +#define CUBE_MODE_PRE BUTTON_SELECT +#define CUBE_MODE (BUTTON_SELECT|BUTTON_REPEAT) +#define CUBE_PAUSE_PRE BUTTON_SELECT +#define CUBE_PAUSE (BUTTON_SELECT|BUTTON_REL) +#define CUBE_HIGHSPEED BUTTON_REC + + #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) #define CUBE_QUIT BUTTON_POWER #define CUBE_X_INC BUTTON_LEFT diff --git a/apps/plugins/dict.c b/apps/plugins/dict.c index 32793cbc9f..257a0c6147 100644 --- a/apps/plugins/dict.c +++ b/apps/plugins/dict.c @@ -114,7 +114,8 @@ long reverse (long N) { #define LP_QUIT BUTTON_POWER #elif CONFIG_KEYPAD == GIGABEAT_PAD #define LP_QUIT BUTTON_POWER -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define LP_QUIT BUTTON_POWER #elif CONFIG_KEYPAD == IRIVER_H10_PAD #define LP_QUIT BUTTON_POWER diff --git a/apps/plugins/disktidy.c b/apps/plugins/disktidy.c index aba78afb3e..a1c51d762a 100644 --- a/apps/plugins/disktidy.c +++ b/apps/plugins/disktidy.c @@ -66,7 +66,8 @@ enum tidy_system #elif CONFIG_KEYPAD == GIGABEAT_PAD #define TIDY_STOP BUTTON_POWER -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define TIDY_STOP BUTTON_POWER #elif CONFIG_KEYPAD == IRIVER_H10_PAD diff --git a/apps/plugins/doom/i_video.c b/apps/plugins/doom/i_video.c index 24079a0f71..32990f3923 100644 --- a/apps/plugins/doom/i_video.c +++ b/apps/plugins/doom/i_video.c @@ -192,6 +192,16 @@ void I_ShutdownGraphics(void) #define DOOMBUTTON_ESC BUTTON_POWER #define DOOMBUTTON_ENTER BUTTON_SELECT #define DOOMBUTTON_WEAPON DOOMBUTTON_SCROLLWHEEL_CW +#elif CONFIG_KEYPAD == SANSA_C200_PAD +#define DOOMBUTTON_UP BUTTON_UP +#define DOOMBUTTON_DOWN BUTTON_DOWN +#define DOOMBUTTON_LEFT BUTTON_LEFT +#define DOOMBUTTON_RIGHT BUTTON_RIGHT +#define DOOMBUTTON_SHOOT BUTTON_SELECT +#define DOOMBUTTON_OPEN BUTTON_REC +#define DOOMBUTTON_ESC BUTTON_POWER +#define DOOMBUTTON_ENTER BUTTON_SELECT +#define DOOMBUTTON_WEAPON BUTTON_VOL_UP #elif CONFIG_KEYPAD == GIGABEAT_PAD #define DOOMBUTTON_UP BUTTON_UP #define DOOMBUTTON_DOWN BUTTON_DOWN diff --git a/apps/plugins/fire.c b/apps/plugins/fire.c index 5d6f0618a7..7b8a104ec0 100644 --- a/apps/plugins/fire.c +++ b/apps/plugins/fire.c @@ -96,7 +96,8 @@ static unsigned char draw_buffer[8*LCD_WIDTH]; #define FIRE_INCREASE_MULT BUTTON_UP #define FIRE_DECREASE_MULT BUTTON_DOWN -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define FIRE_QUIT BUTTON_POWER #define FIRE_SWITCH_FLAMES_TYPE BUTTON_LEFT #define FIRE_SWITCH_FLAMES_MOVING BUTTON_RIGHT diff --git a/apps/plugins/fireworks.c b/apps/plugins/fireworks.c index e8439dff15..bedf82ffda 100644 --- a/apps/plugins/fireworks.c +++ b/apps/plugins/fireworks.c @@ -57,7 +57,8 @@ static struct plugin_api* rb; #elif (CONFIG_KEYPAD == GIGABEAT_PAD) #define BTN_MENU BUTTON_MENU #define BTN_FIRE BUTTON_SELECT -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define BTN_MENU BUTTON_POWER #define BTN_FIRE BUTTON_SELECT #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) diff --git a/apps/plugins/jewels.c b/apps/plugins/jewels.c index cb4ab88048..dde53a0933 100644 --- a/apps/plugins/jewels.c +++ b/apps/plugins/jewels.c @@ -95,7 +95,8 @@ PLUGIN_HEADER #define JEWELS_SELECT BUTTON_SELECT #define JEWELS_CANCEL BUTTON_POWER -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define JEWELS_UP BUTTON_UP #define JEWELS_DOWN BUTTON_DOWN #define JEWELS_LEFT BUTTON_LEFT @@ -159,6 +160,13 @@ PLUGIN_HEADER #define YOFS 6 #define NUM_SCORES 10 ++/* use 10x10 tiles (Sansa c200) */ +#elif (LCD_HEIGHT == 80) && (LCD_WIDTH == 132) +#define TILE_WIDTH 10 +#define TILE_HEIGHT 10 +#define YOFS 0 +#define NUM_SCORES 8 + /* use 10x8 tiles (iFP 700) */ #elif (LCD_HEIGHT == 64) && (LCD_WIDTH == 128) #define TILE_WIDTH 10 @@ -1480,7 +1488,8 @@ static int jewels_main(struct game_context* bj) { rb->lcd_puts(0, 9, "SELECT to select"); rb->lcd_puts(0, 10, "Long SELECT to show menu"); rb->lcd_puts(0, 11, "POWER to cancel"); -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif CONFIG_KEYPAD == SANSA_E200_PAD \ + || CONFIG_KEYPAD == SANSA_C200_PAD rb->lcd_puts(0, 2, "Swap pairs of jewels to"); rb->lcd_puts(0, 3, "form connected segments"); rb->lcd_puts(0, 4, "of three or more of the"); diff --git a/apps/plugins/jpeg.c b/apps/plugins/jpeg.c index 2c8942f8bc..09f7455f8b 100644 --- a/apps/plugins/jpeg.c +++ b/apps/plugins/jpeg.c @@ -142,6 +142,21 @@ PLUGIN_HEADER #define JPEG_PREVIOUS BUTTON_SCROLL_UP #define JPEG_PREVIOUS_REPEAT (BUTTON_SCROLL_UP|BUTTON_REPEAT) +#elif CONFIG_KEYPAD == SANSA_C200_PAD +#define JPEG_ZOOM_PRE BUTTON_SELECT +#define JPEG_ZOOM_IN (BUTTON_SELECT | BUTTON_REL) +#define JPEG_ZOOM_OUT (BUTTON_SELECT | BUTTON_REPEAT) +#define JPEG_UP BUTTON_UP +#define JPEG_DOWN BUTTON_DOWN +#define JPEG_LEFT BUTTON_LEFT +#define JPEG_RIGHT BUTTON_RIGHT +#define JPEG_MENU BUTTON_POWER +#define JPEG_SLIDE_SHOW BUTTON_REC +#define JPEG_NEXT BUTTON_VOL_UP +#define JPEG_NEXT_REPEAT (BUTTON_VOL_UP|BUTTON_REPEAT) +#define JPEG_PREVIOUS BUTTON_VOL_DOWN +#define JPEG_PREVIOUS_REPEAT (BUTTON_VOL_DOWN|BUTTON_REPEAT) + #elif CONFIG_KEYPAD == IRIVER_H10_PAD #define JPEG_ZOOM_PRE BUTTON_PLAY #define JPEG_ZOOM_IN (BUTTON_PLAY | BUTTON_REL) diff --git a/apps/plugins/lib/pluginlib_actions.h b/apps/plugins/lib/pluginlib_actions.h index c38745a4f1..7b2b0a42e2 100644 --- a/apps/plugins/lib/pluginlib_actions.h +++ b/apps/plugins/lib/pluginlib_actions.h @@ -94,7 +94,8 @@ static const struct button_mapping generic_directions[] = || (CONFIG_KEYPAD == GIGABEAT_PAD) \ || (CONFIG_KEYPAD == RECORDER_PAD) \ || (CONFIG_KEYPAD == ARCHOS_AV300_PAD) \ - || (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) + || (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) \ + || (CONFIG_KEYPAD == SANSA_C200_PAD) { PLA_UP, BUTTON_UP, BUTTON_NONE}, { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE}, { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, @@ -142,6 +143,7 @@ static const struct button_mapping generic_directions[] = { PLA_DOWN_REPEAT, BUTTON_SCROLL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, + #else #error pluginlib_actions: Unsupported keypad #endif @@ -191,14 +193,15 @@ static const struct button_mapping generic_left_right_fire[] = { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, { PLA_FIRE, BUTTON_PLAY, BUTTON_NONE}, { PLA_FIRE_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, -#elif CONFIG_KEYPAD == ARCHOS_AV300_PAD +#elif (CONFIG_KEYPAD == SANSA_C200_PAD) \ + || (CONFIG_KEYPAD == ARCHOS_AV300_PAD) { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, { PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, { PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT,BUTTON_NONE}, -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, @@ -285,6 +288,12 @@ static const struct button_mapping generic_actions[] = {PLA_MENU, BUTTON_DOWN, BUTTON_NONE}, {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, +#elif CONFIG_KEYPAD == SANSA_C200_PAD + {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, + {PLA_START, BUTTON_UP, BUTTON_NONE}, + {PLA_MENU, BUTTON_DOWN, BUTTON_NONE}, + {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, + {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, #elif CONFIG_KEYPAD == IRIVER_H10_PAD {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, {PLA_START, BUTTON_PLAY, BUTTON_NONE}, diff --git a/apps/plugins/logo.c b/apps/plugins/logo.c index 6a37e3602d..88821c8a78 100644 --- a/apps/plugins/logo.c +++ b/apps/plugins/logo.c @@ -210,7 +210,8 @@ const unsigned char rockbox16x7[] = { #define LP_DEC_Y BUTTON_DOWN #define LP_INC_Y BUTTON_UP -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define LP_QUIT BUTTON_POWER #define LP_DEC_X BUTTON_LEFT #define LP_INC_X BUTTON_RIGHT diff --git a/apps/plugins/mandelbrot.c b/apps/plugins/mandelbrot.c index 48450ae455..b1f243b01c 100644 --- a/apps/plugins/mandelbrot.c +++ b/apps/plugins/mandelbrot.c @@ -132,6 +132,18 @@ PLUGIN_HEADER #define MANDELBROT_MAXITER_DEC (BUTTON_SELECT | BUTTON_LEFT) #define MANDELBROT_RESET BUTTON_REC +#elif CONFIG_KEYPAD == SANSA_C200_PAD +#define MANDELBROT_QUIT BUTTON_POWER +#define MANDELBROT_UP BUTTON_UP +#define MANDELBROT_DOWN BUTTON_DOWN +#define MANDELBROT_LEFT BUTTON_LEFT +#define MANDELBROT_RIGHT BUTTON_RIGHT +#define MANDELBROT_ZOOM_IN BUTTON_VOL_UP +#define MANDELBROT_ZOOM_OUT BUTTON_VOL_DOWN +#define MANDELBROT_MAXITER_INC (BUTTON_SELECT | BUTTON_RIGHT) +#define MANDELBROT_MAXITER_DEC (BUTTON_SELECT | BUTTON_LEFT) +#define MANDELBROT_RESET BUTTON_REC + #elif CONFIG_KEYPAD == IRIVER_H10_PAD #define MANDELBROT_QUIT BUTTON_POWER #define MANDELBROT_UP BUTTON_SCROLL_UP diff --git a/apps/plugins/maze.c b/apps/plugins/maze.c index 2948eb2aec..8967f59132 100644 --- a/apps/plugins/maze.c +++ b/apps/plugins/maze.c @@ -89,6 +89,9 @@ const struct button_mapping *plugin_contexts[] #if ( LCD_WIDTH == 112 ) #define MAZE_WIDTH 16 #define MAZE_HEIGHT 12 +#elif( LCD_WIDTH == 132 ) +#define MAZE_WIDTH 26 +#define MAZE_HEIGHT 16 #else #define MAZE_WIDTH 32 #define MAZE_HEIGHT 24 diff --git a/apps/plugins/mazezam.c b/apps/plugins/mazezam.c index 48c564ab8a..41edd3a5e5 100644 --- a/apps/plugins/mazezam.c +++ b/apps/plugins/mazezam.c @@ -116,7 +116,8 @@ MEM_FUNCTION_WRAPPERS(rb); #define MAZEZAM_QUIT BUTTON_POWER #define MAZEZAM_QUIT_KEYNAME "[POWER]" -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define MAZEZAM_UP BUTTON_UP #define MAZEZAM_DOWN BUTTON_DOWN #define MAZEZAM_LEFT BUTTON_LEFT diff --git a/apps/plugins/midiplay.c b/apps/plugins/midiplay.c index 59594a97f7..f8a6929661 100644 --- a/apps/plugins/midiplay.c +++ b/apps/plugins/midiplay.c @@ -55,7 +55,8 @@ PLUGIN_IRAM_DECLARE #define BTN_UP BUTTON_UP #define BTN_DOWN BUTTON_DOWN -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define BTN_QUIT BUTTON_POWER #define BTN_RIGHT BUTTON_RIGHT #define BTN_UP BUTTON_UP diff --git a/apps/plugins/mosaique.c b/apps/plugins/mosaique.c index bfcd53af66..45d2319101 100644 --- a/apps/plugins/mosaique.c +++ b/apps/plugins/mosaique.c @@ -91,7 +91,8 @@ PLUGIN_HEADER #define MOSAIQUE_SPEED BUTTON_A #define MOSAIQUE_RESTART BUTTON_SELECT -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define MOSAIQUE_QUIT BUTTON_POWER #define MOSAIQUE_SPEED BUTTON_DOWN #define MOSAIQUE_RESTART BUTTON_SELECT diff --git a/apps/plugins/mp3_encoder.c b/apps/plugins/mp3_encoder.c index 55cfac3899..453c755f10 100644 --- a/apps/plugins/mp3_encoder.c +++ b/apps/plugins/mp3_encoder.c @@ -2343,7 +2343,8 @@ void get_mp3_filename(char *wav_name) #define MP3ENC_NEXT BUTTON_DOWN #define MP3ENC_DONE BUTTON_POWER #define MP3ENC_SELECT BUTTON_SELECT -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define MP3ENC_PREV BUTTON_UP #define MP3ENC_NEXT BUTTON_DOWN #define MP3ENC_DONE BUTTON_POWER diff --git a/apps/plugins/mpegplayer/mpegplayer.c b/apps/plugins/mpegplayer/mpegplayer.c index 481454dc87..af0567c0d1 100644 --- a/apps/plugins/mpegplayer/mpegplayer.c +++ b/apps/plugins/mpegplayer/mpegplayer.c @@ -160,6 +160,13 @@ PLUGIN_IRAM_DECLARE #define MPEG_VOLDOWN BUTTON_SCROLL_UP #define MPEG_VOLUP BUTTON_SCROLL_DOWN +#elif CONFIG_KEYPAD == SANSA_C200_PAD +#define MPEG_MENU BUTTON_SELECT +#define MPEG_STOP BUTTON_POWER +#define MPEG_PAUSE BUTTON_UP +#define MPEG_VOLDOWN BUTTON_VOL_DOWN +#define MPEG_VOLUP BUTTON_VOL_UP + #else #error MPEGPLAYER: Unsupported keypad #endif diff --git a/apps/plugins/oscilloscope.c b/apps/plugins/oscilloscope.c index bd16341008..ee4b089ac1 100644 --- a/apps/plugins/oscilloscope.c +++ b/apps/plugins/oscilloscope.c @@ -109,6 +109,17 @@ PLUGIN_HEADER #define OSCILLOSCOPE_VOL_UP BUTTON_SCROLL_DOWN #define OSCILLOSCOPE_VOL_DOWN BUTTON_SCROLL_UP +#elif (CONFIG_KEYPAD == SANSA_C200_PAD) +#define OSCILLOSCOPE_QUIT BUTTON_POWER +#define OSCILLOSCOPE_DRAWMODE BUTTON_SELECT +#define OSCILLOSCOPE_ADVMODE BUTTON_DOWN +#define OSCILLOSCOPE_ORIENTATION BUTTON_UP +#define OSCILLOSCOPE_PAUSE BUTTON_REC +#define OSCILLOSCOPE_SPEED_UP BUTTON_RIGHT +#define OSCILLOSCOPE_SPEED_DOWN BUTTON_LEFT +#define OSCILLOSCOPE_VOL_UP BUTTON_VOL_UP +#define OSCILLOSCOPE_VOL_DOWN BUTTON_VOL_DOWN + #elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD #define OSCILLOSCOPE_QUIT BUTTON_POWER #define OSCILLOSCOPE_DRAWMODE_PRE BUTTON_SELECT diff --git a/apps/plugins/plasma.c b/apps/plugins/plasma.c index 1fae239e53..76c54122e0 100644 --- a/apps/plugins/plasma.c +++ b/apps/plugins/plasma.c @@ -63,7 +63,8 @@ static int plasma_frequency; #define PLASMA_INCREASE_FREQUENCY BUTTON_UP #define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define PLASMA_QUIT BUTTON_POWER #define PLASMA_INCREASE_FREQUENCY BUTTON_UP #define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN @@ -90,7 +91,8 @@ static int plasma_frequency; #define PLASMA_REGEN_COLORS BUTTON_PLAY #elif CONFIG_KEYPAD == IRIVER_H10_PAD #define PLASMA_REGEN_COLORS BUTTON_PLAY -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define PLASMA_REGEN_COLORS BUTTON_SELECT #elif CONFIG_KEYPAD == IPOD_4G_PAD #define PLASMA_REGEN_COLORS BUTTON_SELECT diff --git a/apps/plugins/pong.c b/apps/plugins/pong.c index b88b95bb91..79069b9285 100644 --- a/apps/plugins/pong.c +++ b/apps/plugins/pong.c @@ -100,7 +100,8 @@ PLUGIN_HEADER #define PONG_RIGHT_UP BUTTON_VOL_UP #define PONG_RIGHT_DOWN BUTTON_VOL_DOWN -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define PONG_QUIT BUTTON_POWER #define PONG_PAUSE BUTTON_SELECT #define PONG_LEFT_UP BUTTON_LEFT diff --git a/apps/plugins/reversi/reversi-gui.c b/apps/plugins/reversi/reversi-gui.c index 374cc0f151..f99f616668 100644 --- a/apps/plugins/reversi/reversi-gui.c +++ b/apps/plugins/reversi/reversi-gui.c @@ -67,6 +67,14 @@ static struct plugin_api* rb; #define CELL_HEIGHT 6 #define SMALL_BOARD +#elif (LCD_HEIGHT==80) && (LCD_WIDTH==132) +/* Sansa C200 - 132x80, 8 cells @ 9x9 with 9 border lines */ + +/* Internal dimensions of a cell */ +#define CELL_WIDTH 8 +#define CELL_HEIGHT 8 +#define SMALL_BOARD + #elif (LCD_HEIGHT==110) && (LCD_WIDTH==138) /* iPod Mini - 138x110, 8 cells @ 10x10 with 9 border lines */ diff --git a/apps/plugins/reversi/reversi-gui.h b/apps/plugins/reversi/reversi-gui.h index b82e40d275..5543ea8fd6 100644 --- a/apps/plugins/reversi/reversi-gui.h +++ b/apps/plugins/reversi/reversi-gui.h @@ -95,7 +95,8 @@ #define REVERSI_BUTTON_MAKE_MOVE BUTTON_REW #define REVERSI_BUTTON_MENU BUTTON_PLAY -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define REVERSI_BUTTON_QUIT BUTTON_POWER #define REVERSI_BUTTON_UP BUTTON_UP #define REVERSI_BUTTON_DOWN BUTTON_DOWN diff --git a/apps/plugins/rockblox.c b/apps/plugins/rockblox.c index 8625e35cfb..0b3382ff19 100644 --- a/apps/plugins/rockblox.c +++ b/apps/plugins/rockblox.c @@ -121,6 +121,18 @@ PLUGIN_HEADER #define ROCKBLOX_DROP BUTTON_SELECT #define ROCKBLOX_RESTART BUTTON_REC +#elif CONFIG_KEYPAD == SANSA_C200_PAD + +#define ROCKBLOX_OFF BUTTON_POWER +#define ROCKBLOX_ROTATE_RIGHT BUTTON_UP +#define ROCKBLOX_ROTATE_RIGHT2 BUTTON_VOL_DOWN +#define ROCKBLOX_ROTATE_LEFT BUTTON_VOL_UP +#define ROCKBLOX_DOWN BUTTON_DOWN +#define ROCKBLOX_LEFT BUTTON_LEFT +#define ROCKBLOX_RIGHT BUTTON_RIGHT +#define ROCKBLOX_DROP BUTTON_SELECT +#define ROCKBLOX_RESTART BUTTON_REC + #elif CONFIG_KEYPAD == IRIVER_H10_PAD #define ROCKBLOX_OFF BUTTON_POWER @@ -259,6 +271,19 @@ PLUGIN_HEADER #define LEVEL_Y 49 #define LINES_Y 82 +#elif (LCD_WIDTH == 132) && (LCD_HEIGHT == 80) + +#define BLOCK_WIDTH 4 +#define BLOCK_HEIGHT 4 +#define BOARD_X 10 +#define BOARD_Y 0 +#define PREVIEW_X 89 +#define PREVIEW_Y 61 +#define LABEL_X 78 +#define SCORE_Y 10 +#define LEVEL_Y 30 +#define LINES_Y 50 + #elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 64) #define BLOCK_WIDTH 3 diff --git a/apps/plugins/rockpaint.c b/apps/plugins/rockpaint.c index 3038a06bee..41519f66e1 100644 --- a/apps/plugins/rockpaint.c +++ b/apps/plugins/rockpaint.c @@ -82,7 +82,8 @@ PLUGIN_HEADER #define ROCKPAINT_LEFT BUTTON_LEFT #define ROCKPAINT_RIGHT BUTTON_RIGHT -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define ROCKPAINT_QUIT BUTTON_POWER #define ROCKPAINT_DRAW BUTTON_SELECT #define ROCKPAINT_MENU ( BUTTON_SELECT | BUTTON_POWER ) diff --git a/apps/plugins/sliding_puzzle.c b/apps/plugins/sliding_puzzle.c index b819f354cc..17a96baf2a 100644 --- a/apps/plugins/sliding_puzzle.c +++ b/apps/plugins/sliding_puzzle.c @@ -77,7 +77,8 @@ PLUGIN_HEADER #define PUZZLE_SHUFFLE BUTTON_SELECT #define PUZZLE_PICTURE BUTTON_A -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define PUZZLE_QUIT BUTTON_POWER #define PUZZLE_UP BUTTON_UP #define PUZZLE_DOWN BUTTON_DOWN diff --git a/apps/plugins/snake.c b/apps/plugins/snake.c index eeca6bd547..2beeaa4c5b 100644 --- a/apps/plugins/snake.c +++ b/apps/plugins/snake.c @@ -83,7 +83,8 @@ PLUGIN_HEADER #define SNAKE_DOWN BUTTON_DOWN #define SNAKE_PLAYPAUSE BUTTON_SELECT -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define SNAKE_QUIT BUTTON_POWER #define SNAKE_UP BUTTON_UP #define SNAKE_DOWN BUTTON_DOWN diff --git a/apps/plugins/snake2.c b/apps/plugins/snake2.c index 385af159e4..1d13b0523b 100644 --- a/apps/plugins/snake2.c +++ b/apps/plugins/snake2.c @@ -232,7 +232,8 @@ PLUGIN_HEADER #define SNAKE2_PLAYPAUSE BUTTON_SELECT #define SNAKE2_PLAYPAUSE_TEXT "Select" -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define SNAKE2_UP BUTTON_UP #define SNAKE2_DOWN BUTTON_DOWN #define SNAKE2_QUIT BUTTON_POWER diff --git a/apps/plugins/snow.c b/apps/plugins/snow.c index c815471e11..6078f87708 100644 --- a/apps/plugins/snow.c +++ b/apps/plugins/snow.c @@ -46,7 +46,8 @@ PLUGIN_HEADER #define SNOW_QUIT BUTTON_POWER #elif CONFIG_KEYPAD == GIGABEAT_PAD #define SNOW_QUIT BUTTON_POWER -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define SNOW_QUIT BUTTON_POWER #elif CONFIG_KEYPAD == IRIVER_H10_PAD #define SNOW_QUIT BUTTON_POWER diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c index 05ff25b721..ae1294cbc5 100644 --- a/apps/plugins/solitaire.c +++ b/apps/plugins/solitaire.c @@ -213,6 +213,25 @@ static struct plugin_api* rb; # define HK_CUR2STACK "DOUBLE SELECT" # define HK_REM2STACK "RIGHT" +#elif (CONFIG_KEYPAD == SANSA_C200_PAD) +# define SOL_QUIT BUTTON_POWER +# define SOL_UP BUTTON_UP +# define SOL_DOWN BUTTON_DOWN +# define SOL_LEFT BUTTON_LEFT +# define SOL_RIGHT BUTTON_RIGHT +# define SOL_MOVE_PRE BUTTON_SELECT +# define SOL_MOVE (BUTTON_SELECT | BUTTON_REL) +# define SOL_DRAW BUTTON_VOL_DOWN +# define SOL_REM2CUR BUTTON_REC +# define SOL_CUR2STACK_PRE BUTTON_SELECT +# define SOL_CUR2STACK (BUTTON_SELECT | BUTTON_REPEAT) +# define SOL_REM2STACK BUTTON_VOL_UP +# define HK_MOVE "SELECT" +# define HK_DRAW "REC" +# define HK_REM2CUR "LEFT" +# define HK_CUR2STACK "DOUBLE SELECT" +# define HK_REM2STACK "RIGHT" + #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) # define SOL_QUIT BUTTON_POWER # define SOL_UP BUTTON_SCROLL_UP diff --git a/apps/plugins/spacerocks.c b/apps/plugins/spacerocks.c index 1278a611ce..d98041da39 100644 --- a/apps/plugins/spacerocks.c +++ b/apps/plugins/spacerocks.c @@ -135,6 +135,19 @@ static struct plugin_api* rb; /* global api struct pointer */ #define AST_FIRE BUTTON_SELECT #define AST_FIRE_REP (BUTTON_SELECT | BUTTON_REPEAT) +#elif (CONFIG_KEYPAD == SANSA_C200_PAD) +#define AST_PAUSE BUTTON_REC +#define AST_QUIT BUTTON_POWER +#define AST_THRUST_REP (BUTTON_UP | BUTTON_REPEAT) +#define AST_THRUST BUTTON_UP +#define AST_HYPERSPACE BUTTON_DOWN +#define AST_LEFT BUTTON_LEFT +#define AST_LEFT_REP (BUTTON_LEFT | BUTTON_REPEAT) +#define AST_RIGHT BUTTON_RIGHT +#define AST_RIGHT_REP (BUTTON_RIGHT | BUTTON_REPEAT) +#define AST_FIRE BUTTON_SELECT +#define AST_FIRE_REP (BUTTON_SELECT | BUTTON_REPEAT) + #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) #define AST_PAUSE BUTTON_PLAY #define AST_QUIT BUTTON_POWER diff --git a/apps/plugins/star.c b/apps/plugins/star.c index c9d31a6c9a..1c2501d6a4 100644 --- a/apps/plugins/star.c +++ b/apps/plugins/star.c @@ -144,7 +144,8 @@ PLUGIN_HEADER #define STAR_LEVEL_REPEAT BUTTON_A #define STAR_MENU_RUN BUTTON_SELECT -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define STAR_QUIT BUTTON_POWER #define STAR_UP BUTTON_UP diff --git a/apps/plugins/starfield.c b/apps/plugins/starfield.c index 278d24fbc7..333fd32fcd 100644 --- a/apps/plugins/starfield.c +++ b/apps/plugins/starfield.c @@ -57,7 +57,8 @@ static struct plugin_api* rb; /* global api struct pointer */ #define STARFIELD_INCREASE_NB_STARS BUTTON_RIGHT #define STARFIELD_DECREASE_NB_STARS BUTTON_LEFT #define STARFIELD_TOGGLE_COLOR BUTTON_SELECT -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define STARFIELD_QUIT BUTTON_POWER #define STARFIELD_INCREASE_ZMOVE BUTTON_UP #define STARFIELD_DECREASE_ZMOVE BUTTON_DOWN diff --git a/apps/plugins/stats.c b/apps/plugins/stats.c index a33331a429..03dc9fa038 100644 --- a/apps/plugins/stats.c +++ b/apps/plugins/stats.c @@ -53,7 +53,8 @@ static bool abort; #elif CONFIG_KEYPAD == GIGABEAT_PAD #define STATS_STOP BUTTON_POWER -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define STATS_STOP BUTTON_POWER #elif CONFIG_KEYPAD == IRIVER_H10_PAD diff --git a/apps/plugins/stopwatch.c b/apps/plugins/stopwatch.c index 6f18617d2d..d36a774447 100644 --- a/apps/plugins/stopwatch.c +++ b/apps/plugins/stopwatch.c @@ -100,10 +100,11 @@ PLUGIN_HEADER #define STOPWATCH_LAP_TIMER BUTTON_MENU #define STOPWATCH_SCROLL_UP BUTTON_UP #define STOPWATCH_SCROLL_DOWN BUTTON_DOWN -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define STOPWATCH_QUIT BUTTON_POWER -#define STOPWATCH_START_STOP BUTTON_LEFT -#define STOPWATCH_RESET_TIMER BUTTON_REC +#define STOPWATCH_START_STOP BUTTON_RIGHT +#define STOPWATCH_RESET_TIMER BUTTON_LEFT #define STOPWATCH_LAP_TIMER BUTTON_SELECT #define STOPWATCH_SCROLL_UP BUTTON_UP #define STOPWATCH_SCROLL_DOWN BUTTON_DOWN diff --git a/apps/plugins/sudoku/sudoku.c b/apps/plugins/sudoku/sudoku.c index 9485f2de23..1d548ace6d 100644 --- a/apps/plugins/sudoku/sudoku.c +++ b/apps/plugins/sudoku/sudoku.c @@ -108,6 +108,14 @@ static const char default_game[9][9] = #define CELL_HEIGHT 6 #define SMALL_BOARD +#elif ((LCD_HEIGHT==80) && (LCD_WIDTH==132)) +/* C200, 9 cells @ 8x8 with 8 border lines */ + +/* Internal dimensions of a cell */ +#define CELL_WIDTH 8 +#define CELL_HEIGHT 8 +#define SMALL_BOARD + #elif (LCD_HEIGHT==110) && (LCD_WIDTH==138) /* iPod Mini - 138x110, 9 cells @ 10x10 with 14 border lines */ diff --git a/apps/plugins/sudoku/sudoku.h b/apps/plugins/sudoku/sudoku.h index d41c0b879d..f888bd7090 100644 --- a/apps/plugins/sudoku/sudoku.h +++ b/apps/plugins/sudoku/sudoku.h @@ -122,6 +122,20 @@ #define SUDOKU_BUTTON_MENU BUTTON_SELECT #define SUDOKU_BUTTON_POSSIBLE BUTTON_REC +#elif (CONFIG_KEYPAD == SANSA_C200_PAD) +#define SUDOKU_BUTTON_QUIT_PRE BUTTON_POWER +#define SUDOKU_BUTTON_QUIT (BUTTON_POWER | BUTTON_REPEAT) +#define SUDOKU_BUTTON_UP BUTTON_UP +#define SUDOKU_BUTTON_DOWN BUTTON_DOWN +#define SUDOKU_BUTTON_LEFT BUTTON_LEFT +#define SUDOKU_BUTTON_RIGHT BUTTON_RIGHT +#define SUDOKU_BUTTON_TOGGLEBACK BUTTON_VOL_DOWN +#define SUDOKU_BUTTON_TOGGLE BUTTON_VOL_UP +#define SUDOKU_BUTTON_ALTTOGGLE BUTTON_SELECT +#define SUDOKU_BUTTON_MENU_PRE BUTTON_POWER +#define SUDOKU_BUTTON_MENU (BUTTON_POWER | BUTTON_REL) +#define SUDOKU_BUTTON_POSSIBLE BUTTON_REC + #elif #error SUDOKU: Unsupported keypad #endif diff --git a/apps/plugins/viewer.c b/apps/plugins/viewer.c index 055ace08c5..7f87b7caa2 100644 --- a/apps/plugins/viewer.c +++ b/apps/plugins/viewer.c @@ -184,6 +184,18 @@ PLUGIN_HEADER #define VIEWER_LINE_UP BUTTON_SCROLL_UP #define VIEWER_LINE_DOWN BUTTON_SCROLL_DOWN +/* Sansa C200 keys */ +#elif CONFIG_KEYPAD == SANSA_C200_PAD +#define VIEWER_QUIT BUTTON_POWER +#define VIEWER_PAGE_UP BUTTON_VOL_UP +#define VIEWER_PAGE_DOWN BUTTON_VOL_DOWN +#define VIEWER_SCREEN_LEFT BUTTON_LEFT +#define VIEWER_SCREEN_RIGHT BUTTON_RIGHT +#define VIEWER_MENU BUTTON_SELECT +#define VIEWER_AUTOSCROLL BUTTON_REC +#define VIEWER_LINE_UP BUTTON_UP +#define VIEWER_LINE_DOWN BUTTON_DOWN + /* iriver H10 keys */ #elif CONFIG_KEYPAD == IRIVER_H10_PAD #define VIEWER_QUIT BUTTON_POWER diff --git a/apps/plugins/vu_meter.c b/apps/plugins/vu_meter.c index f054a5946e..9175e1d4d3 100644 --- a/apps/plugins/vu_meter.c +++ b/apps/plugins/vu_meter.c @@ -94,6 +94,15 @@ PLUGIN_HEADER #define VUMETER_UP BUTTON_SCROLL_DOWN #define VUMETER_DOWN BUTTON_SCROLL_UP +#elif (CONFIG_KEYPAD == SANSA_C200_PAD) +#define VUMETER_QUIT BUTTON_POWER +#define VUMETER_HELP BUTTON_REC +#define VUMETER_MENU BUTTON_SELECT +#define VUMETER_MENU_EXIT BUTTON_SELECT +#define VUMETER_MENU_EXIT2 BUTTON_POWER +#define VUMETER_UP BUTTON_VOL_UP +#define VUMETER_DOWN BUTTON_VOL_DOWN + #elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD #define VUMETER_QUIT BUTTON_POWER #define VUMETER_HELP BUTTON_PLAY diff --git a/apps/plugins/wormlet.c b/apps/plugins/wormlet.c index 1c78f33ad0..c05918e9b4 100644 --- a/apps/plugins/wormlet.c +++ b/apps/plugins/wormlet.c @@ -148,7 +148,8 @@ PLUGIN_HEADER #define WORMS_TEXT "Left/Right" -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define BTN_DIR_UP BUTTON_UP #define BTN_DIR_DOWN BUTTON_DOWN @@ -182,6 +183,11 @@ PLUGIN_HEADER #define ARGH_SIZE 4 #define SPEED 14 #define MAX_WORM_SEGMENTS 128 +#elif (LCD_WIDTH == 132) && (LCD_HEIGHT == 80) +#define FOOD_SIZE 3 +#define ARGH_SIZE 4 +#define SPEED 14 +#define MAX_WORM_SEGMENTS 128 #elif (LCD_WIDTH == 138) && (LCD_HEIGHT == 110) #define FOOD_SIZE 4 #define ARGH_SIZE 5 diff --git a/apps/plugins/xobox.c b/apps/plugins/xobox.c index c91e20aedd..f51e98ecff 100644 --- a/apps/plugins/xobox.c +++ b/apps/plugins/xobox.c @@ -74,7 +74,8 @@ PLUGIN_HEADER #define DOWN BUTTON_DOWN #define PAUSE BUTTON_A -#elif (CONFIG_KEYPAD == SANSA_E200_PAD) +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define QUIT BUTTON_POWER #define LEFT BUTTON_LEFT diff --git a/apps/plugins/zxbox/keymaps.h b/apps/plugins/zxbox/keymaps.h index 603869d454..6af84719ff 100644 --- a/apps/plugins/zxbox/keymaps.h +++ b/apps/plugins/zxbox/keymaps.h @@ -77,7 +77,8 @@ #define ZX_UP BUTTON_SCROLL_UP #define ZX_DOWN BUTTON_SCROLL_DOWN -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) #define ZX_SELECT BUTTON_SELECT #define ZX_MENU BUTTON_POWER #define ZX_LEFT BUTTON_LEFT diff --git a/apps/plugins/zxbox/zxbox_keyb.c b/apps/plugins/zxbox/zxbox_keyb.c index 5bea491a51..2b1d171c11 100644 --- a/apps/plugins/zxbox/zxbox_keyb.c +++ b/apps/plugins/zxbox/zxbox_keyb.c @@ -101,7 +101,8 @@ #define KBD_UP BUTTON_SCROLL_UP #define KBD_DOWN BUTTON_SCROLL_DOWN -#elif CONFIG_KEYPAD == SANSA_E200_PAD +#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ +(CONFIG_KEYPAD == SANSA_C200_PAD) /* TODO: Check keyboard mappings */ diff --git a/docs/CREDITS b/docs/CREDITS index 9edfa7ffcc..edbea3515f 100644 --- a/docs/CREDITS +++ b/docs/CREDITS @@ -331,6 +331,8 @@ Sofian Babai Costas Calamvokis Catalin Patulea Peter Harley +Max Kelley + The libmad team The wavpack team The ffmpeg team diff --git a/tools/configure b/tools/configure index a928e3060c..63e5512c01 100755 --- a/tools/configure +++ b/tools/configure @@ -1349,7 +1349,7 @@ EOF appextra="recorder:gui" archosrom="" flash="" - plugins="" + plugins="yes" swcodec="yes" boottool="$rootdir/tools/scramble -mi4v3 -model=c200 -type=RBBL" bootoutput="firmware.mi4"