summaryrefslogtreecommitdiff
path: root/apps/plugins/midiplay.c
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2006-11-18 02:18:29 +0000
committerMichael Sevakis <jethead71@rockbox.org>2006-11-18 02:18:29 +0000
commitacc29d95be85c9cfd0d8f74dda813d7d1082e2ec (patch)
tree81fdd154d122b393d6254968cba5bc90b63e4741 /apps/plugins/midiplay.c
parente2a262ee258769136eadc58c2bc8e3aa53db1a71 (diff)
downloadrockbox-acc29d95be85c9cfd0d8f74dda813d7d1082e2ec.tar.gz
rockbox-acc29d95be85c9cfd0d8f74dda813d7d1082e2ec.zip
SWCODEC/IRAM: Save voice IRAM when a plugin initializes its IRAM. Defines two macros for declaring and initializing IRAM. Plugins should use these instead. See mp3_encoder, doom, etc. for details. Further tweaks in buffer restoration after other use. Hiding of some interfaces that should only be used by buffer management.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11544 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/midiplay.c')
-rw-r--r--apps/plugins/midiplay.c15
1 files changed, 2 insertions, 13 deletions
diff --git a/apps/plugins/midiplay.c b/apps/plugins/midiplay.c
index 585c7eec25..a0e7d0e3c2 100644
--- a/apps/plugins/midiplay.c
+++ b/apps/plugins/midiplay.c
@@ -19,7 +19,7 @@
19#include "../../plugin.h" 19#include "../../plugin.h"
20 20
21PLUGIN_HEADER 21PLUGIN_HEADER
22 22PLUGIN_IRAM_DECLARE
23 23
24/* variable button definitions */ 24/* variable button definitions */
25#if CONFIG_KEYPAD == RECORDER_PAD 25#if CONFIG_KEYPAD == RECORDER_PAD
@@ -102,14 +102,6 @@ short gmbuf[BUF_SIZE*NBUF] IBSS_ATTR;
102int quit=0; 102int quit=0;
103struct plugin_api * rb; 103struct plugin_api * rb;
104 104
105#ifdef USE_IRAM
106extern char iramcopy[];
107extern char iramstart[];
108extern char iramend[];
109extern char iedata[];
110extern char iend[];
111#endif
112
113enum plugin_status plugin_start(struct plugin_api* api, void* parameter) 105enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
114{ 106{
115 int retval = 0; 107 int retval = 0;
@@ -122,10 +114,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
122 } 114 }
123 rb->lcd_setfont(0); 115 rb->lcd_setfont(0);
124 116
125#ifdef USE_IRAM 117 PLUGIN_IRAM_INIT(rb)
126 rb->memcpy(iramstart, iramcopy, iramend-iramstart);
127 rb->memset(iedata, 0, iend - iedata);
128#endif
129 118
130#if defined(HAVE_ADJUSTABLE_CPU_FREQ) 119#if defined(HAVE_ADJUSTABLE_CPU_FREQ)
131 rb->cpu_boost(true); 120 rb->cpu_boost(true);