summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorDan Everton <dan@iocaine.org>2006-03-05 20:19:44 +0000
committerDan Everton <dan@iocaine.org>2006-03-05 20:19:44 +0000
commit31e92f8068305da7610927ff41c3a4e5f903b58c (patch)
tree06dfeaad2211927090951bcd12e47593860b41f0 /apps
parent769925541a0c75a261ab8527afde3211e35a7698 (diff)
downloadrockbox-31e92f8068305da7610927ff41c3a4e5f903b58c.tar.gz
rockbox-31e92f8068305da7610927ff41c3a4e5f903b58c.zip
Get oscillograph plugin working on SWCODEC targets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8917 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/plugins/oscillograph.c49
1 files changed, 44 insertions, 5 deletions
diff --git a/apps/plugins/oscillograph.c b/apps/plugins/oscillograph.c
index 13858a1c3c..0728dc1b61 100644
--- a/apps/plugins/oscillograph.c
+++ b/apps/plugins/oscillograph.c
@@ -20,7 +20,6 @@
20 20
21#ifdef HAVE_LCD_BITMAP 21#ifdef HAVE_LCD_BITMAP
22#ifndef SIMULATOR /* don't want this code in the simulator */ 22#ifndef SIMULATOR /* don't want this code in the simulator */
23#if CONFIG_CODEC != SWCODEC /* only for MAS-targets */
24 23
25PLUGIN_HEADER 24PLUGIN_HEADER
26 25
@@ -50,6 +49,40 @@ PLUGIN_HEADER
50#define OSCILLOGRAPH_MODE BUTTON_MENU 49#define OSCILLOGRAPH_MODE BUTTON_MENU
51#define OSCILLOGRAPH_SPEED_RESET BUTTON_LEFT 50#define OSCILLOGRAPH_SPEED_RESET BUTTON_LEFT
52 51
52#elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \
53 (CONFIG_KEYPAD == IRIVER_H300_PAD)
54#define OSCILLOGRAPH_QUIT BUTTON_OFF
55#define OSCILLOGRAPH_SPEED_UP BUTTON_UP
56#define OSCILLOGRAPH_SPEED_DOWN BUTTON_DOWN
57#define OSCILLOGRAPH_ROLL BUTTON_RIGHT
58#define OSCILLOGRAPH_MODE BUTTON_SELECT
59#define OSCILLOGRAPH_SPEED_RESET BUTTON_LEFT
60
61#elif (CONFIG_KEYPAD == IPOD_3G_PAD) || \
62 (CONFIG_KEYPAD == IPOD_4G_PAD)
63#define OSCILLOGRAPH_QUIT BUTTON_MENU
64#define OSCILLOGRAPH_SPEED_UP BUTTON_SCROLL_FWD
65#define OSCILLOGRAPH_SPEED_DOWN BUTTON_SCROLL_BACK
66#define OSCILLOGRAPH_ROLL BUTTON_RIGHT
67#define OSCILLOGRAPH_MODE BUTTON_SELECT
68#define OSCILLOGRAPH_SPEED_RESET BUTTON_LEFT
69
70#elif (CONFIG_KEYPAD == GIGABEAT_PAD)
71#define OSCILLOGRAPH_QUIT BUTTON_POWER
72#define OSCILLOGRAPH_SPEED_UP BUTTON_UP
73#define OSCILLOGRAPH_SPEED_DOWN BUTTON_DOWN
74#define OSCILLOGRAPH_ROLL BUTTON_RIGHT
75#define OSCILLOGRAPH_MODE BUTTON_SELECT
76#define OSCILLOGRAPH_SPEED_RESET BUTTON_LEFT
77
78#elif CONFIG_KEYPAD == IAUDIO_X5_PAD
79#define OSCILLOGRAPH_QUIT BUTTON_POWER
80#define OSCILLOGRAPH_SPEED_UP BUTTON_UP
81#define OSCILLOGRAPH_SPEED_DOWN BUTTON_DOWN
82#define OSCILLOGRAPH_ROLL BUTTON_RIGHT
83#define OSCILLOGRAPH_MODE BUTTON_SELECT
84#define OSCILLOGRAPH_SPEED_RESET BUTTON_LEFT
85
53#endif 86#endif
54 87
55/* global api struct pointer */ 88/* global api struct pointer */
@@ -101,9 +134,16 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
101 /* the main loop */ 134 /* the main loop */
102 while (!exit) { 135 while (!exit) {
103 136
104 /* read the volume info from MAS */ 137 /* read the volume info */
105 left = rb->mas_codec_readreg(0xC) / (MAX_PEAK / (LCD_WIDTH / 2 - 2)); 138#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
106 right = rb->mas_codec_readreg(0xD) / (MAX_PEAK / (LCD_WIDTH / 2 - 2)); 139 left = rb->mas_codec_readreg(0xC);
140 right = rb->mas_codec_readreg(0xD);
141#elif (CONFIG_CODEC == SWCODEC)
142 rb->pcm_calculate_peaks(&left, &right);
143#endif
144
145 left = left / (MAX_PEAK / (LCD_WIDTH / 2 - 2));
146 right = right / (MAX_PEAK / (LCD_WIDTH / 2 - 2));
107 147
108 /* delete current line */ 148 /* delete current line */
109 rb->lcd_set_drawmode(DRMODE_SOLID|DRMODE_INVERSEVID); 149 rb->lcd_set_drawmode(DRMODE_SOLID|DRMODE_INVERSEVID);
@@ -244,6 +284,5 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
244 return PLUGIN_OK; 284 return PLUGIN_OK;
245} 285}
246 286
247#endif /* if using MAS */
248#endif /* #ifndef SIMULATOR */ 287#endif /* #ifndef SIMULATOR */
249#endif 288#endif