diff options
| author | Barry Wardell <rockbox@barrywardell.net> | 2007-01-15 20:40:48 +0000 |
|---|---|---|
| committer | Barry Wardell <rockbox@barrywardell.net> | 2007-01-15 20:40:48 +0000 |
| commit | 41ee9e33041dd2020e7ee3c44b81cef538b6592f (patch) | |
| tree | 80dea3488f41fd0c78512760daf86e1a00dd3f32 | |
| parent | 6de815be5cb06e9e8df46fcfdfbf611bce24c99c (diff) | |
| download | rockbox-41ee9e33041dd2020e7ee3c44b81cef538b6592f.zip rockbox-41ee9e33041dd2020e7ee3c44b81cef538b6592f.tar.gz rockbox-41ee9e33041dd2020e7ee3c44b81cef538b6592f.tar.bz2 rockbox-41ee9e33041dd2020e7ee3c44b81cef538b6592f.tar.xz | |
FS#6539 - Thanks to Tom Ross
Add Jewels, Spacerocks, Wormlet, Rockboy and Sudoku for the e200. Also Includes manual changes for plugins.
Add X5 keymappings for wormlet to the manual.
Add help text for Jewels on the H10 and give a warning if help text is not defined.
Fix bug in spacerocks lives drawing on large screens (larger than Ondio).
Change spacerocks comments to C style.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12018 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | apps/plugins/SOURCES | 6 | ||||
| -rw-r--r-- | apps/plugins/SUBDIRS | 3 | ||||
| -rw-r--r-- | apps/plugins/bitmaps/native/SOURCES | 8 | ||||
| -rw-r--r-- | apps/plugins/jewels.c | 26 | ||||
| -rw-r--r-- | apps/plugins/rockboy/rockboy.c | 7 | ||||
| -rw-r--r-- | apps/plugins/rockboy/sys_rockbox.c | 3 | ||||
| -rw-r--r-- | apps/plugins/spacerocks.c | 83 | ||||
| -rw-r--r-- | apps/plugins/sudoku/SOURCES | 2 | ||||
| -rw-r--r-- | apps/plugins/sudoku/sudoku.c | 12 | ||||
| -rw-r--r-- | apps/plugins/sudoku/sudoku.h | 5 | ||||
| -rw-r--r-- | apps/plugins/wormlet.c | 5 | ||||
| -rw-r--r-- | manual/plugins/images/ss-jewels-176x220x16.png | bin | 0 -> 12533 bytes | |||
| -rw-r--r-- | manual/plugins/images/ss-rockboy-176x220x16.png | bin | 0 -> 3899 bytes | |||
| -rw-r--r-- | manual/plugins/images/ss-spacerocks-176x220x16.png | bin | 0 -> 851 bytes | |||
| -rw-r--r-- | manual/plugins/images/ss-sudoku-176x220x16.png | bin | 0 -> 4667 bytes | |||
| -rw-r--r-- | manual/plugins/images/ss-wormlet-176x220x16.png | bin | 0 -> 1324 bytes | |||
| -rw-r--r-- | manual/plugins/jewels.tex | 16 | ||||
| -rw-r--r-- | manual/plugins/main.tex | 6 | ||||
| -rw-r--r-- | manual/plugins/rockboy.tex | 11 | ||||
| -rw-r--r-- | manual/plugins/spacerocks.tex | 2 | ||||
| -rw-r--r-- | manual/plugins/wormlet.tex | 32 |
21 files changed, 154 insertions, 73 deletions
diff --git a/apps/plugins/SOURCES b/apps/plugins/SOURCES index f396729..f00ac71 100644 --- a/apps/plugins/SOURCES +++ b/apps/plugins/SOURCES @@ -55,9 +55,7 @@ brickmania.c calculator.c chip8.c demystify.c -#ifndef SANSA_E200 jewels.c -#endif minesweeper.c oscilloscope.c pong.c @@ -72,7 +70,7 @@ starfield.c video.c #endif vu_meter.c -#if !defined(IRIVER_H10_5GB) && !defined(SANSA_E200) +#if !defined(IRIVER_H10_5GB) wormlet.c #endif @@ -95,9 +93,7 @@ rockboy.c fireworks.c xobox.c #endif -#if !defined(SANSA_E200) spacerocks.c -#endif #if LCD_DEPTH >= 16 rockpaint.c #endif diff --git a/apps/plugins/SUBDIRS b/apps/plugins/SUBDIRS index 686c467..aff4a21 100644 --- a/apps/plugins/SUBDIRS +++ b/apps/plugins/SUBDIRS @@ -8,7 +8,8 @@ (CONFIG_KEYPAD == IRIVER_H300_PAD) || \ defined(IPOD_COLOR) || \ defined(IPOD_VIDEO) || \ - defined(TOSHIBA_GIGABEAT_F) + defined(TOSHIBA_GIGABEAT_F) || \ + defined(SANSA_E200) rockboy #endif diff --git a/apps/plugins/bitmaps/native/SOURCES b/apps/plugins/bitmaps/native/SOURCES index 568597c..b98377e 100644 --- a/apps/plugins/bitmaps/native/SOURCES +++ b/apps/plugins/bitmaps/native/SOURCES @@ -66,6 +66,8 @@ jewels.160x128x16.bmp jewels.160x128x16.bmp #elif (LCD_WIDTH == 220) && (LCD_HEIGHT == 176) jewels.220x176x16.bmp +#elif (LCD_WIDTH == 176) && (LCD_HEIGHT == 220) +jewels.220x176x16.bmp #elif (LCD_WIDTH == 240) && (LCD_HEIGHT == 320) jewels.320x240x16.bmp #elif (LCD_WIDTH == 320) && (LCD_HEIGHT == 240) @@ -254,7 +256,11 @@ sudoku_normal.320x240x16.bmp sudoku_inverse.320x240x16.bmp #endif #else -#if (LCD_WIDTH >= 240) && (LCD_HEIGHT >= 320) && (LCD_DEPTH == 16) +#if ((LCD_WIDTH == 176) && (LCD_HEIGHT == 220) && (LCD_DEPTH == 16)) +sudoku_start.220x176x16.bmp +sudoku_normal.220x176x16.bmp +sudoku_inverse.220x176x16.bmp +#elif (LCD_WIDTH >= 240) && (LCD_HEIGHT >= 320) && (LCD_DEPTH == 16) sudoku_start.320x240x16.bmp sudoku_normal.320x240x16.bmp sudoku_inverse.320x240x16.bmp diff --git a/apps/plugins/jewels.c b/apps/plugins/jewels.c index ba74879..d0bf1af 100644 --- a/apps/plugins/jewels.c +++ b/apps/plugins/jewels.c @@ -123,7 +123,8 @@ PLUGIN_HEADER #define NUM_SCORES 10 /* use 22x22 tiles (H300, iPod Color) */ -#elif ((LCD_HEIGHT == 176) && (LCD_WIDTH == 220)) +#elif ((LCD_HEIGHT == 176) && (LCD_WIDTH == 220)) || \ + ((LCD_HEIGHT == 220) && (LCD_WIDTH == 176)) #define TILE_WIDTH 22 #define TILE_HEIGHT 22 #define YOFS 0 @@ -1306,6 +1307,29 @@ 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, "A to cancel"); +#elif CONFIG_KEYPAD == SANSA_E200_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"); + rb->lcd_puts(0, 5, "same type."); + rb->lcd_puts(0, 7, "Controls:"); + rb->lcd_puts(0, 8, "Directions to move"); + 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 == IRIVER_H10_PAD + rb->lcd_puts(0, 2, "Swap pairs of jewels"); + rb->lcd_puts(0, 3, "to form connected"); + rb->lcd_puts(0, 4, "segments of three or "); + rb->lcd_puts(0, 5, "more of the"); + rb->lcd_puts(0, 6, "same type."); + rb->lcd_puts(0, 8, "Controls:"); + rb->lcd_puts(0, 9, "Directions or scroll to move"); + rb->lcd_puts(0, 10, "PLAY to select"); + rb->lcd_puts(0, 11, "Long PLAY for menu"); + rb->lcd_puts(0, 12, "POWER to cancel"); +#else + #warning: missing help text. #endif rb->lcd_update(); while(true) { diff --git a/apps/plugins/rockboy/rockboy.c b/apps/plugins/rockboy/rockboy.c index cce0f8c..d7dd4d8 100644 --- a/apps/plugins/rockboy/rockboy.c +++ b/apps/plugins/rockboy/rockboy.c @@ -129,6 +129,13 @@ void setoptions (void) options.START=BUTTON_POWER; options.SELECT=BUTTON_SELECT; options.MENU=BUTTON_MENU; + +#elif CONFIG_KEYPAD == SANSA_E200_PAD + options.A=BUTTON_SELECT; + options.B=BUTTON_REC; + options.START=BUTTON_SCROLL_UP; + options.SELECT=BUTTON_SCROLL_DOWN; + options.MENU=BUTTON_POWER; #endif options.maxskip=4; diff --git a/apps/plugins/rockboy/sys_rockbox.c b/apps/plugins/rockboy/sys_rockbox.c index 431fe13..fb11816 100644 --- a/apps/plugins/rockboy/sys_rockbox.c +++ b/apps/plugins/rockboy/sys_rockbox.c @@ -181,7 +181,8 @@ void ev_poll(void) #if (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ (CONFIG_KEYPAD == IRIVER_H300_PAD) || \ (CONFIG_KEYPAD == IPOD_4G_PAD) || \ - (CONFIG_KEYPAD == GIGABEAT_PAD) + (CONFIG_KEYPAD == GIGABEAT_PAD) || \ + (CONFIG_KEYPAD == SANSA_E200_PAD) #ifdef HAVE_WHEEL_POSITION rb->wheel_send_events(true); #endif diff --git a/apps/plugins/spacerocks.c b/apps/plugins/spacerocks.c index 0143af9..879a569 100644 --- a/apps/plugins/spacerocks.c +++ b/apps/plugins/spacerocks.c @@ -120,17 +120,17 @@ static struct plugin_api* rb; /* global api struct pointer */ #define AST_FIRE_REP BUTTON_SELECT | BUTTON_REPEAT #elif (CONFIG_KEYPAD == SANSA_E200_PAD) -#define AST_PAUSE BUTTON_SELECT +#define AST_PAUSE BUTTON_REC #define AST_QUIT BUTTON_POWER -#define AST_THRUST_REP BUTTON_UP | BUTTON_RIGHT +#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_RIGHT +#define AST_LEFT_REP (BUTTON_LEFT | BUTTON_REPEAT) #define AST_RIGHT BUTTON_RIGHT -#define AST_RIGHT_REP (BUTTON_RIGHT | BUTTON_RIGHT) +#define AST_RIGHT_REP (BUTTON_RIGHT | BUTTON_REPEAT) #define AST_FIRE BUTTON_SELECT -#define AST_FIRE_REP BUTTON_SELECT | BUTTON_RIGHT +#define AST_FIRE_REP (BUTTON_SELECT | BUTTON_REPEAT) #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) #define AST_PAUSE BUTTON_PLAY @@ -161,7 +161,8 @@ static struct plugin_api* rb; /* global api struct pointer */ (CONFIG_KEYPAD == IPOD_4G_PAD) || \ (CONFIG_KEYPAD == GIGABEAT_PAD)|| \ (CONFIG_KEYPAD == ARCHOS_AV300_PAD)|| \ - (CONFIG_KEYPAD == IRIVER_H10_PAD) + (CONFIG_KEYPAD == IRIVER_H10_PAD)|| \ + (CONFIG_KEYPAD == SANSA_E200_PAD) #define ENEMY_MISSILE_SURVIVAL_LENGTH 140 #define MISSILE_SURVIVAL_LENGTH 40 #define ASTEROID_SPEED 15 @@ -595,7 +596,7 @@ void create_trail_blaze(int colour, struct Point* position) yadd = ship.position.y; } - //give the point a random countdown timer, so they dissapears at different times + /* give the point a random countdown timer, so they dissapears at different times */ tpoint = trailPoints; n = NUM_TRAIL_POINTS; while(--n) @@ -603,9 +604,9 @@ void create_trail_blaze(int colour, struct Point* position) if(tpoint->alive <= 0 && numtoadd) { numtoadd--; - //take a random x point anywhere between - //bottom two points of ship. - tpoint->position.x = (ship.vertices[2].x + (rb->rand()%18000)-9000) + position->x; //ship.position.x; + /* take a random x point anywhere between bottom two points of ship. */ + /* ship.position.x; */ + tpoint->position.x = (ship.vertices[2].x + (rb->rand()%18000)-9000) + position->x; tpoint->position.y = (ship.vertices[2].y + (rb->rand()%18000)-9000) + position->y; switch(colour) @@ -643,9 +644,9 @@ void create_trail_blaze(int colour, struct Point* position) tpoint->dec = 4; break; } - //add a proportional bit to the x and y based on dx and dy + /* add a proportional bit to the x and y based on dx and dy */ - //give the points a speed based on direction of travel - i.e. opposite + /* give the points a speed based on direction of travel - i.e. opposite */ tpoint->position.dx += position->dx; tpoint->position.dy += position->dy; @@ -653,17 +654,17 @@ void create_trail_blaze(int colour, struct Point* position) } tpoint++; } - //find a space in the array of trail_points that is NULL or DEAD or whatever. - //and place this one here. + /* find a space in the array of trail_points that is NULL or DEAD or whatever. + and place this one here. */ } void draw_trail_blaze(void) { struct TrailPoint* tpoint; - //loop through, if alive then move and draw. - //when drawn, countdown it's timer. - //if zero kill it! + /* loop through, if alive then move and draw. + when drawn, countdown it's timer. + if zero kill it! */ tpoint = trailPoints; int n = NUM_TRAIL_POINTS; @@ -677,7 +678,7 @@ void draw_trail_blaze(void) move_point(&(tpoint->position)); } #ifdef HAVE_LCD_COLOR - //intensity = tpoint->alive/2; + /* intensity = tpoint->alive/2; */ if(tpoint->r>0)tpoint->r-=tpoint->dec; if(tpoint->g>0)tpoint->g-=tpoint->dec; if(tpoint->b>0)tpoint->b-=tpoint->dec; @@ -875,8 +876,8 @@ void draw_and_move_enemy(void) else { - //animate_and_draw_explosion(enemy.vertices, NUM_ENEMY_VERTICES, - // enemy_x, enemy.position.y/SCALE); + /* animate_and_draw_explosion(enemy.vertices, NUM_ENEMY_VERTICES, + enemy_x, enemy.position.y/SCALE); */ if(game_state != PAUSE_MODE) { enemy.explode_countdown--; @@ -1002,7 +1003,7 @@ bool is_point_within_enemy(struct Point* point) current_score += 5; /*enemy_missile.survived = 0;*/ enemy.explode_countdown = EXPLOSION_LENGTH; - // initialise_explosion(enemy.vertices, NUM_ENEMY_VERTICES); + /* initialise_explosion(enemy.vertices, NUM_ENEMY_VERTICES); */ create_trail_blaze(ENEMY_EXPLOSION_COLOUR, &enemy.position); return true; } @@ -1092,7 +1093,7 @@ void check_collisions(void) { /*blow up ship*/ ship.explode_countdown = EXPLOSION_LENGTH; - // initialise_explosion(ship.vertices, NUM_SHIP_VERTICES); + /* initialise_explosion(ship.vertices, NUM_SHIP_VERTICES); */ create_trail_blaze(SHIP_EXPLOSION_COLOUR, &ship.position); } @@ -1130,7 +1131,7 @@ void check_collisions(void) if(is_point_within_enemy(&ship.position)) { ship.explode_countdown = EXPLOSION_LENGTH; - //initialise_explosion(ship.vertices, NUM_SHIP_VERTICES); + /* initialise_explosion(ship.vertices, NUM_SHIP_VERTICES); */ create_trail_blaze(SHIP_EXPLOSION_COLOUR, &ship.position); create_trail_blaze(ENEMY_EXPLOSION_COLOUR, &enemy.position); } @@ -1157,7 +1158,7 @@ void check_collisions(void) enemy_missile.position.y - ship.position.y)) { ship.explode_countdown = EXPLOSION_LENGTH; - //initialise_explosion(ship.vertices, NUM_SHIP_VERTICES); + /* initialise_explosion(ship.vertices, NUM_SHIP_VERTICES); */ create_trail_blaze(SHIP_EXPLOSION_COLOUR, &ship.position); enemy_missile.survived = 0; enemy_missile.position.x = enemy_missile.position.y = 0; @@ -1304,7 +1305,11 @@ void draw_lives(void) { int n; int px = (LCD_WIDTH - num_lives*4 - 1); + #if(LARGE_LCD) + int py = (LCD_HEIGHT-6); + #else int py = (LCD_HEIGHT-4); + #endif SET_FG(COL_PLAYER); @@ -1312,7 +1317,11 @@ void draw_lives(void) while(--n) { draw_polygon(lives_points, px, py, NUM_SHIP_VERTICES); + #if(LARGE_LCD) + px += 8; + #else px += 6; + #endif } } @@ -1402,9 +1411,9 @@ void initialise_asteroid(struct Asteroid* asteroid, enum asteroid_type type) asteroid->radius += 6*SCALE; if(asteroid->type == SMALL) - asteroid->radius /= 3;//2 + asteroid->radius /= 3;/*2*/ else if(asteroid->type == LARGE) - asteroid->radius += 3*SCALE;//2 + asteroid->radius += 3*SCALE;/*2*/ b = true; while(b) { @@ -1520,9 +1529,9 @@ void draw_and_move_ship(void) } else { - // animate_and_draw_explosion(ship.vertices, NUM_SHIP_VERTICES, - // ship.position.x/SCALE, - // ship.position.y/SCALE); + /* animate_and_draw_explosion(ship.vertices, NUM_SHIP_VERTICES, + ship.position.x/SCALE, + ship.position.y/SCALE); */ if(game_state != PAUSE_MODE) { ship.explode_countdown--; @@ -1550,8 +1559,9 @@ void thrust_ship(void) { ship.position.dx += ( ship.vertices[0].x - ship.vertices[2].x )/20; ship.position.dy += ( ship.vertices[0].y - ship.vertices[2].y )/20; - /*if dx and dy are below a certain threshold, then set 'em to 0*/ - //but to do this we need to ascertain if the spacehip as moved on screen for more than a certain amount. + /*if dx and dy are below a certain threshold, then set 'em to 0 + but to do this we need to ascertain if the spacehip as moved on screen + for more than a certain amount. */ create_trail_blaze(THRUST_COLOUR, &ship.position); } @@ -1620,10 +1630,10 @@ void draw_and_move_asteroids(void) } else if(asteroid->explode_countdown) { - // animate_and_draw_explosion(asteroid->vertices, - // NUM_ASTEROID_VERTICES, - // asteroid->position.x/SCALE, - // asteroid->position.y/SCALE); + /* animate_and_draw_explosion(asteroid->vertices, + NUM_ASTEROID_VERTICES, + asteroid->position.x/SCALE, + asteroid->position.y/SCALE); */ asteroid->explode_countdown--; } } @@ -1655,7 +1665,8 @@ void create_stars(void) } - //give the point a random countdown timer, so they dissapears at different times + /* give the point a random countdown timer, so they dissapears at different + times */ tpoint = trailPoints; n = NUM_TRAIL_POINTS; while(--n) diff --git a/apps/plugins/sudoku/SOURCES b/apps/plugins/sudoku/SOURCES index 8b344bd..7cce555 100644 --- a/apps/plugins/sudoku/SOURCES +++ b/apps/plugins/sudoku/SOURCES @@ -1,5 +1,3 @@ -#if !defined(SANSA_E200) sudoku.c generator.c templates.c -#endif diff --git a/apps/plugins/sudoku/sudoku.c b/apps/plugins/sudoku/sudoku.c index 9a3a147..218a544 100644 --- a/apps/plugins/sudoku/sudoku.c +++ b/apps/plugins/sudoku/sudoku.c @@ -129,8 +129,7 @@ static const char default_game[9][9] = #define CELL_WIDTH 12 #define CELL_HEIGHT 12 -#elif ((LCD_HEIGHT==176) && (LCD_WIDTH==220)) || \ - ((LCD_HEIGHT==220) && (LCD_WIDTH==176)) +#elif ((LCD_HEIGHT==176) && (LCD_WIDTH==220)) /* Iriver h300, iPod Color/Photo - 220x176, 9 cells @ 16x16 with 14 border lines */ /* Internal dimensions of a cell */ @@ -151,7 +150,14 @@ static const char default_game[9][9] = #else /* Vertical layout, scratchpad at the bottom */ #define VERTICAL_LAYOUT -#if (LCD_HEIGHT>=320) && (LCD_WIDTH>=240) +#if ((LCD_HEIGHT==220) && (LCD_WIDTH==176)) +/* e200, 9 cells @ 16x16 with 14 border lines */ + +/* Internal dimensions of a cell */ +#define CELL_WIDTH 16 +#define CELL_HEIGHT 16 + +#elif (LCD_HEIGHT>=320) && (LCD_WIDTH>=240) /* Gigabeat - 240x320, 9 cells @ 24x24 with 14 border lines */ /* Internal dimensions of a cell */ diff --git a/apps/plugins/sudoku/sudoku.h b/apps/plugins/sudoku/sudoku.h index 2628e32..04923be 100644 --- a/apps/plugins/sudoku/sudoku.h +++ b/apps/plugins/sudoku/sudoku.h @@ -116,8 +116,9 @@ #define SUDOKU_BUTTON_DOWN BUTTON_DOWN #define SUDOKU_BUTTON_LEFT BUTTON_LEFT #define SUDOKU_BUTTON_RIGHT BUTTON_RIGHT -#define SUDOKU_BUTTON_TOGGLE BUTTON_SELECT -#define SUDOKU_BUTTON_MENU (BUTTON_SELECT|BUTTON_REPEAT) +#define SUDOKU_BUTTON_TOGGLEBACK BUTTON_SCROLL_UP +#define SUDOKU_BUTTON_TOGGLE BUTTON_SCROLL_DOWN +#define SUDOKU_BUTTON_MENU BUTTON_SELECT #define SUDOKU_BUTTON_POSSIBLE BUTTON_REC #elif diff --git a/apps/plugins/wormlet.c b/apps/plugins/wormlet.c index 5afefb7..b301a8a 100644 --- a/apps/plugins/wormlet.c +++ b/apps/plugins/wormlet.c @@ -200,6 +200,11 @@ PLUGIN_HEADER #define ARGH_SIZE 6 #define SPEED 4 #define MAX_WORM_SEGMENTS 512 +#elif (LCD_WIDTH == 176) && (LCD_HEIGHT == 220) +#define FOOD_SIZE 5 +#define ARGH_SIZE 6 +#define SPEED 4 +#define MAX_WORM_SEGMENTS 512 #elif (LCD_WIDTH == 320) && (LCD_HEIGHT == 240) #define FOOD_SIZE 7 #define ARGH_SIZE 8 diff --git a/manual/plugins/images/ss-jewels-176x220x16.png b/manual/plugins/images/ss-jewels-176x220x16.png Binary files differnew file mode 100644 index 0000000..82ff8ff --- /dev/null +++ b/manual/plugins/images/ss-jewels-176x220x16.png diff --git a/manual/plugins/images/ss-rockboy-176x220x16.png b/manual/plugins/images/ss-rockboy-176x220x16.png Binary files differnew file mode 100644 index 0000000..6996b06 --- /dev/null +++ b/manual/plugins/images/ss-rockboy-176x220x16.png diff --git a/manual/plugins/images/ss-spacerocks-176x220x16.png b/manual/plugins/images/ss-spacerocks-176x220x16.png Binary files differnew file mode 100644 index 0000000..50e91a3 --- /dev/null +++ b/manual/plugins/images/ss-spacerocks-176x220x16.png diff --git a/manual/plugins/images/ss-sudoku-176x220x16.png b/manual/plugins/images/ss-sudoku-176x220x16.png Binary files differnew file mode 100644 index 0000000..83d1f12 --- /dev/null +++ b/manual/plugins/images/ss-sudoku-176x220x16.png diff --git a/manual/plugins/images/ss-wormlet-176x220x16.png b/manual/plugins/images/ss-wormlet-176x220x16.png Binary files differnew file mode 100644 index 0000000..4cc3a5e --- /dev/null +++ b/manual/plugins/images/ss-wormlet-176x220x16.png diff --git a/manual/plugins/jewels.tex b/manual/plugins/jewels.tex index b8b5668..fa1dc17 100644 --- a/manual/plugins/jewels.tex +++ b/manual/plugins/jewels.tex @@ -63,6 +63,20 @@ after every one hundred points and randomly clears several jewels. & Show the in-game menu\\ \end{btnmap} \end{table} - To exit the game, bring up the in-game menu and select \setting{Quit}\\ } +\opt{SANSA_E200_PAD}{ + \begin{table} + \begin{btnmap}{}{} + \ButtonLeft, \ButtonRight, \ButtonUp\ and \ButtonDown + & Move the cursor around the jewels \\ + \ButtonSelect + & Select a jewel \\ + Hold \ButtonSelect + & Show the in-game menu\\ + \ButtonPower + & Exit\\ + \end{btnmap} + \end{table} +} + diff --git a/manual/plugins/main.tex b/manual/plugins/main.tex index acb9bdf..a92c3e2 100644 --- a/manual/plugins/main.tex +++ b/manual/plugins/main.tex @@ -15,7 +15,7 @@ text files, chip8 games), or from the \setting{Open with} option on the \section{Games} \opt{HAVE_LCD_BITMAP} {See also the Chip{}-8 emulator in \reference{ref:Chip8emulator} - \opt{recorder,recorderv2fm,h1xx,h300,ipodcolor,ipodvideo} + \opt{recorder,recorderv2fm,h1xx,h300,ipodcolor,ipodvideo,sansa} {and Rockboy in \reference{ref:Rockboy}}.} \opt{HAVE_LCD_BITMAP}{\input{plugins/brickmania.tex}} @@ -58,7 +58,7 @@ text files, chip8 games), or from the \setting{Open with} option on the \opt{recorder,recorderv2fm,ondio,h1xx,ipod,HAVE_LCD_COLOR}{\input{plugins/sudoku.tex}} -\opt{recorder,recorderv2fm,ondio,h1xx,h300,IPOD_4G_PAD,IPOD_3G_PAD}{\input{plugins/wormlet.tex}} +\opt{recorder,recorderv2fm,ondio,h1xx,h300,IPOD_4G_PAD,IPOD_3G_PAD,SANSA_E200_PAD}{\input{plugins/wormlet.tex}} \opt{SWCODEC}{\input{plugins/xobox.tex}} @@ -105,7 +105,7 @@ the associated file. Viewers are stored in the \opt{recorder,recorderv2fm,ondio}{\input{plugins/rockbox_flash.tex}} -\opt{recorder,recorderv2fm,h1xx,h300,ipodcolor,ipodvideo}{\input{plugins/rockboy.tex}} +\opt{recorder,recorderv2fm,h1xx,h300,ipodcolor,ipodvideo,sansa}{\input{plugins/rockboy.tex}} {\input{plugins/search.tex}} diff --git a/manual/plugins/rockboy.tex b/manual/plugins/rockboy.tex index 9ed04f7..90e8d40 100644 --- a/manual/plugins/rockboy.tex +++ b/manual/plugins/rockboy.tex @@ -7,29 +7,34 @@ the gnuboy emulator. To start a game open a ROM file saved as \fname{.gb} or \textbf{Default keys} \begin{table} \begin{btnmap}{}{} - \opt{RECORDER_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD}{ + \opt{RECORDER_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,SANSA_E200_PAD}{ \opt{RECORDER_PAD}{\ButtonFOne} \opt{IRIVER_H100_PAD}{\ButtonOn} \opt{IRIVER_H300_PAD}{\ButtonRec} + \opt{SANSA_E200_PAD}{\ButtonSelect} & A button\\} - \opt{RECORDER_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD}{ + \opt{RECORDER_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,SANSA_E200_PAD}{ \opt{RECORDER_PAD}{\ButtonFTwo} \opt{IRIVER_H100_PAD}{\ButtonOff} \opt{IRIVER_H300_PAD}{\ButtonMode} + \opt{SANSA_E200_PAD}{\ButtonRec} & B button\\} \opt{RECORDER_PAD}{\ButtonFThree} \opt{IRIVER_H100_PAD}{\ButtonRec} \opt{IRIVER_H300_PAD}{\ButtonOn} \opt{IPOD_4G_PAD}{\ButtonSelect} + \opt{SANSA_E200_PAD}{\ButtonScrollUp} & Start\\ - \opt{RECORDER_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD}{ + \opt{RECORDER_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,SANSA_E200_PAD}{ \opt{RECORDER_PAD}{\ButtonPlay} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonSelect} + \opt{SANSA_E200_PAD}{\ButtonScrollDown} & Select\\} \opt{RECORDER_PAD}{\ButtonOn & Cycle display scaling modes\\} \opt{RECORDER_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD}{\ButtonMode} \opt{IPOD_4G_PAD}{Hold \ButtonSelect} + \opt{SANSA_E200_PAD}{\ButtonPower} & Open Rockboy menu\\ \end{btnmap} \end{table} diff --git a/manual/plugins/spacerocks.tex b/manual/plugins/spacerocks.tex index f3eb55f..2eb8870 100644 --- a/manual/plugins/spacerocks.tex +++ b/manual/plugins/spacerocks.tex @@ -32,7 +32,7 @@ UFO will appear -- shoot this for extra points. % \opt{RECORDER_PAD}{\ButtonOn} \opt{ONDIO_PAD}{\ButtonMenu+\ButtonOff} - \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonRec} + \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,SANSA_E200_PAD}{\ButtonRec} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonPlay} \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD}{\ButtonPlay} & Pause game\\ diff --git a/manual/plugins/wormlet.tex b/manual/plugins/wormlet.tex index ef64e3d..d8d78d5 100644 --- a/manual/plugins/wormlet.tex +++ b/manual/plugins/wormlet.tex @@ -66,16 +66,16 @@ Game controls:} \renewcommand{\arraystretch}{1.0} } -\opt{ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD,IPOD_4G_PAD}{ +\opt{ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD,IPOD_4G_PAD,SANSA_E200_PAD}{ \begin{table} \begin{btnmap}{}{} - \opt{ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IPOD_4G_PAD,IAUDIO_X5_PAD} + \opt{ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IPOD_4G_PAD,IAUDIO_X5_PAD,SANSA_E200_PAD} {\ButtonLeft} & Turn left\\ - \opt{ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IPOD_4G_PAD,IAUDIO_X5_PAD} + \opt{ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IPOD_4G_PAD,IAUDIO_X5_PAD,SANSA_E200_PAD} {\ButtonRight} & Turn right\\ - \opt{ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD}{\ButtonUp} + \opt{ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD,SANSA_E200_PAD}{\ButtonUp} \opt{IPOD_4G_PAD}{\ButtonMenu} & Turn Up\\ - \opt{ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD}{\ButtonLeft} + \opt{ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD,SANSA_E200_PAD}{\ButtonLeft} \opt{IPOD_4G_PAD}{\ButtonPlay} & Turn Down\\ \end{btnmap} \end{table} @@ -115,11 +115,13 @@ The game is over when all worms are dead. The longest worm wins the game. \item [Pause the game.] Press -\opt{RECORDER_PAD}{\ButtonPlay}\opt{ONDIO_PAD}{\ButtonMenu} -\opt{IRIVER_H100_PAD,IRIVER_H300_PAD,IPOD_4G_PAD}{\ButtonSelect} +\opt{RECORDER_PAD,IAUDIO_X5_PAD}{\ButtonPlay} +\opt{ONDIO_PAD}{\ButtonMenu} +\opt{IRIVER_H100_PAD,IRIVER_H300_PAD,IPOD_4G_PAD,SANSA_E200_PAD}{\ButtonSelect} to pause the game. Press -\opt{RECORDER_PAD}{\ButtonPlay}\opt{ONDIO_PAD}{\ButtonMenu} -\opt{IRIVER_H100_PAD,IRIVER_H300_PAD,IPOD_4G_PAD}{\ButtonSelect} +\opt{RECORDER_PAD,IAUDIO_X5_PAD}{\ButtonPlay} +\opt{ONDIO_PAD}{\ButtonMenu} +\opt{IRIVER_H100_PAD,IRIVER_H300_PAD,IPOD_4G_PAD,SANSA_E200_PAD}{\ButtonSelect} again to resume the game. \item[Stop the game.] @@ -128,20 +130,24 @@ There are two ways to stop a running game. \begin{itemize} \item If you want to quit Wormlet entirely simply hit \opt{RECORDER_PAD,ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} -\opt{IPOD_4G_PAD}{\ButtonMenu+\ButtonSelect}. +\opt{IPOD_4G_PAD}{\ButtonMenu+\ButtonSelect} +\opt{IAUDIO_X5_PAD,SANSA_E200_PAD}{\ButtonPower}. The game will stop immediately and you will return to the game menu. \item If you want to stop the game and still see the screen hit \opt{RECORDER_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOn} \opt{ONDIO_PAD}{\ButtonOff+\ButtonMenu} -\opt{IPOD_4G_PAD}{\ButtonSelect+ButtonPlay}. +\opt{IPOD_4G_PAD}{\ButtonSelect+ButtonPlay} +\opt{IAUDIO_X5_PAD,SANSA_E200_PAD}{\ButtonRec}. This freezes the game. If you hit \opt{RECORDER_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOn} \opt{ONDIO_PAD}{\ButtonOff+\ButtonMenu} -\opt{IPOD_4G_PAD}{\ButtonSelect+ButtonPlay}. +\opt{IPOD_4G_PAD}{\ButtonSelect+\ButtonPlay} +\opt{IAUDIO_X5_PAD,SANSA_E200_PAD}{\ButtonRec} button again a new game starts with the same configuration. To return to the games menu you can hit \opt{RECORDER_PAD,ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} -\opt{IPOD_4G_PAD}{\ButtonMenu+\ButtonSelect}. A stopped game can not be resumed. +\opt{IPOD_4G_PAD}{\ButtonMenu+\ButtonSelect} +\opt{IAUDIO_X5_PAD,SANSA_E200_PAD}{\ButtonPower}. A stopped game can not be resumed. \end{itemize} \end{description} |