forked from len0rd/rockbox
Solitaire adapted to iRiver, based on patch #1121520 by Jonas Haggqvist.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5967 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
02eaeafcb6
commit
538e68059a
2 changed files with 24 additions and 14 deletions
|
@ -33,10 +33,7 @@ sliding_puzzle.c
|
||||||
snake.c
|
snake.c
|
||||||
snake2.c
|
snake2.c
|
||||||
sokoban.c
|
sokoban.c
|
||||||
#if CONFIG_KEYPAD != IRIVER_H100_PAD
|
|
||||||
/* just because it isn't fixed yet to deal with this keymap */
|
|
||||||
solitaire.c
|
solitaire.c
|
||||||
#endif
|
|
||||||
splitedit.c
|
splitedit.c
|
||||||
star.c
|
star.c
|
||||||
#if CONFIG_LCD == LCD_SSD1815
|
#if CONFIG_LCD == LCD_SSD1815
|
||||||
|
|
|
@ -36,7 +36,6 @@ use F3 to put card on top of the remains' stack on one of the 4 final color
|
||||||
#include "lcd.h"
|
#include "lcd.h"
|
||||||
|
|
||||||
#ifdef HAVE_LCD_BITMAP
|
#ifdef HAVE_LCD_BITMAP
|
||||||
#if CONFIG_KEYPAD != IRIVER_H100_PAD /* FIX! */
|
|
||||||
|
|
||||||
/* here is a global api struct pointer. while not strictly necessary,
|
/* here is a global api struct pointer. while not strictly necessary,
|
||||||
it's nice not to have to pass the api pointer in all function calls
|
it's nice not to have to pass the api pointer in all function calls
|
||||||
|
@ -92,16 +91,16 @@ static struct plugin_api* rb;
|
||||||
#define SOL_DOWN BUTTON_DOWN
|
#define SOL_DOWN BUTTON_DOWN
|
||||||
#define SOL_LEFT BUTTON_LEFT
|
#define SOL_LEFT BUTTON_LEFT
|
||||||
#define SOL_RIGHT BUTTON_RIGHT
|
#define SOL_RIGHT BUTTON_RIGHT
|
||||||
#define SOL_MOVE BUTTON_ON
|
#define SOL_MOVE_PRE BUTTON_SELECT
|
||||||
#define SOL_DRAW BUTTON_SELECT
|
#define SOL_MOVE (BUTTON_SELECT | BUTTON_REL)
|
||||||
#define SOL_REM2CUR BUTTON_PLAY
|
#define SOL_DRAW BUTTON_MODE
|
||||||
#define SOL_CUR2STACK BUTTON_F1
|
#define SOL_REM2CUR (BUTTON_LEFT | BUTTON_ON)
|
||||||
#define SOL_REM2STACK BUTTON_F3
|
#define SOL_CUR2STACK (BUTTON_SELECT | BUTTON_REPEAT)
|
||||||
#define SOL_MENU_RUN BUTTON_RIGHT
|
#define SOL_REM2STACK (BUTTON_RIGHT | BUTTON_ON)
|
||||||
#define SOL_MENU_RUN2 BUTTON_ON
|
#define SOL_MENU_RUN BUTTON_SELECT
|
||||||
#define SOL_MENU_INFO BUTTON_SELECT
|
#define SOL_MENU_RUN2 BUTTON_RIGHT
|
||||||
|
#define SOL_MENU_INFO BUTTON_MODE
|
||||||
#define SOL_MENU_INFO2 BUTTON_REC
|
#define SOL_MENU_INFO2 BUTTON_REC
|
||||||
#define SOL_MENU_INFO3 BUTTON_MODE
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* common help definitions */
|
/* common help definitions */
|
||||||
|
@ -125,6 +124,13 @@ static struct plugin_api* rb;
|
||||||
#define HELP_SOL_CUR2STACK "RIGHT..: Put the card under the cursor on one of the 4 final color stacks."
|
#define HELP_SOL_CUR2STACK "RIGHT..: Put the card under the cursor on one of the 4 final color stacks."
|
||||||
#define HELP_SOL_REM2STACK "UP..: Put the card on top of the remains' stack on one of the 4 final color stacks."
|
#define HELP_SOL_REM2STACK "UP..: Put the card on top of the remains' stack on one of the 4 final color stacks."
|
||||||
|
|
||||||
|
#elif CONFIG_KEYPAD == IRIVER_H100_PAD
|
||||||
|
#define HELP_SOL_MOVE "SELECT: Select cards, Move cards, reveal hidden cards ..."
|
||||||
|
#define HELP_SOL_DRAW "REC: Un-select a card if it was selected. Else, draw 3 new cards out of the remains' stack."
|
||||||
|
#define HELP_SOL_REM2CUR "PLAY+LEFT: Put the card on top of the remains' stack on top of the cursor."
|
||||||
|
#define HELP_SOL_CUR2STACK "SELECT..: Put the card under the cursor on one of the 4 final color stacks."
|
||||||
|
#define HELP_SOL_REM2STACK "PLAY+RIGHT: Put the card on top of the remains' stack on one of the 4 final color stacks."
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static unsigned char colors[4][8] = {
|
static unsigned char colors[4][8] = {
|
||||||
|
@ -365,6 +371,14 @@ int solitaire_help(void){
|
||||||
rb->lcd_putsxy(0, 42, "All actions can be");
|
rb->lcd_putsxy(0, 42, "All actions can be");
|
||||||
rb->lcd_putsxy(0, 49, "done using arrows,");
|
rb->lcd_putsxy(0, 49, "done using arrows,");
|
||||||
rb->lcd_putsxy(0, 56, "short & long MODE.");
|
rb->lcd_putsxy(0, 56, "short & long MODE.");
|
||||||
|
#elif CONFIG_KEYPAD == IRIVER_H100_PAD
|
||||||
|
rb->lcd_putsxy(20, 8, "Press a key or key");
|
||||||
|
rb->lcd_putsxy(20, 16, "combo to see it's");
|
||||||
|
rb->lcd_putsxy(20, 24, "role. Press STOP to");
|
||||||
|
rb->lcd_putsxy(20, 32, "return to menu.");
|
||||||
|
rb->lcd_putsxy(20, 48, "All actions can be");
|
||||||
|
rb->lcd_putsxy(20, 56, "done using the");
|
||||||
|
rb->lcd_putsxy(20, 64, "joystick and RECORD.");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
rb->lcd_update();
|
rb->lcd_update();
|
||||||
|
@ -1193,5 +1207,4 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
|
||||||
return (result == SOLITAIRE_USB) ? PLUGIN_USB_CONNECTED : PLUGIN_OK;
|
return (result == SOLITAIRE_USB) ? PLUGIN_USB_CONNECTED : PLUGIN_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* iRiver h100 keypad */
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue