summaryrefslogtreecommitdiff
path: root/apps/plugin.c
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2012-12-02 01:09:44 -0500
committerMichael Sevakis <jethead71@rockbox.org>2012-12-05 02:03:58 +0100
commit0f8aedbe9492a5226fddd4ad27dae21b8a39e1b4 (patch)
treefa337438065d277926a254af74d3843b060b37eb /apps/plugin.c
parente1ea08417bca57c607df6686472fa0a86f38b6d1 (diff)
downloadrockbox-0f8aedbe9492a5226fddd4ad27dae21b8a39e1b4.tar.gz
rockbox-0f8aedbe9492a5226fddd4ad27dae21b8a39e1b4.zip
Add a true waveform display to the oscilloscope plugin.
* Adds some additional niftyness like a floating popup display that is implemented in an OSD library for use by other plugins. * Speed changes are now gradual for both views and follow a curve derived from some fiddling around to get a nice feel. * Refined a few behavioral things overall. It needs a bit of help from a direct PCM channel callback so it may capture PCM for waveform display. Also need a few other core routines to help out for the OSD. Messes with some keymaps. Some targets need keymaps to access the different views. Some devices can't support the additional view because it requires a large buffer ( > 1 s) for samples. If the plugin buffer is small, they can still use the popup display since the plugin is also much smaller in that case. Slow speed waveform needs some refining so it draws gradually like a real oscilloscope but I'll stick with what it is, for the moment. Change-Id: Ieb5b7922a2238264e9b19a58cb437739194eb036 Reviewed-on: http://gerrit.rockbox.org/245 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>
Diffstat (limited to 'apps/plugin.c')
-rw-r--r--apps/plugin.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/apps/plugin.c b/apps/plugin.c
index e0e565e504..baf6a2a256 100644
--- a/apps/plugin.c
+++ b/apps/plugin.c
@@ -791,6 +791,16 @@ static const struct plugin_api rockbox_api = {
791 791
792 /* new stuff at the end, sort into place next time 792 /* new stuff at the end, sort into place next time
793 the API gets incompatible */ 793 the API gets incompatible */
794
795#ifdef HAVE_LCD_BITMAP
796#if CONFIG_CODEC == SWCODEC
797 mixer_channel_set_buffer_hook,
798#endif
799 lcd_set_viewport,
800 viewport_set_fullscreen,
801 lcd_set_framebuffer,
802 lcd_bmp_part,
803#endif
794}; 804};
795 805
796int plugin_load(const char* plugin, const void* parameter) 806int plugin_load(const char* plugin, const void* parameter)