summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/bookmark.h5
-rw-r--r--apps/codecs/SOURCES2
-rw-r--r--apps/debug_menu.c6
-rw-r--r--apps/gui/gwps.h19
-rw-r--r--apps/gui/list.h4
-rw-r--r--apps/gui/select.h8
-rw-r--r--apps/gui/yesno.h3
-rw-r--r--apps/menu.h8
-rw-r--r--apps/plugins/Makefile2
-rw-r--r--apps/plugins/SOURCES2
-rw-r--r--apps/plugins/battery_test.c2
-rw-r--r--apps/plugins/chessclock.c10
-rw-r--r--apps/plugins/cube.c12
-rw-r--r--apps/plugins/databox/databox.c3
-rw-r--r--apps/plugins/dict.c2
-rw-r--r--apps/plugins/jewels.c6
-rw-r--r--apps/plugins/logo.c6
-rw-r--r--apps/plugins/metronome.c9
-rw-r--r--apps/plugins/mosaique.c6
-rw-r--r--apps/plugins/plugin.lds14
-rw-r--r--apps/plugins/rockboy/sys_rockbox.c7
-rw-r--r--apps/plugins/snow.c2
-rw-r--r--apps/plugins/stats.c2
-rw-r--r--apps/plugins/stopwatch.c7
-rw-r--r--apps/plugins/viewer.c11
-rw-r--r--apps/recorder/keyboard.c14
-rw-r--r--apps/settings.h6
-rw-r--r--apps/tree.h14
28 files changed, 187 insertions, 5 deletions
diff --git a/apps/bookmark.h b/apps/bookmark.h
index dff4473167..284c0ceffb 100644
--- a/apps/bookmark.h
+++ b/apps/bookmark.h
@@ -38,6 +38,11 @@
38#define BOOKMARK_DELETE (BUTTON_RIGHT | BUTTON_REPEAT) 38#define BOOKMARK_DELETE (BUTTON_RIGHT | BUTTON_REPEAT)
39#define BOOKMARK_DOWN BUTTON_SCROLL_FWD 39#define BOOKMARK_DOWN BUTTON_SCROLL_FWD
40 40
41#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
42#define BOOKMARK_SELECT BUTTON_SELECT
43#define BOOKMARK_DELETE (BUTTON_PLAY | BUTTON_SELECT)
44#define BOOKMARK_DOWN BUTTON_DOWN
45
41#else /* player, recorder, gmini */ 46#else /* player, recorder, gmini */
42#define BOOKMARK_SELECT BUTTON_PLAY 47#define BOOKMARK_SELECT BUTTON_PLAY
43#define BOOKMARK_DELETE (BUTTON_ON | BUTTON_PLAY) 48#define BOOKMARK_DELETE (BUTTON_ON | BUTTON_PLAY)
diff --git a/apps/codecs/SOURCES b/apps/codecs/SOURCES
index 69d925248b..911ee3b705 100644
--- a/apps/codecs/SOURCES
+++ b/apps/codecs/SOURCES
@@ -7,6 +7,8 @@ a52.c
7mpc.c 7mpc.c
8wavpack.c 8wavpack.c
9alac.c 9alac.c
10#if MEMORYSIZE > 1
10aac.c 11aac.c
12#endif
11shorten.c 13shorten.c
12#endif 14#endif
diff --git a/apps/debug_menu.c b/apps/debug_menu.c
index 4bb2cfbe75..69c0e2fceb 100644
--- a/apps/debug_menu.c
+++ b/apps/debug_menu.c
@@ -359,6 +359,12 @@ bool dbg_flash_id(unsigned* p_manufacturer, unsigned* p_device,
359 (void)p_device; 359 (void)p_device;
360 (void)addr1; 360 (void)addr1;
361 (void)addr2; 361 (void)addr2;
362#elif CONFIG_CPU == PNX0101
363 /* TODO: Implement for iFP7xx */
364 (void)p_manufacturer;
365 (void)p_device;
366 (void)addr1;
367 (void)addr2;
362#else 368#else
363 unsigned not_manu, not_id; /* read values before switching to ID mode */ 369 unsigned not_manu, not_id; /* read values before switching to ID mode */
364 unsigned manu, id; /* read values when in ID mode */ 370 unsigned manu, id; /* read values when in ID mode */
diff --git a/apps/gui/gwps.h b/apps/gui/gwps.h
index 610c3021bf..b6d06a645a 100644
--- a/apps/gui/gwps.h
+++ b/apps/gui/gwps.h
@@ -191,6 +191,25 @@
191#define WPS_EXIT (BUTTON_PLAY | BUTTON_REPEAT) 191#define WPS_EXIT (BUTTON_PLAY | BUTTON_REPEAT)
192#define WPS_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) 192#define WPS_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT)
193 193
194#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
195
196/* TODO: Check WPS button assignments */
197
198#define WPS_NEXT (BUTTON_RIGHT | BUTTON_REL)
199#define WPS_NEXT_PRE BUTTON_RIGHT
200#define WPS_PREV (BUTTON_LEFT | BUTTON_REL)
201#define WPS_PREV_PRE BUTTON_LEFT
202#define WPS_FFWD (BUTTON_RIGHT | BUTTON_REPEAT)
203#define WPS_REW (BUTTON_LEFT | BUTTON_REPEAT)
204#define WPS_INCVOL BUTTON_UP
205#define WPS_DECVOL BUTTON_DOWN
206#define WPS_PAUSE BUTTON_PLAY
207/* #define WPS_MENU iFP7xx can't have both main menu and context menu in wps */
208#define WPS_BROWSE (BUTTON_SELECT | BUTTON_REL)
209#define WPS_BROWSE_PRE BUTTON_SELECT
210#define WPS_EXIT (BUTTON_PLAY | BUTTON_REPEAT)
211#define WPS_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT)
212
194#endif 213#endif
195 214
196/* constants used in line_type and as refresh_mode for wps_refresh */ 215/* constants used in line_type and as refresh_mode for wps_refresh */
diff --git a/apps/gui/list.h b/apps/gui/list.h
index 3ae1b80dc2..4f02693127 100644
--- a/apps/gui/list.h
+++ b/apps/gui/list.h
@@ -69,6 +69,10 @@
69#define LIST_NEXT BUTTON_SCROLL_FWD 69#define LIST_NEXT BUTTON_SCROLL_FWD
70#define LIST_PREV BUTTON_SCROLL_BACK 70#define LIST_PREV BUTTON_SCROLL_BACK
71 71
72#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
73#define LIST_NEXT BUTTON_DOWN
74#define LIST_PREV BUTTON_UP
75
72#elif CONFIG_KEYPAD == GMINI100_PAD 76#elif CONFIG_KEYPAD == GMINI100_PAD
73#define LIST_NEXT BUTTON_DOWN 77#define LIST_NEXT BUTTON_DOWN
74#define LIST_PREV BUTTON_UP 78#define LIST_PREV BUTTON_UP
diff --git a/apps/gui/select.h b/apps/gui/select.h
index b6a9afd55c..3f6dd1413b 100644
--- a/apps/gui/select.h
+++ b/apps/gui/select.h
@@ -61,6 +61,14 @@
61#define SELECT_OK2 BUTTON_RIGHT 61#define SELECT_OK2 BUTTON_RIGHT
62#define SELECT_CANCEL BUTTON_MENU 62#define SELECT_CANCEL BUTTON_MENU
63 63
64#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
65#define SELECT_INC BUTTON_UP
66#define SELECT_DEC BUTTON_DOWN
67#define SELECT_OK BUTTON_RIGHT
68#define SELECT_OK2 BUTTON_LEFT
69#define SELECT_CANCEL BUTTON_PLAY
70#define SELECT_CANCEL2 BUTTON_MODE
71
64#elif CONFIG_KEYPAD == ONDIO_PAD 72#elif CONFIG_KEYPAD == ONDIO_PAD
65#define SELECT_INC BUTTON_UP 73#define SELECT_INC BUTTON_UP
66#define SELECT_DEC BUTTON_DOWN 74#define SELECT_DEC BUTTON_DOWN
diff --git a/apps/gui/yesno.h b/apps/gui/yesno.h
index 5399c88391..98bf84f504 100644
--- a/apps/gui/yesno.h
+++ b/apps/gui/yesno.h
@@ -25,6 +25,9 @@
25 25
26#elif (CONFIG_KEYPAD == IPOD_4G_PAD) 26#elif (CONFIG_KEYPAD == IPOD_4G_PAD)
27#define YESNO_OK BUTTON_RIGHT 27#define YESNO_OK BUTTON_RIGHT
28
29#elif (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD)
30#define YESNO_OK BUTTON_RIGHT
28#endif 31#endif
29enum yesno_res 32enum yesno_res
30{ 33{
diff --git a/apps/menu.h b/apps/menu.h
index 2d5c036a34..143933d833 100644
--- a/apps/menu.h
+++ b/apps/menu.h
@@ -78,6 +78,14 @@
78#define MENU_EXIT_MENU BUTTON_MENU 78#define MENU_EXIT_MENU BUTTON_MENU
79#define MENU_ENTER BUTTON_RIGHT 79#define MENU_ENTER BUTTON_RIGHT
80 80
81#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
82
83#define MENU_NEXT BUTTON_DOWN
84#define MENU_PREV BUTTON_UP
85#define MENU_EXIT BUTTON_LEFT
86#define MENU_EXIT_MENU BUTTON_PLAY
87#define MENU_ENTER BUTTON_RIGHT
88
81#endif 89#endif
82 90
83struct menu_item { 91struct menu_item {
diff --git a/apps/plugins/Makefile b/apps/plugins/Makefile
index 98c66c6d46..45fa7a469d 100644
--- a/apps/plugins/Makefile
+++ b/apps/plugins/Makefile
@@ -43,8 +43,10 @@ SUBDIRS += searchengine databox
43 43
44#for any recorder and iRiver model 44#for any recorder and iRiver model
45ifneq (,$(strip $(foreach tgt,RECORDER IRIVER,$(findstring $(tgt),$(TARGET))))) 45ifneq (,$(strip $(foreach tgt,RECORDER IRIVER,$(findstring $(tgt),$(TARGET)))))
46ifneq (-DIRIVER_IFP7XX,$(TARGET))
46 SUBDIRS += rockboy 47 SUBDIRS += rockboy
47endif 48endif
49endif
48 50
49 51
50.PHONY: $(SUBDIRS) 52.PHONY: $(SUBDIRS)
diff --git a/apps/plugins/SOURCES b/apps/plugins/SOURCES
index 6742b88218..98ffcc2be8 100644
--- a/apps/plugins/SOURCES
+++ b/apps/plugins/SOURCES
@@ -18,6 +18,7 @@ viewer.c
18dict.c 18dict.c
19metronome.c 19metronome.c
20 20
21#ifndef IRIVER_IFP7XX_SERIES /* Temporarily disable plugin building for iFP7xx */
21#ifdef HAVE_LCD_BITMAP /* Recorder/Ondio models only */ 22#ifdef HAVE_LCD_BITMAP /* Recorder/Ondio models only */
22solitaire.c 23solitaire.c
23#ifndef HAVE_LCD_COLOR 24#ifndef HAVE_LCD_COLOR
@@ -89,4 +90,5 @@ wav2wv.c
89midi2wav.c 90midi2wav.c
90#else 91#else
91splitedit.c 92splitedit.c
93#endif /* iFP7xx */
92#endif 94#endif
diff --git a/apps/plugins/battery_test.c b/apps/plugins/battery_test.c
index b559ed53af..ac47b001f2 100644
--- a/apps/plugins/battery_test.c
+++ b/apps/plugins/battery_test.c
@@ -39,6 +39,8 @@
39#elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ 39#elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \
40 (CONFIG_KEYPAD == IRIVER_H300_PAD) 40 (CONFIG_KEYPAD == IRIVER_H300_PAD)
41#define BATTERY_TEST_QUIT BUTTON_OFF 41#define BATTERY_TEST_QUIT BUTTON_OFF
42#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
43#define BATTERY_TEST_QUIT BUTTON_PLAY
42#elif (CONFIG_KEYPAD == IPOD_4G_PAD) 44#elif (CONFIG_KEYPAD == IPOD_4G_PAD)
43#define BATTERY_TEST_QUIT BUTTON_MENU 45#define BATTERY_TEST_QUIT BUTTON_MENU
44#endif 46#endif
diff --git a/apps/plugins/chessclock.c b/apps/plugins/chessclock.c
index 3291f3e32e..18ba68014f 100644
--- a/apps/plugins/chessclock.c
+++ b/apps/plugins/chessclock.c
@@ -74,6 +74,16 @@
74#define CHC_SETTINGS_OK BUTTON_SELECT 74#define CHC_SETTINGS_OK BUTTON_SELECT
75#define CHC_SETTINGS_CANCEL BUTTON_MENU 75#define CHC_SETTINGS_CANCEL BUTTON_MENU
76 76
77#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
78#define CHC_QUIT BUTTON_PLAY
79#define CHC_STARTSTOP BUTTON_MODE
80#define CHC_RESET BUTTON_EQ
81#define CHC_MENU BUTTON_SELECT
82#define CHC_SETTINGS_INC BUTTON_RIGHT
83#define CHC_SETTINGS_DEC BUTTON_LEFT
84#define CHC_SETTINGS_OK BUTTON_SELECT
85#define CHC_SETTINGS_CANCEL BUTTON_PLAY
86
77#endif 87#endif
78 88
79 89
diff --git a/apps/plugins/cube.c b/apps/plugins/cube.c
index cebc36a016..e71d8b6e4e 100644
--- a/apps/plugins/cube.c
+++ b/apps/plugins/cube.c
@@ -92,6 +92,18 @@
92#define CUBE_PAUSE (BUTTON_PLAY | BUTTON_REL) 92#define CUBE_PAUSE (BUTTON_PLAY | BUTTON_REL)
93#define CUBE_HIGHSPEED (BUTTON_SELECT | BUTTON_PLAY) 93#define CUBE_HIGHSPEED (BUTTON_SELECT | BUTTON_PLAY)
94 94
95#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
96#define CUBE_QUIT BUTTON_PLAY
97#define CUBE_X_INC BUTTON_RIGHT
98#define CUBE_X_DEC BUTTON_LEFT
99#define CUBE_Y_INC BUTTON_UP
100#define CUBE_Y_DEC BUTTON_DOWN
101#define CUBE_Z_INC BUTTON_MODE
102#define CUBE_Z_DEC BUTTON_EQ
103#define CUBE_MODE (BUTTON_SELECT | BUTTON_REPEAT)
104#define CUBE_PAUSE (BUTTON_SELECT | BUTTON_REL)
105#define CUBE_HIGHSPEED (BUTTON_MODE | BUTTON_EQ) /* TODO: this is impossible */
106
95#endif 107#endif
96 108
97#ifdef HAVE_LCD_BITMAP 109#ifdef HAVE_LCD_BITMAP
diff --git a/apps/plugins/databox/databox.c b/apps/plugins/databox/databox.c
index d9b513c378..ebed139020 100644
--- a/apps/plugins/databox/databox.c
+++ b/apps/plugins/databox/databox.c
@@ -35,6 +35,9 @@
35#elif CONFIG_KEYPAD == PLAYER_PAD 35#elif CONFIG_KEYPAD == PLAYER_PAD
36#define DBX_SELECT BUTTON_PLAY 36#define DBX_SELECT BUTTON_PLAY
37#define DBX_STOP BUTTON_STOP 37#define DBX_STOP BUTTON_STOP
38#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
39#define DBX_SELECT BUTTON_SELECT
40#define DBX_STOP BUTTON_PLAY
38#endif 41#endif
39 42
40#define MAX_TOKENS 70 43#define MAX_TOKENS 70
diff --git a/apps/plugins/dict.c b/apps/plugins/dict.c
index aea7c44a6c..c432b564f4 100644
--- a/apps/plugins/dict.c
+++ b/apps/plugins/dict.c
@@ -104,6 +104,8 @@ long reverse (long N) {
104#define LP_QUIT BUTTON_STOP 104#define LP_QUIT BUTTON_STOP
105#elif (CONFIG_KEYPAD == IPOD_4G_PAD) 105#elif (CONFIG_KEYPAD == IPOD_4G_PAD)
106#define LP_QUIT BUTTON_MENU 106#define LP_QUIT BUTTON_MENU
107#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
108#define LP_QUIT BUTTON_PLAY
107#else 109#else
108#define LP_QUIT BUTTON_OFF 110#define LP_QUIT BUTTON_OFF
109#endif 111#endif
diff --git a/apps/plugins/jewels.c b/apps/plugins/jewels.c
index 739e8141a6..af5a3743c7 100644
--- a/apps/plugins/jewels.c
+++ b/apps/plugins/jewels.c
@@ -81,6 +81,12 @@
81#define BEJEWELED_SELECT_PRE BUTTON_SELECT 81#define BEJEWELED_SELECT_PRE BUTTON_SELECT
82#define BEJEWELED_RESUME (BUTTON_SELECT|BUTTON_PLAY) 82#define BEJEWELED_RESUME (BUTTON_SELECT|BUTTON_PLAY)
83 83
84#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
85#define BEJEWELED_QUIT BUTTON_PLAY
86#define BEJEWELED_START BUTTON_MODE
87#define BEJEWELED_SELECT BUTTON_SELECT
88#define BEJEWELED_RESUME BUTTON_EQ
89
84#else 90#else
85 #error BEJEWELED: Unsupported keypad 91 #error BEJEWELED: Unsupported keypad
86#endif 92#endif
diff --git a/apps/plugins/logo.c b/apps/plugins/logo.c
index ba5451410b..9472de9110 100644
--- a/apps/plugins/logo.c
+++ b/apps/plugins/logo.c
@@ -187,6 +187,12 @@ const unsigned char rockbox16x7[] = {
187#define LP_INC_X BUTTON_RIGHT 187#define LP_INC_X BUTTON_RIGHT
188#define LP_DEC_Y BUTTON_SCROLL_BACK 188#define LP_DEC_Y BUTTON_SCROLL_BACK
189#define LP_INC_Y BUTTON_SCROLL_FWD 189#define LP_INC_Y BUTTON_SCROLL_FWD
190#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
191#define LP_QUIT BUTTON_PLAY
192#define LP_DEC_X BUTTON_LEFT
193#define LP_INC_X BUTTON_RIGHT
194#define LP_DEC_Y BUTTON_DOWN
195#define LP_INC_Y BUTTON_UP
190#else 196#else
191#define LP_QUIT BUTTON_OFF 197#define LP_QUIT BUTTON_OFF
192#define LP_DEC_X BUTTON_LEFT 198#define LP_DEC_X BUTTON_LEFT
diff --git a/apps/plugins/metronome.c b/apps/plugins/metronome.c
index c1e156075b..f8c5445542 100644
--- a/apps/plugins/metronome.c
+++ b/apps/plugins/metronome.c
@@ -64,6 +64,15 @@
64#define METRONOME_TAP BUTTON_SELECT 64#define METRONOME_TAP BUTTON_SELECT
65#define METRONOME_MSG_START "press play" 65#define METRONOME_MSG_START "press play"
66#define METRONOME_MSG_STOP "press pause" 66#define METRONOME_MSG_STOP "press pause"
67
68#elif (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD)
69#define METRONOME_QUIT BUTTON_MODE
70#define METRONOME_PLAYPAUSE BUTTON_PLAY
71#define METRONOME_VOL_UP BUTTON_UP
72#define METRONOME_VOL_DOWN BUTTON_DOWN
73#define METRONOME_TAP BUTTON_EQ
74#define METRONOME_MSG_START "press play"
75#define METRONOME_MSG_STOP "press pause"
67#endif 76#endif
68 77
69#if CONFIG_REMOTE_KEYPAD == H100_REMOTE 78#if CONFIG_REMOTE_KEYPAD == H100_REMOTE
diff --git a/apps/plugins/mosaique.c b/apps/plugins/mosaique.c
index 0773236140..7a18bc2d42 100644
--- a/apps/plugins/mosaique.c
+++ b/apps/plugins/mosaique.c
@@ -55,6 +55,12 @@
55#define MOSAIQUE_QUIT BUTTON_MENU 55#define MOSAIQUE_QUIT BUTTON_MENU
56#define MOSAIQUE_SPEED BUTTON_SELECT 56#define MOSAIQUE_SPEED BUTTON_SELECT
57#define MOSAIQUE_RESTART BUTTON_PLAY 57#define MOSAIQUE_RESTART BUTTON_PLAY
58
59#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
60#define MOSAIQUE_QUIT BUTTON_PLAY
61#define MOSAIQUE_SPEED BUTTON_MODE
62#define MOSAIQUE_RESTART BUTTON_SELECT
63
58#endif 64#endif
59 65
60enum plugin_status plugin_start(struct plugin_api* api, void* parameter) 66enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
diff --git a/apps/plugins/plugin.lds b/apps/plugins/plugin.lds
index 84617b9b4e..c8ac88fb62 100644
--- a/apps/plugins/plugin.lds
+++ b/apps/plugins/plugin.lds
@@ -4,7 +4,7 @@
4 4
5#ifdef CPU_COLDFIRE 5#ifdef CPU_COLDFIRE
6OUTPUT_FORMAT(elf32-m68k) 6OUTPUT_FORMAT(elf32-m68k)
7#elif CONFIG_CPU==PP5020 7#elif defined(CPU_ARM)
8OUTPUT_FORMAT(elf32-littlearm) 8OUTPUT_FORMAT(elf32-littlearm)
9#else 9#else
10OUTPUT_FORMAT(elf32-sh) 10OUTPUT_FORMAT(elf32-sh)
@@ -32,6 +32,10 @@ OUTPUT_FORMAT(elf32-sh)
32#define DRAMORIG 0x10000000 32#define DRAMORIG 0x10000000
33#define IRAMORIG 0x4000c000 33#define IRAMORIG 0x4000c000
34#define IRAMSIZE 0xc000 34#define IRAMSIZE 0xc000
35#elif CONFIG_CPU == PNX0101
36#define DRAMORIG 0x24000000
37#define IRAMORIG 0x408000
38#define IRAMSIZE 0x8000
35#else 39#else
36#define DRAMORIG 0x09000000 + STUBOFFSET 40#define DRAMORIG 0x09000000 + STUBOFFSET
37#endif 41#endif
@@ -53,7 +57,7 @@ OUTPUT_FORMAT(elf32-sh)
53MEMORY 57MEMORY
54{ 58{
55 PLUGIN_RAM : ORIGIN = THIS_ORIGIN, LENGTH = THIS_LENGTH 59 PLUGIN_RAM : ORIGIN = THIS_ORIGIN, LENGTH = THIS_LENGTH
56#if defined(ARCH_IRIVER) || defined(ARCH_IPOD) 60#if defined(ARCH_IRIVER) || defined(ARCH_IPOD) || (CONFIG_CPU==PNX0101)
57 PLUGIN_IRAM : ORIGIN = IRAMORIG, LENGTH = IRAMSIZE 61 PLUGIN_IRAM : ORIGIN = IRAMORIG, LENGTH = IRAMSIZE
58#endif 62#endif
59} 63}
@@ -64,7 +68,7 @@ SECTIONS
64 { 68 {
65 KEEP(*(.entry)) 69 KEEP(*(.entry))
66 *(.text*) 70 *(.text*)
67#if CONFIG_CPU==PP5020 71#if (CONFIG_CPU==PP5020) || (CONFIG_CPU==PNX0101)
68 *(.glue_7) 72 *(.glue_7)
69 *(.glue_7t) 73 *(.glue_7t)
70#endif 74#endif
@@ -79,7 +83,7 @@ SECTIONS
79 .data : 83 .data :
80 { 84 {
81 *(.data*) 85 *(.data*)
82#if defined(ARCH_IRIVER) || defined(ARCH_IPOD) 86#if defined(ARCH_IRIVER) || defined(ARCH_IPOD) || (CONFIG_CPU==PNX0101)
83 iramcopy = .; 87 iramcopy = .;
84#endif 88#endif
85 } > PLUGIN_RAM 89 } > PLUGIN_RAM
@@ -89,7 +93,7 @@ SECTIONS
89 *(.eh_frame) 93 *(.eh_frame)
90 } 94 }
91 95
92#if defined(ARCH_IRIVER) || defined(ARCH_IPOD) 96#if defined(ARCH_IRIVER) || defined(ARCH_IPOD) || (CONFIG_CPU==PNX0101)
93 .iram IRAMORIG : AT ( iramcopy) 97 .iram IRAMORIG : AT ( iramcopy)
94 { 98 {
95 iramstart = .; 99 iramstart = .;
diff --git a/apps/plugins/rockboy/sys_rockbox.c b/apps/plugins/rockboy/sys_rockbox.c
index b8bb65e6fc..53fe19b199 100644
--- a/apps/plugins/rockboy/sys_rockbox.c
+++ b/apps/plugins/rockboy/sys_rockbox.c
@@ -75,6 +75,13 @@ void joy_close(void)
75#define ROCKBOY_PAD_SELECT BUTTON_PLAY 75#define ROCKBOY_PAD_SELECT BUTTON_PLAY
76#define ROCKBOY_MENU BUTTON_OFF 76#define ROCKBOY_MENU BUTTON_OFF
77 77
78#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
79#define ROCKBOY_PAD_A BUTTON_PLAY
80#define ROCKBOY_PAD_B BUTTON_EQ
81#define ROCKBOY_PAD_START BUTTON_MODE
82#define ROCKBOY_PAD_SELECT (BUTTON_SELECT | BUTTON_REL)
83#define ROCKBOY_MENU (BUTTON_SELECT | BUTTON_REPEAT)
84
78#endif 85#endif
79 86
80unsigned int oldbuttonstate = 0, newbuttonstate,holdbutton; 87unsigned int oldbuttonstate = 0, newbuttonstate,holdbutton;
diff --git a/apps/plugins/snow.c b/apps/plugins/snow.c
index ec4a240894..7fd0c8a3d6 100644
--- a/apps/plugins/snow.c
+++ b/apps/plugins/snow.c
@@ -36,6 +36,8 @@
36#define SNOW_QUIT BUTTON_STOP 36#define SNOW_QUIT BUTTON_STOP
37#elif (CONFIG_KEYPAD == IPOD_4G_PAD) 37#elif (CONFIG_KEYPAD == IPOD_4G_PAD)
38#define SNOW_QUIT BUTTON_MENU 38#define SNOW_QUIT BUTTON_MENU
39#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
40#define SNOW_QUIT BUTTON_PLAY
39#else 41#else
40#define SNOW_QUIT BUTTON_OFF 42#define SNOW_QUIT BUTTON_OFF
41#endif 43#endif
diff --git a/apps/plugins/stats.c b/apps/plugins/stats.c
index 0dfac24c6d..e1b8b6fc21 100644
--- a/apps/plugins/stats.c
+++ b/apps/plugins/stats.c
@@ -30,6 +30,8 @@ static int fontwidth, fontheight;
30#define STATS_STOP BUTTON_STOP 30#define STATS_STOP BUTTON_STOP
31#elif (CONFIG_KEYPAD == IPOD_4G_PAD) 31#elif (CONFIG_KEYPAD == IPOD_4G_PAD)
32#define STATS_STOP BUTTON_MENU 32#define STATS_STOP BUTTON_MENU
33#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
34#define STATS_STOP BUTTON_PLAY
33#else 35#else
34#define STATS_STOP BUTTON_OFF 36#define STATS_STOP BUTTON_OFF
35#endif 37#endif
diff --git a/apps/plugins/stopwatch.c b/apps/plugins/stopwatch.c
index 9df064d36f..4a1382ef65 100644
--- a/apps/plugins/stopwatch.c
+++ b/apps/plugins/stopwatch.c
@@ -68,6 +68,13 @@
68#define STOPWATCH_LAP_TIMER BUTTON_RIGHT 68#define STOPWATCH_LAP_TIMER BUTTON_RIGHT
69#define STOPWATCH_SCROLL_UP BUTTON_SCROLL_FWD 69#define STOPWATCH_SCROLL_UP BUTTON_SCROLL_FWD
70#define STOPWATCH_SCROLL_DOWN BUTTON_SCROLL_BACK 70#define STOPWATCH_SCROLL_DOWN BUTTON_SCROLL_BACK
71#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
72#define STOPWATCH_QUIT BUTTON_PLAY
73#define STOPWATCH_START_STOP BUTTON_MODE
74#define STOPWATCH_RESET_TIMER BUTTON_EQ
75#define STOPWATCH_LAP_TIMER BUTTON_SELECT
76#define STOPWATCH_SCROLL_UP BUTTON_UP
77#define STOPWATCH_SCROLL_DOWN BUTTON_DOWN
71#endif 78#endif
72 79
73static struct plugin_api* rb; 80static struct plugin_api* rb;
diff --git a/apps/plugins/viewer.c b/apps/plugins/viewer.c
index 60438c9dc9..823072e145 100644
--- a/apps/plugins/viewer.c
+++ b/apps/plugins/viewer.c
@@ -131,6 +131,17 @@
131#define VIEWER_MODE_PAGE (BUTTON_SELECT | BUTTON_LEFT | BUTTON_MENU) 131#define VIEWER_MODE_PAGE (BUTTON_SELECT | BUTTON_LEFT | BUTTON_MENU)
132#define VIEWER_MODE_SCROLLBAR (BUTTON_SELECT | BUTTON_LEFT | BUTTON_RIGHT) 132#define VIEWER_MODE_SCROLLBAR (BUTTON_SELECT | BUTTON_LEFT | BUTTON_RIGHT)
133 133
134/* iFP7xx keys */
135#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
136#define VIEWER_QUIT BUTTON_PLAY
137#define VIEWER_PAGE_UP BUTTON_UP
138#define VIEWER_PAGE_DOWN BUTTON_DOWN
139#define VIEWER_SCREEN_LEFT BUTTON_LEFT
140#define VIEWER_SCREEN_RIGHT BUTTON_RIGHT
141#define VIEWER_MODE_WRAP (BUTTON_EQ | BUTTON_REL)
142#define VIEWER_MODE_LINE (BUTTON_EQ | BUTTON_REPEAT)
143#define VIEWER_MODE_WIDTH BUTTON_MODE
144
134#endif 145#endif
135 146
136enum { 147enum {
diff --git a/apps/recorder/keyboard.c b/apps/recorder/keyboard.c
index 5f56274026..3cff78bbc5 100644
--- a/apps/recorder/keyboard.c
+++ b/apps/recorder/keyboard.c
@@ -114,6 +114,20 @@
114#define KBD_UP BUTTON_SCROLL_BACK 114#define KBD_UP BUTTON_SCROLL_BACK
115#define KBD_DOWN BUTTON_SCROLL_FWD 115#define KBD_DOWN BUTTON_SCROLL_FWD
116 116
117#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
118
119/* TODO: Check keyboard mappings */
120
121#define KBD_MODES /* iFP7xx uses 2 modes, picker and line edit */
122#define KBD_SELECT (BUTTON_SELECT | BUTTON_REL) /* backspace in line edit */
123#define KBD_SELECT_PRE BUTTON_SELECT
124#define KBD_DONE BUTTON_MODE
125#define KBD_ABORT BUTTON_PLAY
126#define KBD_LEFT BUTTON_LEFT
127#define KBD_RIGHT BUTTON_RIGHT
128#define KBD_UP BUTTON_UP
129#define KBD_DOWN BUTTON_DOWN
130
117#endif 131#endif
118 132
119#if KEYBOARD_PAGES == 1 133#if KEYBOARD_PAGES == 1
diff --git a/apps/settings.h b/apps/settings.h
index 263147c92c..2490635620 100644
--- a/apps/settings.h
+++ b/apps/settings.h
@@ -101,6 +101,12 @@
101#define SETTINGS_NEXT BUTTON_RIGHT 101#define SETTINGS_NEXT BUTTON_RIGHT
102#define SETTINGS_ACCEPT BUTTON_PLAY 102#define SETTINGS_ACCEPT BUTTON_PLAY
103 103
104#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
105#define SETTINGS_INC BUTTON_RIGHT
106#define SETTINGS_DEC BUTTON_LEFT
107#define SETTINGS_OK BUTTON_SELECT
108#define SETTINGS_CANCEL BUTTON_PLAY
109
104#endif 110#endif
105 111
106/* data structures */ 112/* data structures */
diff --git a/apps/tree.h b/apps/tree.h
index 05800ae68a..ad4a4a91aa 100644
--- a/apps/tree.h
+++ b/apps/tree.h
@@ -150,6 +150,20 @@
150#define TREE_WPS_PRE BUTTON_MENU 150#define TREE_WPS_PRE BUTTON_MENU
151#define TREE_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) 151#define TREE_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT)
152 152
153#elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
154
155#define TREE_NEXT BUTTON_DOWN
156#define TREE_PREV BUTTON_UP
157#define TREE_EXIT BUTTON_LEFT
158#define TREE_ABORT BUTTON_PLAY
159#define TREE_RUN (BUTTON_RIGHT | BUTTON_REL)
160#define TREE_RUN_PRE BUTTON_RIGHT
161#define TREE_MENU (BUTTON_SELECT | BUTTON_REPEAT)
162#define TREE_MENU_PRE BUTTON_SELECT
163#define TREE_WPS (BUTTON_SELECT | BUTTON_REL)
164#define TREE_WPS_PRE BUTTON_SELECT
165#define TREE_CONTEXT (BUTTON_RIGHT | BUTTON_REPEAT)
166#define TREE_POWER_BTN (BUTTON_PLAY | BUTTON_REPEAT)
153#endif 167#endif
154 168
155struct entry { 169struct entry {