diff options
Diffstat (limited to 'bootloader/nwz_linux.c')
-rw-r--r-- | bootloader/nwz_linux.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/bootloader/nwz_linux.c b/bootloader/nwz_linux.c index 7fe635bf76..cac9909d2d 100644 --- a/bootloader/nwz_linux.c +++ b/bootloader/nwz_linux.c | |||
@@ -63,6 +63,15 @@ | |||
63 | #error toolsicon has the wrong resolution | 63 | #error toolsicon has the wrong resolution |
64 | #endif | 64 | #endif |
65 | 65 | ||
66 | /* the A860 does not have left/right/up/down but it has rew/ff so pretend we | ||
67 | * always have rew/ff */ | ||
68 | #ifndef BUTTON_REW | ||
69 | #define BUTTON_REW BUTTON_LEFT | ||
70 | #endif | ||
71 | #ifndef BUTTON_FF | ||
72 | #define BUTTON_FF BUTTON_RIGHT | ||
73 | #endif | ||
74 | |||
66 | /* buffer for Sony image, filled from NVP */ | 75 | /* buffer for Sony image, filled from NVP */ |
67 | unsigned short sonyicon[ICON_WIDTH * ICON_HEIGHT]; | 76 | unsigned short sonyicon[ICON_WIDTH * ICON_HEIGHT]; |
68 | const struct bitmap bm_sonyicon = | 77 | const struct bitmap bm_sonyicon = |
@@ -257,9 +266,9 @@ enum boot_mode get_boot_mode(void) | |||
257 | if(btn == BUTTON_PLAY) | 266 | if(btn == BUTTON_PLAY) |
258 | break; | 267 | break; |
259 | /* left/right/up/down: change mode */ | 268 | /* left/right/up/down: change mode */ |
260 | if(btn == BUTTON_LEFT || btn == BUTTON_DOWN) | 269 | if(btn == BUTTON_LEFT || btn == BUTTON_DOWN || btn == BUTTON_REW) |
261 | mode = (mode + BOOT_COUNT - 1) % BOOT_COUNT; | 270 | mode = (mode + BOOT_COUNT - 1) % BOOT_COUNT; |
262 | if(btn == BUTTON_RIGHT || btn == BUTTON_UP) | 271 | if(btn == BUTTON_RIGHT || btn == BUTTON_UP || btn == BUTTON_FF) |
263 | mode = (mode + 1) % BOOT_COUNT; | 272 | mode = (mode + 1) % BOOT_COUNT; |
264 | } | 273 | } |
265 | 274 | ||
@@ -340,9 +349,9 @@ int choice_screen(const char *title, bool center, int nr_choices, const char *ch | |||
340 | return btn == BUTTON_PLAY ? choice : -1; | 349 | return btn == BUTTON_PLAY ? choice : -1; |
341 | } | 350 | } |
342 | /* left/right/up/down: change mode */ | 351 | /* left/right/up/down: change mode */ |
343 | if(btn == BUTTON_LEFT || btn == BUTTON_UP) | 352 | if(btn == BUTTON_LEFT || btn == BUTTON_UP || btn == BUTTON_REW) |
344 | choice = (choice + nr_choices - 1) % nr_choices; | 353 | choice = (choice + nr_choices - 1) % nr_choices; |
345 | if(btn == BUTTON_RIGHT || btn == BUTTON_DOWN) | 354 | if(btn == BUTTON_RIGHT || btn == BUTTON_DOWN || btn == BUTTON_FF) |
346 | choice = (choice + 1) % nr_choices; | 355 | choice = (choice + 1) % nr_choices; |
347 | } | 356 | } |
348 | } | 357 | } |