diff options
Diffstat (limited to 'apps/plugins')
-rw-r--r-- | apps/plugins/oscillograph.c | 49 |
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 | ||
25 | PLUGIN_HEADER | 24 | PLUGIN_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 |