summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Nielsen Feltzing <linus@haxx.se>2005-04-05 11:33:58 +0000
committerLinus Nielsen Feltzing <linus@haxx.se>2005-04-05 11:33:58 +0000
commitd34865a5307e7bf91d986036797423975ac828b4 (patch)
tree41dcc1775f6cdc1d655f1eddadaabdf90c7ac22f
parent6cf9d51b3374cdc436c45f165a10f607832126ee (diff)
downloadrockbox-d34865a5307e7bf91d986036797423975ac828b4.tar.gz
rockbox-d34865a5307e7bf91d986036797423975ac828b4.zip
mp3buf renamed to audiobuf
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6252 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/debug_menu.c12
-rw-r--r--apps/main_menu.c2
-rw-r--r--apps/playlist.c10
-rw-r--r--apps/plugin.c8
-rw-r--r--apps/plugin.h4
-rw-r--r--apps/plugins/battery_test.c2
-rw-r--r--apps/plugins/jpeg.c2
-rw-r--r--apps/plugins/lib/xxx2wav.c14
-rw-r--r--apps/plugins/rockboy.c9
-rw-r--r--apps/plugins/rockboy/rockboy.c34
-rw-r--r--apps/plugins/sort.c2
-rw-r--r--apps/plugins/vbrfix.c26
-rw-r--r--apps/plugins/video.c2
-rw-r--r--apps/talk.c20
-rw-r--r--firmware/app.lds18
-rw-r--r--firmware/buffer.c14
-rw-r--r--firmware/export/audio.h8
-rw-r--r--firmware/export/buffer.h6
-rw-r--r--firmware/mp3data.c16
-rw-r--r--firmware/mpeg.c248
-rw-r--r--firmware/rolo.c12
-rw-r--r--firmware/rom.lds8
22 files changed, 239 insertions, 238 deletions
diff --git a/apps/debug_menu.c b/apps/debug_menu.c
index d8ebe9bfb1..2ab2194199 100644
--- a/apps/debug_menu.c
+++ b/apps/debug_menu.c
@@ -126,7 +126,7 @@ int load_wave(char *filename)
126 if (audio_size > 8*1024*1024) 126 if (audio_size > 8*1024*1024)
127 audio_size = 8*1024*1024; 127 audio_size = 8*1024*1024;
128 128
129 audio_buffer = mp3buf; 129 audio_buffer = audiobuf;
130 130
131 puts("Reading %d bytes..", audio_size); 131 puts("Reading %d bytes..", audio_size);
132 132
@@ -356,11 +356,11 @@ bool dbg_audio_thread(void)
356 356
357 lcd_clear_display(); 357 lcd_clear_display();
358 358
359 snprintf(buf, sizeof(buf), "read: %x", d.mp3buf_read); 359 snprintf(buf, sizeof(buf), "read: %x", d.audiobuf_read);
360 lcd_puts(0, 0, buf); 360 lcd_puts(0, 0, buf);
361 snprintf(buf, sizeof(buf), "write: %x", d.mp3buf_write); 361 snprintf(buf, sizeof(buf), "write: %x", d.audiobuf_write);
362 lcd_puts(0, 1, buf); 362 lcd_puts(0, 1, buf);
363 snprintf(buf, sizeof(buf), "swap: %x", d.mp3buf_swapwrite); 363 snprintf(buf, sizeof(buf), "swap: %x", d.audiobuf_swapwrite);
364 lcd_puts(0, 2, buf); 364 lcd_puts(0, 2, buf);
365 snprintf(buf, sizeof(buf), "playing: %d", d.playing); 365 snprintf(buf, sizeof(buf), "playing: %d", d.playing);
366 lcd_puts(0, 3, buf); 366 lcd_puts(0, 3, buf);
@@ -370,11 +370,11 @@ bool dbg_audio_thread(void)
370 lcd_puts(0, 5, buf); 370 lcd_puts(0, 5, buf);
371 371
372 /* Playable space left */ 372 /* Playable space left */
373 scrollbar(0, 6*8, 112, 4, d.mp3buflen, 0, 373 scrollbar(0, 6*8, 112, 4, d.audiobuflen, 0,
374 d.playable_space, HORIZONTAL); 374 d.playable_space, HORIZONTAL);
375 375
376 /* Show the watermark limit */ 376 /* Show the watermark limit */
377 scrollbar(0, 6*8+4, 112, 4, d.mp3buflen, 0, 377 scrollbar(0, 6*8+4, 112, 4, d.audiobuflen, 0,
378 d.low_watermark_level, HORIZONTAL); 378 d.low_watermark_level, HORIZONTAL);
379 379
380 snprintf(buf, sizeof(buf), "wm: %x - %x", 380 snprintf(buf, sizeof(buf), "wm: %x - %x",
diff --git a/apps/main_menu.c b/apps/main_menu.c
index c7cfb0ea70..055a83bc24 100644
--- a/apps/main_menu.c
+++ b/apps/main_menu.c
@@ -138,7 +138,7 @@ extern bool simulate_usb(void);
138bool show_info(void) 138bool show_info(void)
139{ 139{
140 char s[32], s2[32]; 140 char s[32], s2[32];
141 long buflen = ((mp3end - mp3buf) * 2) / 2097; /* avoid overflow */ 141 long buflen = ((audiobufend - audiobuf) * 2) / 2097; /* avoid overflow */
142 int integer, decimal; 142 int integer, decimal;
143 bool done = false; 143 bool done = false;
144 int key; 144 int key;
diff --git a/apps/playlist.c b/apps/playlist.c
index 3370937a69..8c9d6d11c7 100644
--- a/apps/playlist.c
+++ b/apps/playlist.c
@@ -351,8 +351,8 @@ static int add_indices_to_playlist(struct playlist_info* playlist,
351 audio_stop(); 351 audio_stop();
352 talk_buffer_steal(); /* we use the mp3 buffer, need to tell */ 352 talk_buffer_steal(); /* we use the mp3 buffer, need to tell */
353 353
354 buffer = mp3buf; 354 buffer = audiobuf;
355 buflen = (mp3end - mp3buf); 355 buflen = (audiobufend - audiobuf);
356 } 356 }
357 357
358 store_index = true; 358 store_index = true;
@@ -1211,8 +1211,8 @@ int playlist_resume(void)
1211 1211
1212 /* use mp3 buffer for maximum load speed */ 1212 /* use mp3 buffer for maximum load speed */
1213 talk_buffer_steal(); /* we use the mp3 buffer, need to tell */ 1213 talk_buffer_steal(); /* we use the mp3 buffer, need to tell */
1214 buflen = (mp3end - mp3buf); 1214 buflen = (audiobufend - audiobuf);
1215 buffer = mp3buf; 1215 buffer = audiobuf;
1216 1216
1217 empty_playlist(playlist, true); 1217 empty_playlist(playlist, true);
1218 1218
@@ -1294,7 +1294,7 @@ int playlist_resume(void)
1294 if (str3[0] != '\0') 1294 if (str3[0] != '\0')
1295 { 1295 {
1296 /* NOTE: add_indices_to_playlist() overwrites the 1296 /* NOTE: add_indices_to_playlist() overwrites the
1297 mp3buf so we need to reload control file 1297 audiobuf so we need to reload control file
1298 data */ 1298 data */
1299 add_indices_to_playlist(playlist, NULL, 0); 1299 add_indices_to_playlist(playlist, NULL, 0);
1300 } 1300 }
diff --git a/apps/plugin.c b/apps/plugin.c
index 412d86b4c9..7a9875ac2c 100644
--- a/apps/plugin.c
+++ b/apps/plugin.c
@@ -238,7 +238,7 @@ static const struct plugin_api rockbox_api = {
238 get_time, 238 get_time,
239 set_time, 239 set_time,
240 plugin_get_buffer, 240 plugin_get_buffer,
241 plugin_get_mp3_buffer, 241 plugin_get_audio_buffer,
242#ifndef SIMULATOR 242#ifndef SIMULATOR
243 plugin_register_timer, 243 plugin_register_timer,
244 plugin_unregister_timer, 244 plugin_unregister_timer,
@@ -407,12 +407,12 @@ void* plugin_get_buffer(int* buffer_size)
407 407
408/* Returns a pointer to the mp3 buffer. 408/* Returns a pointer to the mp3 buffer.
409 Playback gets stopped, to avoid conflicts. */ 409 Playback gets stopped, to avoid conflicts. */
410void* plugin_get_mp3_buffer(int* buffer_size) 410void* plugin_get_audio_buffer(int* buffer_size)
411{ 411{
412 audio_stop(); 412 audio_stop();
413 talk_buffer_steal(); /* we use the mp3 buffer, need to tell */ 413 talk_buffer_steal(); /* we use the mp3 buffer, need to tell */
414 *buffer_size = mp3end - mp3buf; 414 *buffer_size = audiobufend - audiobuf;
415 return mp3buf; 415 return audiobuf;
416} 416}
417 417
418#ifndef SIMULATOR 418#ifndef SIMULATOR
diff --git a/apps/plugin.h b/apps/plugin.h
index ff37a7c46d..9fd9a9421c 100644
--- a/apps/plugin.h
+++ b/apps/plugin.h
@@ -280,7 +280,7 @@ struct plugin_api {
280 struct tm* (*get_time)(void); 280 struct tm* (*get_time)(void);
281 int (*set_time)(const struct tm *tm); 281 int (*set_time)(const struct tm *tm);
282 void* (*plugin_get_buffer)(int* buffer_size); 282 void* (*plugin_get_buffer)(int* buffer_size);
283 void* (*plugin_get_mp3_buffer)(int* buffer_size); 283 void* (*plugin_get_audio_buffer)(int* buffer_size);
284#ifndef SIMULATOR 284#ifndef SIMULATOR
285 int (*plugin_register_timer)(int cycles, int prio, void (*timer_callback)(void)); 285 int (*plugin_register_timer)(int cycles, int prio, void (*timer_callback)(void));
286 void (*plugin_unregister_timer)(void); 286 void (*plugin_unregister_timer)(void);
@@ -334,7 +334,7 @@ struct plugin_api {
334/* defined by the plugin loader (plugin.c) */ 334/* defined by the plugin loader (plugin.c) */
335int plugin_load(const char* plugin, void* parameter); 335int plugin_load(const char* plugin, void* parameter);
336void* plugin_get_buffer(int *buffer_size); 336void* plugin_get_buffer(int *buffer_size);
337void* plugin_get_mp3_buffer(int *buffer_size); 337void* plugin_get_audio_buffer(int *buffer_size);
338int plugin_register_timer(int cycles, int prio, void (*timer_callback)(void)); 338int plugin_register_timer(int cycles, int prio, void (*timer_callback)(void));
339void plugin_unregister_timer(void); 339void plugin_unregister_timer(void);
340void plugin_tsr(void (*exit_callback)(void)); 340void plugin_tsr(void (*exit_callback)(void));
diff --git a/apps/plugins/battery_test.c b/apps/plugins/battery_test.c
index 73affddf8b..47042e6cf0 100644
--- a/apps/plugins/battery_test.c
+++ b/apps/plugins/battery_test.c
@@ -48,7 +48,7 @@ int buffersize;
48int init(void) 48int init(void)
49{ 49{
50 int f; 50 int f;
51 buffer = rb->plugin_get_mp3_buffer(&buffersize); 51 buffer = rb->plugin_get_audio_buffer(&buffersize);
52 52
53#ifdef HAVE_MMC 53#ifdef HAVE_MMC
54 /* present info what's going on. MMC is slow. */ 54 /* present info what's going on. MMC is slow. */
diff --git a/apps/plugins/jpeg.c b/apps/plugins/jpeg.c
index f705271240..7ca59b29cd 100644
--- a/apps/plugins/jpeg.c
+++ b/apps/plugins/jpeg.c
@@ -1824,7 +1824,7 @@ int main(char* filename)
1824 1824
1825 rb->memset(&disp, 0, sizeof(disp)); 1825 rb->memset(&disp, 0, sizeof(disp));
1826 1826
1827 buf = rb->plugin_get_mp3_buffer(&buf_size); /* start munching memory */ 1827 buf = rb->plugin_get_audio_buffer(&buf_size); /* start munching memory */
1828 1828
1829 1829
1830 /* initialize the grayscale buffer: 1830 /* initialize the grayscale buffer:
diff --git a/apps/plugins/lib/xxx2wav.c b/apps/plugins/lib/xxx2wav.c
index 4d0c139f1b..d864527fc2 100644
--- a/apps/plugins/lib/xxx2wav.c
+++ b/apps/plugins/lib/xxx2wav.c
@@ -29,9 +29,9 @@ static struct plugin_api* local_rb;
29 29
30int mem_ptr; 30int mem_ptr;
31int bufsize; 31int bufsize;
32unsigned char* mp3buf; // The actual MP3 buffer from Rockbox 32unsigned char* audiobuf; // The actual audio buffer from Rockbox
33unsigned char* mallocbuf; // 512K from the start of MP3 buffer 33unsigned char* mallocbuf; // 512K from the start of audio buffer
34unsigned char* filebuf; // The rest of the MP3 buffer 34unsigned char* filebuf; // The rest of the audio buffer
35 35
36void* codec_malloc(size_t size) { 36void* codec_malloc(size_t size) {
37 void* x; 37 void* x;
@@ -169,11 +169,11 @@ int local_init(char* infilename, char* outfilename, file_info_struct* file_info,
169 local_rb=rb; 169 local_rb=rb;
170 170
171 mem_ptr=0; 171 mem_ptr=0;
172 mp3buf=local_rb->plugin_get_mp3_buffer(&bufsize); 172 audiobuf=local_rb->plugin_get_audio_buffer(&bufsize);
173 mallocbuf=mp3buf; 173 mallocbuf=audiobuf;
174 filebuf=&mp3buf[MALLOC_BUFSIZE]; 174 filebuf=&audiobuf[MALLOC_BUFSIZE];
175 175
176 local_rb->snprintf(s,32,"mp3 bufsize: %d",bufsize); 176 local_rb->snprintf(s,32,"audio bufsize: %d",bufsize);
177 local_rb->lcd_putsxy(0,100,s); 177 local_rb->lcd_putsxy(0,100,s);
178 local_rb->lcd_update(); 178 local_rb->lcd_update();
179 179
diff --git a/apps/plugins/rockboy.c b/apps/plugins/rockboy.c
index 4778fa8ee6..d531c9405b 100644
--- a/apps/plugins/rockboy.c
+++ b/apps/plugins/rockboy.c
@@ -26,8 +26,8 @@
26#define OVL_DISPLAYNAME "RockBoy" 26#define OVL_DISPLAYNAME "RockBoy"
27 27
28struct plugin_api* rb; 28struct plugin_api* rb;
29unsigned char *mp3buf; 29unsigned char *audiobuf;
30int mp3buf_size; 30int audiobuf_size;
31 31
32/* this is the plugin entry point */ 32/* this is the plugin entry point */
33enum plugin_status plugin_start(struct plugin_api* api, void* parameter) 33enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
@@ -60,8 +60,9 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
60 return PLUGIN_ERROR; 60 return PLUGIN_ERROR;
61 } 61 }
62 62
63 mp3buf = rb->plugin_get_mp3_buffer(&mp3buf_size); 63 audiobuf = rb->plugin_get_audio_buffer(&audiobuf_size);
64 if (header.start_addr < mp3buf || header.end_addr > mp3buf + mp3buf_size) 64 if (header.start_addr < audiobuf ||
65 header.end_addr > audiobuf + audiobuf_size)
65 { 66 {
66 rb->close(fh); 67 rb->close(fh);
67 rb->splash(2*HZ, true, OVL_DISPLAYNAME 68 rb->splash(2*HZ, true, OVL_DISPLAYNAME
diff --git a/apps/plugins/rockboy/rockboy.c b/apps/plugins/rockboy/rockboy.c
index c6d006a131..1b4c0c7a7d 100644
--- a/apps/plugins/rockboy/rockboy.c
+++ b/apps/plugins/rockboy/rockboy.c
@@ -59,37 +59,37 @@ void die(char *message, ...)
59 errormsg=message; 59 errormsg=message;
60} 60}
61 61
62void *mp3_bufferbase; 62void *audio_bufferbase;
63void *mp3_bufferpointer; 63void *audio_bufferpointer;
64unsigned int mp3_buffer_free; 64unsigned int audio_buffer_free;
65 65
66void *my_malloc(size_t size) 66void *my_malloc(size_t size)
67{ 67{
68 void *alloc; 68 void *alloc;
69 69
70 if (!mp3_bufferbase) 70 if (!audio_bufferbase)
71 { 71 {
72 mp3_bufferbase = mp3_bufferpointer 72 audio_bufferbase = audio_bufferpointer
73 = rb->plugin_get_mp3_buffer(&mp3_buffer_free); 73 = rb->plugin_get_audio_buffer(&audio_buffer_free);
74#if MEM <= 8 && !defined(SIMULATOR) 74#if MEM <= 8 && !defined(SIMULATOR)
75 /* loaded as an overlay, protect from overwriting ourselves */ 75 /* loaded as an overlay, protect from overwriting ourselves */
76 if ((unsigned)(ovl_start_addr - (unsigned char *)mp3_bufferbase) 76 if ((unsigned)(ovl_start_addr - (unsigned char *)audio_bufferbase)
77 < mp3_buffer_free) 77 < audio_buffer_free)
78 mp3_buffer_free = ovl_start_addr - (unsigned char *)mp3_bufferbase; 78 audio_buffer_free = ovl_start_addr - (unsigned char *)audio_bufferbase;
79#endif 79#endif
80 } 80 }
81 if (size + 4 > mp3_buffer_free) 81 if (size + 4 > audio_buffer_free)
82 return 0; 82 return 0;
83 alloc = mp3_bufferpointer; 83 alloc = audio_bufferpointer;
84 mp3_bufferpointer += size + 4; 84 audio_bufferpointer += size + 4;
85 mp3_buffer_free -= size + 4; 85 audio_buffer_free -= size + 4;
86 return alloc; 86 return alloc;
87} 87}
88 88
89void setmallocpos(void *pointer) 89void setmallocpos(void *pointer)
90{ 90{
91 mp3_bufferpointer = pointer; 91 audio_bufferpointer = pointer;
92 mp3_buffer_free = mp3_bufferpointer - mp3_bufferbase; 92 audio_buffer_free = audio_bufferpointer - audio_bufferbase;
93} 93}
94 94
95/* this is the plugin entry point */ 95/* this is the plugin entry point */
@@ -113,8 +113,8 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
113#endif 113#endif
114 shut=0; 114 shut=0;
115 cleanshut=0; 115 cleanshut=0;
116 mp3_bufferbase=mp3_bufferpointer=0; 116 audio_bufferbase=audio_bufferpointer=0;
117 mp3_buffer_free=0; 117 audio_buffer_free=0;
118 118
119 /* now go ahead and have fun! */ 119 /* now go ahead and have fun! */
120 /* rb->splash(HZ*2, true, "Rockboy v0.3"); */ 120 /* rb->splash(HZ*2, true, "Rockboy v0.3"); */
diff --git a/apps/plugins/sort.c b/apps/plugins/sort.c
index b17f5a441a..cf91dbb4dd 100644
--- a/apps/plugins/sort.c
+++ b/apps/plugins/sort.c
@@ -184,7 +184,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
184 184
185 rb = api; 185 rb = api;
186 186
187 buf = rb->plugin_get_mp3_buffer(&buf_size); /* start munching memory */ 187 buf = rb->plugin_get_audio_buffer(&buf_size); /* start munching memory */
188 188
189 stringbuffer = buf; 189 stringbuffer = buf;
190 pointers = (char **)(buf + buf_size - sizeof(int)); 190 pointers = (char **)(buf + buf_size - sizeof(int));
diff --git a/apps/plugins/vbrfix.c b/apps/plugins/vbrfix.c
index 0077340ec9..7fb072c656 100644
--- a/apps/plugins/vbrfix.c
+++ b/apps/plugins/vbrfix.c
@@ -20,8 +20,8 @@
20 20
21static struct plugin_api* rb; 21static struct plugin_api* rb;
22 22
23static char *mp3buf; 23static char *audiobuf;
24static int mp3buflen; 24static int audiobuflen;
25 25
26static void xingupdate(int percent) 26static void xingupdate(int percent)
27{ 27{
@@ -56,14 +56,14 @@ static int insert_data_in_file(char *fname, int fpos, char *buf, int num_bytes)
56 56
57 /* First, copy the initial portion (the ID3 tag) */ 57 /* First, copy the initial portion (the ID3 tag) */
58 if(fpos) { 58 if(fpos) {
59 readlen = rb->read(orig_fd, mp3buf, fpos); 59 readlen = rb->read(orig_fd, audiobuf, fpos);
60 if(readlen < 0) { 60 if(readlen < 0) {
61 rb->close(fd); 61 rb->close(fd);
62 rb->close(orig_fd); 62 rb->close(orig_fd);
63 return 10*readlen - 3; 63 return 10*readlen - 3;
64 } 64 }
65 65
66 rc = rb->write(fd, mp3buf, readlen); 66 rc = rb->write(fd, audiobuf, readlen);
67 if(rc < 0) { 67 if(rc < 0) {
68 rb->close(fd); 68 rb->close(fd);
69 rb->close(orig_fd); 69 rb->close(orig_fd);
@@ -81,14 +81,14 @@ static int insert_data_in_file(char *fname, int fpos, char *buf, int num_bytes)
81 81
82 /* Copy the file */ 82 /* Copy the file */
83 do { 83 do {
84 readlen = rb->read(orig_fd, mp3buf, mp3buflen); 84 readlen = rb->read(orig_fd, audiobuf, audiobuflen);
85 if(readlen < 0) { 85 if(readlen < 0) {
86 rb->close(fd); 86 rb->close(fd);
87 rb->close(orig_fd); 87 rb->close(orig_fd);
88 return 10*readlen - 7; 88 return 10*readlen - 7;
89 } 89 }
90 90
91 rc = rb->write(fd, mp3buf, readlen); 91 rc = rb->write(fd, audiobuf, readlen);
92 if(rc < 0) { 92 if(rc < 0) {
93 rb->close(fd); 93 rb->close(fd);
94 rb->close(orig_fd); 94 rb->close(orig_fd);
@@ -193,8 +193,8 @@ static bool vbr_fix(char *selected_file)
193 and write it to the file */ 193 and write it to the file */
194 if(unused_space) 194 if(unused_space)
195 { 195 {
196 rb->memset(mp3buf, 0, unused_space); 196 rb->memset(audiobuf, 0, unused_space);
197 rc = rb->write(fd, mp3buf, unused_space); 197 rc = rb->write(fd, audiobuf, unused_space);
198 if(rc < 0) { 198 if(rc < 0) {
199 rb->close(fd); 199 rb->close(fd);
200 fileerror(rc); 200 fileerror(rc);
@@ -230,20 +230,20 @@ static bool vbr_fix(char *selected_file)
230 DEBUGF("Inserting 4096+%d bytes\n", framelen); 230 DEBUGF("Inserting 4096+%d bytes\n", framelen);
231 numbytes = 4096 + framelen; 231 numbytes = 4096 + framelen;
232 232
233 rb->memset(mp3buf + 0x100000, 0, numbytes); 233 rb->memset(audiobuf + 0x100000, 0, numbytes);
234 234
235 /* Insert the ID3 header */ 235 /* Insert the ID3 header */
236 rb->memcpy(mp3buf + 0x100000, empty_id3_header, 236 rb->memcpy(audiobuf + 0x100000, empty_id3_header,
237 sizeof(empty_id3_header)); 237 sizeof(empty_id3_header));
238 } 238 }
239 239
240 /* Copy the Xing header */ 240 /* Copy the Xing header */
241 rb->memcpy(mp3buf + 0x100000 + numbytes - framelen, 241 rb->memcpy(audiobuf + 0x100000 + numbytes - framelen,
242 xingbuf, framelen); 242 xingbuf, framelen);
243 243
244 rc = insert_data_in_file(selected_file, 244 rc = insert_data_in_file(selected_file,
245 entry.first_frame_offset, 245 entry.first_frame_offset,
246 mp3buf + 0x100000, numbytes); 246 audiobuf + 0x100000, numbytes);
247 247
248 if(rc < 0) { 248 if(rc < 0) {
249 fileerror(rc); 249 fileerror(rc);
@@ -272,7 +272,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void *parameter)
272 if (!parameter) 272 if (!parameter)
273 return PLUGIN_ERROR; 273 return PLUGIN_ERROR;
274 274
275 mp3buf = rb->plugin_get_mp3_buffer(&mp3buflen); 275 audiobuf = rb->plugin_get_audio_buffer(&audiobuflen);
276 276
277 vbr_fix(parameter); 277 vbr_fix(parameter);
278 278
diff --git a/apps/plugins/video.c b/apps/plugins/video.c
index 0257ad26b7..db371392d5 100644
--- a/apps/plugins/video.c
+++ b/apps/plugins/video.c
@@ -864,7 +864,7 @@ int main(char* filename)
864 // init buffer 864 // init buffer
865 rb->memset(&gBuf, 0, sizeof(gBuf)); 865 rb->memset(&gBuf, 0, sizeof(gBuf));
866 gBuf.pOSD = rb->lcd_framebuffer + LCD_WIDTH*7; // last screen line 866 gBuf.pOSD = rb->lcd_framebuffer + LCD_WIDTH*7; // last screen line
867 gBuf.pBufStart = rb->plugin_get_mp3_buffer(&gBuf.bufsize); 867 gBuf.pBufStart = rb->plugin_get_audio_buffer(&gBuf.bufsize);
868 //gBuf.bufsize = 1700*1024; // test, like 2MB version!!!! 868 //gBuf.bufsize = 1700*1024; // test, like 2MB version!!!!
869 gBuf.pBufFill = gBuf.pBufStart; // all empty 869 gBuf.pBufFill = gBuf.pBufStart; // all empty
870 870
diff --git a/apps/talk.c b/apps/talk.c
index 2b97629d55..b6e2ec57a1 100644
--- a/apps/talk.c
+++ b/apps/talk.c
@@ -131,7 +131,7 @@ static void load_voicefile(void)
131 goto load_err; 131 goto load_err;
132 132
133 file_size = filesize(filehandle); 133 file_size = filesize(filehandle);
134 if (file_size > mp3end - mp3buf) /* won't fit? */ 134 if (file_size > audiobufend - audiobuf) /* won't fit? */
135 goto load_err; 135 goto load_err;
136 136
137#ifdef HAVE_MMC /* load only the header for now */ 137#ifdef HAVE_MMC /* load only the header for now */
@@ -140,17 +140,17 @@ static void load_voicefile(void)
140 load_size = file_size; 140 load_size = file_size;
141#endif 141#endif
142 142
143 got_size = read(filehandle, mp3buf, load_size); 143 got_size = read(filehandle, audiobuf, load_size);
144 if (got_size == load_size /* success */ 144 if (got_size == load_size /* success */
145 && ((struct voicefile*)mp3buf)->table /* format check */ 145 && ((struct voicefile*)audiobuf)->table /* format check */
146 == offsetof(struct voicefile, index)) 146 == offsetof(struct voicefile, index))
147 { 147 {
148 p_voicefile = (struct voicefile*)mp3buf; 148 p_voicefile = (struct voicefile*)audiobuf;
149 149
150 /* thumbnail buffer is the remaining space behind */ 150 /* thumbnail buffer is the remaining space behind */
151 p_thumbnail = mp3buf + file_size; 151 p_thumbnail = audiobuf + file_size;
152 p_thumbnail += (long)p_thumbnail % 2; /* 16-bit align */ 152 p_thumbnail += (long)p_thumbnail % 2; /* 16-bit align */
153 size_for_thumbnail = mp3end - p_thumbnail; 153 size_for_thumbnail = audiobufend - p_thumbnail;
154 } 154 }
155 else 155 else
156 goto load_err; 156 goto load_err;
@@ -160,7 +160,7 @@ static void load_voicefile(void)
160 load_size = (p_voicefile->id1_max + p_voicefile->id2_max) 160 load_size = (p_voicefile->id1_max + p_voicefile->id2_max)
161 * sizeof(struct clip_entry); 161 * sizeof(struct clip_entry);
162 got_size = read(filehandle, 162 got_size = read(filehandle,
163 mp3buf + offsetof(struct voicefile, index), load_size); 163 audiobuf + offsetof(struct voicefile, index), load_size);
164 if (got_size != load_size) /* read error */ 164 if (got_size != load_size) /* read error */
165 goto load_err; 165 goto load_err;
166#else 166#else
@@ -356,7 +356,7 @@ static unsigned char* get_clip(long id, long* p_size)
356 clipsize = p_voicefile->index[id].size; 356 clipsize = p_voicefile->index[id].size;
357 if (clipsize == 0) /* clip not included in voicefile */ 357 if (clipsize == 0) /* clip not included in voicefile */
358 return NULL; 358 return NULL;
359 clipbuf = mp3buf + p_voicefile->index[id].offset; 359 clipbuf = audiobuf + p_voicefile->index[id].offset;
360 360
361#ifdef HAVE_MMC /* dynamic loading, on demand */ 361#ifdef HAVE_MMC /* dynamic loading, on demand */
362 if (!(clipsize & LOADED_MASK)) 362 if (!(clipsize & LOADED_MASK))
@@ -383,8 +383,8 @@ static void reset_state(void)
383{ 383{
384 queue_write = queue_read = 0; /* reset the queue */ 384 queue_write = queue_read = 0; /* reset the queue */
385 p_voicefile = NULL; /* indicate no voicefile (trashed) */ 385 p_voicefile = NULL; /* indicate no voicefile (trashed) */
386 p_thumbnail = mp3buf; /* whole space for thumbnail */ 386 p_thumbnail = audiobuf; /* whole space for thumbnail */
387 size_for_thumbnail = mp3end - mp3buf; 387 size_for_thumbnail = audiobufend - audiobuf;
388 p_silence = NULL; /* pause clip not accessible */ 388 p_silence = NULL; /* pause clip not accessible */
389} 389}
390 390
diff --git a/firmware/app.lds b/firmware/app.lds
index a7ca57e54e..45bd8567f2 100644
--- a/firmware/app.lds
+++ b/firmware/app.lds
@@ -88,10 +88,10 @@ _stackend = ADDR(.stack) + SIZEOF(.stack);
88 88
89_idatastart = ADDR(.idata); 89_idatastart = ADDR(.idata);
90 90
91/* FIXME: Where to put mp3 buffer? */ 91/* FIXME: Where to put audio buffer? */
92 92
93_mp3buffer = 0; 93_audiobuffer = 0;
94_mp3end = 0; 94_audioend = 0;
95 95
96/* Plugins are not supported on the Gmini*/ 96/* Plugins are not supported on the Gmini*/
97 97
@@ -217,16 +217,16 @@ SECTIONS
217 _end = .; 217 _end = .;
218 } > DRAM 218 } > DRAM
219 219
220 .mp3buf ALIGN(4) : 220 .audiobuf ALIGN(4) :
221 { 221 {
222 _mp3buffer = .; 222 _audiobuffer = .;
223 mp3buffer = .; 223 audiobuffer = .;
224 } > DRAM 224 } > DRAM
225 225
226 .mp3end ENDADDR: 226 .audiobufend ENDADDR:
227 { 227 {
228 mp3end = .; 228 audiobufend = .;
229 _mp3end = .; 229 _audiobufend = .;
230 } > DRAM 230 } > DRAM
231 231
232 .plugin ENDADDR: 232 .plugin ENDADDR:
diff --git a/firmware/buffer.c b/firmware/buffer.c
index 180ded8268..d89d30b6ba 100644
--- a/firmware/buffer.c
+++ b/firmware/buffer.c
@@ -20,24 +20,24 @@
20#include "buffer.h" 20#include "buffer.h"
21 21
22#ifdef SIMULATOR 22#ifdef SIMULATOR
23unsigned char mp3buffer[(MEM*1024-256)*1024]; 23unsigned char audiobuffer[(MEM*1024-256)*1024];
24unsigned char *mp3end = mp3buffer + sizeof(mp3buffer); 24unsigned char *audiobufend = audiobuffer + sizeof(audiobuffer);
25#else 25#else
26/* defined in linker script */ 26/* defined in linker script */
27extern unsigned char mp3buffer[]; 27extern unsigned char audiobuffer[];
28#endif 28#endif
29 29
30unsigned char *mp3buf; 30unsigned char *audiobuf;
31 31
32void buffer_init(void) 32void buffer_init(void)
33{ 33{
34 mp3buf = mp3buffer; 34 audiobuf = audiobuffer;
35} 35}
36 36
37void *buffer_alloc(size_t size) 37void *buffer_alloc(size_t size)
38{ 38{
39 void *retval = mp3buf; 39 void *retval = audiobuf;
40 40
41 mp3buf += size; 41 audiobuf += size;
42 return retval; 42 return retval;
43} 43}
diff --git a/firmware/export/audio.h b/firmware/export/audio.h
index b276490ab3..6490aeaefd 100644
--- a/firmware/export/audio.h
+++ b/firmware/export/audio.h
@@ -35,10 +35,10 @@
35 35
36struct audio_debug 36struct audio_debug
37{ 37{
38 int mp3buflen; 38 int audiobuflen;
39 int mp3buf_write; 39 int audiobuf_write;
40 int mp3buf_swapwrite; 40 int audiobuf_swapwrite;
41 int mp3buf_read; 41 int audiobuf_read;
42 42
43 int last_dma_chunk_size; 43 int last_dma_chunk_size;
44 44
diff --git a/firmware/export/buffer.h b/firmware/export/buffer.h
index c031a4f213..bced85ecff 100644
--- a/firmware/export/buffer.h
+++ b/firmware/export/buffer.h
@@ -21,12 +21,12 @@
21 21
22/* defined in linker script */ 22/* defined in linker script */
23#ifdef SIMULATOR 23#ifdef SIMULATOR
24extern unsigned char *mp3end; 24extern unsigned char *audiobufend;
25#else 25#else
26extern unsigned char mp3end[]; 26extern unsigned char audiobufend[];
27#endif 27#endif
28 28
29extern unsigned char *mp3buf; 29extern unsigned char *audiobuf;
30 30
31void buffer_init(void); 31void buffer_init(void);
32void *buffer_alloc(size_t size); 32void *buffer_alloc(size_t size);
diff --git a/firmware/mp3data.c b/firmware/mp3data.c
index 7b6da1144f..7a8af34d56 100644
--- a/firmware/mp3data.c
+++ b/firmware/mp3data.c
@@ -273,12 +273,12 @@ static int buf_getbyte(int fd, unsigned char *c)
273{ 273{
274 if(fnf_read_index < fnf_buf_len) 274 if(fnf_read_index < fnf_buf_len)
275 { 275 {
276 *c = mp3buf[fnf_read_index++]; 276 *c = audiobuf[fnf_read_index++];
277 return 1; 277 return 1;
278 } 278 }
279 else 279 else
280 { 280 {
281 fnf_buf_len = read(fd, mp3buf, mp3end - mp3buf); 281 fnf_buf_len = read(fd, audiobuf, audiobufend - audiobuf);
282 if(fnf_buf_len < 0) 282 if(fnf_buf_len < 0)
283 return -1; 283 return -1;
284 284
@@ -286,7 +286,7 @@ static int buf_getbyte(int fd, unsigned char *c)
286 286
287 if(fnf_buf_len > 0) 287 if(fnf_buf_len > 0)
288 { 288 {
289 *c = mp3buf[fnf_read_index++]; 289 *c = audiobuf[fnf_read_index++];
290 return 1; 290 return 1;
291 } 291 }
292 else 292 else
@@ -302,7 +302,7 @@ static int buf_seek(int fd, int len)
302 { 302 {
303 len = fnf_read_index - fnf_buf_len; 303 len = fnf_read_index - fnf_buf_len;
304 304
305 fnf_buf_len = read(fd, mp3buf, mp3end - mp3buf); 305 fnf_buf_len = read(fd, audiobuf, audiobufend - audiobuf);
306 if(fnf_buf_len < 0) 306 if(fnf_buf_len < 0)
307 return -1; 307 return -1;
308 308
@@ -330,7 +330,7 @@ unsigned long buf_find_next_frame(int fd, long *offset, long max_offset,
330 return __find_next_frame(fd, offset, max_offset, last_header, buf_getbyte); 330 return __find_next_frame(fd, offset, max_offset, last_header, buf_getbyte);
331} 331}
332 332
333static int mp3buflen; 333static int audiobuflen;
334static int mem_pos; 334static int mem_pos;
335static int mem_cnt; 335static int mem_cnt;
336static int mem_maxlen; 336static int mem_maxlen;
@@ -339,8 +339,8 @@ static int mem_getbyte(int dummy, unsigned char *c)
339{ 339{
340 dummy = dummy; 340 dummy = dummy;
341 341
342 *c = mp3buf[mem_pos++]; 342 *c = audiobuf[mem_pos++];
343 if(mem_pos >= mp3buflen) 343 if(mem_pos >= audiobuflen)
344 mem_pos = 0; 344 mem_pos = 0;
345 345
346 if(mem_cnt++ >= mem_maxlen) 346 if(mem_cnt++ >= mem_maxlen)
@@ -352,7 +352,7 @@ static int mem_getbyte(int dummy, unsigned char *c)
352unsigned long mem_find_next_frame(int startpos, long *offset, long max_offset, 352unsigned long mem_find_next_frame(int startpos, long *offset, long max_offset,
353 unsigned long last_header) 353 unsigned long last_header)
354{ 354{
355 mp3buflen = mp3end - mp3buf; 355 audiobuflen = audiobufend - audiobuf;
356 mem_pos = startpos; 356 mem_pos = startpos;
357 mem_cnt = 0; 357 mem_cnt = 0;
358 mem_maxlen = max_offset; 358 mem_maxlen = max_offset;
diff --git a/firmware/mpeg.c b/firmware/mpeg.c
index 79265e4452..a7d5480706 100644
--- a/firmware/mpeg.c
+++ b/firmware/mpeg.c
@@ -313,10 +313,10 @@ static struct event_queue mpeg_queue;
313static long mpeg_stack[(DEFAULT_STACK_SIZE + 0x1000)/sizeof(long)]; 313static long mpeg_stack[(DEFAULT_STACK_SIZE + 0x1000)/sizeof(long)];
314static const char mpeg_thread_name[] = "mpeg"; 314static const char mpeg_thread_name[] = "mpeg";
315 315
316static int mp3buflen; 316static int audiobuflen;
317static int mp3buf_write; 317static int audiobuf_write;
318static int mp3buf_swapwrite; 318static int audiobuf_swapwrite;
319static int mp3buf_read; 319static int audiobuf_read;
320 320
321static int last_dma_chunk_size; 321static int last_dma_chunk_size;
322 322
@@ -410,10 +410,10 @@ void audio_set_buffer_margin(int seconds)
410 410
411void audio_get_debugdata(struct audio_debug *dbgdata) 411void audio_get_debugdata(struct audio_debug *dbgdata)
412{ 412{
413 dbgdata->mp3buflen = mp3buflen; 413 dbgdata->audiobuflen = audiobuflen;
414 dbgdata->mp3buf_write = mp3buf_write; 414 dbgdata->audiobuf_write = audiobuf_write;
415 dbgdata->mp3buf_swapwrite = mp3buf_swapwrite; 415 dbgdata->audiobuf_swapwrite = audiobuf_swapwrite;
416 dbgdata->mp3buf_read = mp3buf_read; 416 dbgdata->audiobuf_read = audiobuf_read;
417 417
418 dbgdata->last_dma_chunk_size = last_dma_chunk_size; 418 dbgdata->last_dma_chunk_size = last_dma_chunk_size;
419 419
@@ -457,17 +457,17 @@ static int dbg_cnt2us(unsigned int cnt)
457 457
458static int get_unplayed_space(void) 458static int get_unplayed_space(void)
459{ 459{
460 int space = mp3buf_write - mp3buf_read; 460 int space = audiobuf_write - audiobuf_read;
461 if (space < 0) 461 if (space < 0)
462 space += mp3buflen; 462 space += audiobuflen;
463 return space; 463 return space;
464} 464}
465 465
466static int get_playable_space(void) 466static int get_playable_space(void)
467{ 467{
468 int space = mp3buf_swapwrite - mp3buf_read; 468 int space = audiobuf_swapwrite - audiobuf_read;
469 if (space < 0) 469 if (space < 0)
470 space += mp3buflen; 470 space += audiobuflen;
471 return space; 471 return space;
472} 472}
473 473
@@ -479,33 +479,33 @@ static int get_unplayed_space_current_song(void)
479 { 479 {
480 int track_offset = (tag_read_idx+1) & MAX_ID3_TAGS_MASK; 480 int track_offset = (tag_read_idx+1) & MAX_ID3_TAGS_MASK;
481 481
482 space = id3tags[track_offset].mempos - mp3buf_read; 482 space = id3tags[track_offset].mempos - audiobuf_read;
483 } 483 }
484 else 484 else
485 { 485 {
486 space = mp3buf_write - mp3buf_read; 486 space = audiobuf_write - audiobuf_read;
487 } 487 }
488 488
489 if (space < 0) 489 if (space < 0)
490 space += mp3buflen; 490 space += audiobuflen;
491 491
492 return space; 492 return space;
493} 493}
494 494
495static int get_unswapped_space(void) 495static int get_unswapped_space(void)
496{ 496{
497 int space = mp3buf_write - mp3buf_swapwrite; 497 int space = audiobuf_write - audiobuf_swapwrite;
498 if (space < 0) 498 if (space < 0)
499 space += mp3buflen; 499 space += audiobuflen;
500 return space; 500 return space;
501} 501}
502 502
503#if CONFIG_HWCODEC == MAS3587F 503#if CONFIG_HWCODEC == MAS3587F
504static int get_unsaved_space(void) 504static int get_unsaved_space(void)
505{ 505{
506 int space = mp3buf_write - mp3buf_read; 506 int space = audiobuf_write - audiobuf_read;
507 if (space < 0) 507 if (space < 0)
508 space += mp3buflen; 508 space += audiobuflen;
509 return space; 509 return space;
510} 510}
511#endif /* #if CONFIG_HWCODEC == MAS3587F */ 511#endif /* #if CONFIG_HWCODEC == MAS3587F */
@@ -570,8 +570,8 @@ void rec_tick(void)
570 "mov #30,r3 \n" /* i_max = 30 */ 570 "mov #30,r3 \n" /* i_max = 30 */
571 "mov #0x40,r2 \n" /* mask for EOD check */ 571 "mov #0x40,r2 \n" /* mask for EOD check */
572 "mov #0,%0 \n" /* i = 0; */ 572 "mov #0,%0 \n" /* i = 0; */
573 "add %2,%1 \n" /* mp3buf_write -> cur_addr */ 573 "add %2,%1 \n" /* audiobuf_write -> cur_addr */
574 "add %2,%3 \n" /* mp3buflen -> end_addr */ 574 "add %2,%3 \n" /* audiobuflen -> end_addr */
575 "bra .r_start \n" 575 "bra .r_start \n"
576 "mov.b @%4,r1 \n" /* read PBDR (first time) */ 576 "mov.b @%4,r1 \n" /* read PBDR (first time) */
577 577
@@ -607,13 +607,13 @@ void rec_tick(void)
607 "bt .r_loop \n" /* yes: next pass */ 607 "bt .r_loop \n" /* yes: next pass */
608 608
609 ".r_end: \n" 609 ".r_end: \n"
610 "sub %2,%1 \n" /* cur_addr -> mp3buf_write */ 610 "sub %2,%1 \n" /* cur_addr -> audiobuf_write */
611 : /* outputs */ 611 : /* outputs */
612 /* %0 */ "=&r"(i), 612 /* %0 */ "=&r"(i),
613 /* %1, in & out */ "+r"(mp3buf_write) 613 /* %1, in & out */ "+r"(audiobuf_write)
614 : /* inputs */ 614 : /* inputs */
615 /* %2 */ "r"(mp3buf), 615 /* %2 */ "r"(audiobuf),
616 /* %3 */ "r"(mp3buflen), 616 /* %3 */ "r"(audiobuflen),
617 /* %4 */ "r"(PBDR_ADDR), 617 /* %4 */ "r"(PBDR_ADDR),
618 /* %5 = r0 */ "z"(&PADRH), 618 /* %5 = r0 */ "z"(&PADRH),
619 /* %6 */ "r"(0x4000000) 619 /* %6 */ "r"(0x4000000)
@@ -634,7 +634,7 @@ void rec_tick(void)
634 prerecord_timeout = current_tick + HZ; 634 prerecord_timeout = current_tick + HZ;
635 635
636 /* Store the write pointer every second */ 636 /* Store the write pointer every second */
637 prerecord_buffer[prerecord_index++] = mp3buf_write; 637 prerecord_buffer[prerecord_index++] = audiobuf_write;
638 638
639 /* Wrap if necessary */ 639 /* Wrap if necessary */
640 if(prerecord_index == prerecording_max_seconds) 640 if(prerecord_index == prerecording_max_seconds)
@@ -649,11 +649,11 @@ void rec_tick(void)
649 { 649 {
650 /* Signal to save the data if we are running out of buffer 650 /* Signal to save the data if we are running out of buffer
651 space */ 651 space */
652 num_bytes = mp3buf_write - mp3buf_read; 652 num_bytes = audiobuf_write - audiobuf_read;
653 if(num_bytes < 0) 653 if(num_bytes < 0)
654 num_bytes += mp3buflen; 654 num_bytes += audiobuflen;
655 655
656 if(mp3buflen - num_bytes < MPEG_RECORDING_LOW_WATER && !saving) 656 if(audiobuflen - num_bytes < MPEG_RECORDING_LOW_WATER && !saving)
657 { 657 {
658 saving = true; 658 saving = true;
659 queue_post(&mpeg_queue, MPEG_SAVE_DATA, 0); 659 queue_post(&mpeg_queue, MPEG_SAVE_DATA, 0);
@@ -673,10 +673,10 @@ void playback_tick(void)
673 673
674static void reset_mp3_buffer(void) 674static void reset_mp3_buffer(void)
675{ 675{
676 mp3buf_read = 0; 676 audiobuf_read = 0;
677 mp3buf_write = 0; 677 audiobuf_write = 0;
678 mp3buf_swapwrite = 0; 678 audiobuf_swapwrite = 0;
679 lowest_watermark_level = mp3buflen; 679 lowest_watermark_level = audiobuflen;
680} 680}
681 681
682 /* DMA transfer end interrupt callback */ 682 /* DMA transfer end interrupt callback */
@@ -688,14 +688,14 @@ static void transfer_end(unsigned char** ppbuf, int* psize)
688 int space_until_end_of_buffer; 688 int space_until_end_of_buffer;
689 int track_offset = (tag_read_idx+1) & MAX_ID3_TAGS_MASK; 689 int track_offset = (tag_read_idx+1) & MAX_ID3_TAGS_MASK;
690 690
691 mp3buf_read += last_dma_chunk_size; 691 audiobuf_read += last_dma_chunk_size;
692 if(mp3buf_read >= mp3buflen) 692 if(audiobuf_read >= audiobuflen)
693 mp3buf_read = 0; 693 audiobuf_read = 0;
694 694
695 /* First, check if we are on a track boundary */ 695 /* First, check if we are on a track boundary */
696 if (num_tracks_in_memory() > 1) 696 if (num_tracks_in_memory() > 1)
697 { 697 {
698 if (mp3buf_read == id3tags[track_offset].mempos) 698 if (audiobuf_read == id3tags[track_offset].mempos)
699 { 699 {
700 queue_post(&mpeg_queue, MPEG_TRACK_CHANGE, 0); 700 queue_post(&mpeg_queue, MPEG_TRACK_CHANGE, 0);
701 track_offset = (track_offset+1) & MAX_ID3_TAGS_MASK; 701 track_offset = (track_offset+1) & MAX_ID3_TAGS_MASK;
@@ -704,7 +704,7 @@ static void transfer_end(unsigned char** ppbuf, int* psize)
704 704
705 unplayed_space_left = get_unplayed_space(); 705 unplayed_space_left = get_unplayed_space();
706 706
707 space_until_end_of_buffer = mp3buflen - mp3buf_read; 707 space_until_end_of_buffer = audiobuflen - audiobuf_read;
708 708
709 if(!filling && unplayed_space_left < low_watermark) 709 if(!filling && unplayed_space_left < low_watermark)
710 { 710 {
@@ -722,18 +722,18 @@ static void transfer_end(unsigned char** ppbuf, int* psize)
722 if (num_tracks_in_memory() > 1) 722 if (num_tracks_in_memory() > 1)
723 { 723 {
724 /* will we move across the track boundary? */ 724 /* will we move across the track boundary? */
725 if (( mp3buf_read < id3tags[track_offset].mempos ) && 725 if (( audiobuf_read < id3tags[track_offset].mempos ) &&
726 ((mp3buf_read+last_dma_chunk_size) > 726 ((audiobuf_read+last_dma_chunk_size) >
727 id3tags[track_offset].mempos )) 727 id3tags[track_offset].mempos ))
728 { 728 {
729 /* Make sure that we end exactly on the boundary */ 729 /* Make sure that we end exactly on the boundary */
730 last_dma_chunk_size = id3tags[track_offset].mempos 730 last_dma_chunk_size = id3tags[track_offset].mempos
731 - mp3buf_read; 731 - audiobuf_read;
732 } 732 }
733 } 733 }
734 734
735 *psize = last_dma_chunk_size & 0xffff; 735 *psize = last_dma_chunk_size & 0xffff;
736 *ppbuf = mp3buf + mp3buf_read; 736 *ppbuf = audiobuf + audiobuf_read;
737 id3tags[tag_read_idx].id3.offset += last_dma_chunk_size; 737 id3tags[tag_read_idx].id3.offset += last_dma_chunk_size;
738 738
739 /* Update the watermark debug level */ 739 /* Update the watermark debug level */
@@ -785,7 +785,7 @@ static int add_track_to_tag_list(const char *filename)
785 DEBUGF("Bad mp3\n"); 785 DEBUGF("Bad mp3\n");
786 return -1; 786 return -1;
787 } 787 }
788 id3tags[tag_write_idx].mempos = mp3buf_write; 788 id3tags[tag_write_idx].mempos = audiobuf_write;
789 id3tags[tag_write_idx].id3.elapsed = 0; 789 id3tags[tag_write_idx].id3.elapsed = 0;
790 790
791 tag_write_idx = (tag_write_idx+1) & MAX_ID3_TAGS_MASK; 791 tag_write_idx = (tag_write_idx+1) & MAX_ID3_TAGS_MASK;
@@ -932,9 +932,9 @@ static void start_playback_if_ready(void)
932{ 932{
933 int playable_space; 933 int playable_space;
934 934
935 playable_space = mp3buf_swapwrite - mp3buf_read; 935 playable_space = audiobuf_swapwrite - audiobuf_read;
936 if(playable_space < 0) 936 if(playable_space < 0)
937 playable_space += mp3buflen; 937 playable_space += audiobuflen;
938 938
939 /* See if we have started playing yet. If not, do it. */ 939 /* See if we have started playing yet. If not, do it. */
940 if(play_pending || dma_underrun) 940 if(play_pending || dma_underrun)
@@ -950,7 +950,7 @@ static void start_playback_if_ready(void)
950 playing = true; 950 playing = true;
951 951
952 last_dma_chunk_size = MIN(0x2000, get_unplayed_space_current_song()); 952 last_dma_chunk_size = MIN(0x2000, get_unplayed_space_current_song());
953 mp3_play_data(mp3buf + mp3buf_read, last_dma_chunk_size, transfer_end); 953 mp3_play_data(audiobuf + audiobuf_read, last_dma_chunk_size, transfer_end);
954 dma_underrun = false; 954 dma_underrun = false;
955 955
956 if (!paused) 956 if (!paused)
@@ -989,19 +989,19 @@ static bool swap_one_chunk(void)
989 amount_to_swap = MIN(MPEG_SWAP_CHUNKSIZE, free_space_left); 989 amount_to_swap = MIN(MPEG_SWAP_CHUNKSIZE, free_space_left);
990 } 990 }
991 991
992 if(mp3buf_write < mp3buf_swapwrite) 992 if(audiobuf_write < audiobuf_swapwrite)
993 amount_to_swap = MIN(mp3buflen - mp3buf_swapwrite, 993 amount_to_swap = MIN(audiobuflen - audiobuf_swapwrite,
994 amount_to_swap); 994 amount_to_swap);
995 else 995 else
996 amount_to_swap = MIN(mp3buf_write - mp3buf_swapwrite, 996 amount_to_swap = MIN(audiobuf_write - audiobuf_swapwrite,
997 amount_to_swap); 997 amount_to_swap);
998 998
999 bitswap(mp3buf + mp3buf_swapwrite, amount_to_swap); 999 bitswap(audiobuf + audiobuf_swapwrite, amount_to_swap);
1000 1000
1001 mp3buf_swapwrite += amount_to_swap; 1001 audiobuf_swapwrite += amount_to_swap;
1002 if(mp3buf_swapwrite >= mp3buflen) 1002 if(audiobuf_swapwrite >= audiobuflen)
1003 { 1003 {
1004 mp3buf_swapwrite = 0; 1004 audiobuf_swapwrite = 0;
1005 } 1005 }
1006 1006
1007 return true; 1007 return true;
@@ -1058,7 +1058,7 @@ static void mpeg_thread(void)
1058 else 1058 else
1059 { 1059 {
1060 DEBUGF("S R:%x W:%x SW:%x\n", 1060 DEBUGF("S R:%x W:%x SW:%x\n",
1061 mp3buf_read, mp3buf_write, mp3buf_swapwrite); 1061 audiobuf_read, audiobuf_write, audiobuf_swapwrite);
1062 queue_wait(&mpeg_queue, &ev); 1062 queue_wait(&mpeg_queue, &ev);
1063 } 1063 }
1064 1064
@@ -1169,9 +1169,9 @@ static void mpeg_thread(void)
1169 mp3_play_pause(false); 1169 mp3_play_pause(false);
1170 1170
1171 track_change(); 1171 track_change();
1172 mp3buf_read = id3tags[tag_read_idx].mempos; 1172 audiobuf_read = id3tags[tag_read_idx].mempos;
1173 last_dma_chunk_size = MIN(0x2000, get_unplayed_space_current_song()); 1173 last_dma_chunk_size = MIN(0x2000, get_unplayed_space_current_song());
1174 mp3_play_data(mp3buf + mp3buf_read, last_dma_chunk_size, transfer_end); 1174 mp3_play_data(audiobuf + audiobuf_read, last_dma_chunk_size, transfer_end);
1175 dma_underrun = false; 1175 dma_underrun = false;
1176 last_dma_tick = current_tick; 1176 last_dma_tick = current_tick;
1177 1177
@@ -1186,7 +1186,7 @@ static void mpeg_thread(void)
1186 } else if(unswapped_space_left && 1186 } else if(unswapped_space_left &&
1187 unswapped_space_left > unplayed_space_left) { 1187 unswapped_space_left > unplayed_space_left) {
1188 /* Stop swapping the data from the previous file */ 1188 /* Stop swapping the data from the previous file */
1189 mp3buf_swapwrite = mp3buf_read; 1189 audiobuf_swapwrite = audiobuf_read;
1190 play_pending = true; 1190 play_pending = true;
1191 } else { 1191 } else {
1192 playing = true; 1192 playing = true;
@@ -1304,16 +1304,16 @@ static void mpeg_thread(void)
1304 1304
1305 diffpos = curpos - newpos; 1305 diffpos = curpos - newpos;
1306 1306
1307 if(!filling && diffpos >= 0 && diffpos < mp3buflen) 1307 if(!filling && diffpos >= 0 && diffpos < audiobuflen)
1308 { 1308 {
1309 int unplayed_space_left, unswapped_space_left; 1309 int unplayed_space_left, unswapped_space_left;
1310 1310
1311 /* We are changing to a position that's already in 1311 /* We are changing to a position that's already in
1312 memory, so we just move the DMA read pointer. */ 1312 memory, so we just move the DMA read pointer. */
1313 mp3buf_read = mp3buf_write - diffpos; 1313 audiobuf_read = audiobuf_write - diffpos;
1314 if (mp3buf_read < 0) 1314 if (audiobuf_read < 0)
1315 { 1315 {
1316 mp3buf_read += mp3buflen; 1316 audiobuf_read += audiobuflen;
1317 } 1317 }
1318 1318
1319 unplayed_space_left = get_unplayed_space(); 1319 unplayed_space_left = get_unplayed_space();
@@ -1328,7 +1328,7 @@ static void mpeg_thread(void)
1328 if (unswapped_space_left > unplayed_space_left) 1328 if (unswapped_space_left > unplayed_space_left)
1329 { 1329 {
1330 DEBUGF("Moved swapwrite\n"); 1330 DEBUGF("Moved swapwrite\n");
1331 mp3buf_swapwrite = mp3buf_read; 1331 audiobuf_swapwrite = audiobuf_read;
1332 play_pending = true; 1332 play_pending = true;
1333 } 1333 }
1334 1334
@@ -1344,7 +1344,7 @@ static void mpeg_thread(void)
1344 /* resume will start at new position */ 1344 /* resume will start at new position */
1345 last_dma_chunk_size = 1345 last_dma_chunk_size =
1346 MIN(0x2000, get_unplayed_space_current_song()); 1346 MIN(0x2000, get_unplayed_space_current_song());
1347 mp3_play_data(mp3buf + mp3buf_read, 1347 mp3_play_data(audiobuf + audiobuf_read,
1348 last_dma_chunk_size, transfer_end); 1348 last_dma_chunk_size, transfer_end);
1349 dma_underrun = false; 1349 dma_underrun = false;
1350 } 1350 }
@@ -1402,12 +1402,12 @@ static void mpeg_thread(void)
1402 int next = (tag_read_idx+1) & MAX_ID3_TAGS_MASK; 1402 int next = (tag_read_idx+1) & MAX_ID3_TAGS_MASK;
1403 1403
1404 /* Reset the buffer */ 1404 /* Reset the buffer */
1405 mp3buf_write = id3tags[next].mempos; 1405 audiobuf_write = id3tags[next].mempos;
1406 1406
1407 /* Reset swapwrite unless we're still swapping current 1407 /* Reset swapwrite unless we're still swapping current
1408 track */ 1408 track */
1409 if (get_unplayed_space() <= get_playable_space()) 1409 if (get_unplayed_space() <= get_playable_space())
1410 mp3buf_swapwrite = mp3buf_write; 1410 audiobuf_swapwrite = audiobuf_write;
1411 1411
1412 close(mpeg_file); 1412 close(mpeg_file);
1413 remove_all_non_current_tags(); 1413 remove_all_non_current_tags();
@@ -1430,13 +1430,13 @@ static void mpeg_thread(void)
1430 } 1430 }
1431 1431
1432 case MPEG_NEED_DATA: 1432 case MPEG_NEED_DATA:
1433 free_space_left = mp3buf_read - mp3buf_write; 1433 free_space_left = audiobuf_read - audiobuf_write;
1434 1434
1435 /* We interpret 0 as "empty buffer" */ 1435 /* We interpret 0 as "empty buffer" */
1436 if(free_space_left <= 0) 1436 if(free_space_left <= 0)
1437 free_space_left = mp3buflen + free_space_left; 1437 free_space_left = audiobuflen + free_space_left;
1438 1438
1439 unplayed_space_left = mp3buflen - free_space_left; 1439 unplayed_space_left = audiobuflen - free_space_left;
1440 1440
1441 /* Make sure that we don't fill the entire buffer */ 1441 /* Make sure that we don't fill the entire buffer */
1442 free_space_left -= MPEG_HIGH_WATER; 1442 free_space_left -= MPEG_HIGH_WATER;
@@ -1458,7 +1458,7 @@ static void mpeg_thread(void)
1458 amount_to_read = free_space_left; 1458 amount_to_read = free_space_left;
1459 1459
1460 /* Don't read more than until the end of the buffer */ 1460 /* Don't read more than until the end of the buffer */
1461 amount_to_read = MIN(mp3buflen - mp3buf_write, amount_to_read); 1461 amount_to_read = MIN(audiobuflen - audiobuf_write, amount_to_read);
1462#if MEM == 8 1462#if MEM == 8
1463 amount_to_read = MIN(0x100000, amount_to_read); 1463 amount_to_read = MIN(0x100000, amount_to_read);
1464#endif /* #if MEM == 8 */ 1464#endif /* #if MEM == 8 */
@@ -1471,7 +1471,7 @@ static void mpeg_thread(void)
1471 { 1471 {
1472 DEBUGF("R\n"); 1472 DEBUGF("R\n");
1473 t1 = current_tick; 1473 t1 = current_tick;
1474 len = read(mpeg_file, mp3buf+mp3buf_write, amount_to_read); 1474 len = read(mpeg_file, audiobuf+audiobuf_write, amount_to_read);
1475 if(len > 0) 1475 if(len > 0)
1476 { 1476 {
1477 t2 = current_tick; 1477 t2 = current_tick;
@@ -1482,17 +1482,17 @@ static void mpeg_thread(void)
1482 data */ 1482 data */
1483 if (len < amount_to_read) 1483 if (len < amount_to_read)
1484 { 1484 {
1485 int tagptr = mp3buf_write + len - 128; 1485 int tagptr = audiobuf_write + len - 128;
1486 int i; 1486 int i;
1487 char *tag = "TAG"; 1487 char *tag = "TAG";
1488 int taglen = 128; 1488 int taglen = 128;
1489 1489
1490 for(i = 0;i < 3;i++) 1490 for(i = 0;i < 3;i++)
1491 { 1491 {
1492 if(tagptr >= mp3buflen) 1492 if(tagptr >= audiobuflen)
1493 tagptr -= mp3buflen; 1493 tagptr -= audiobuflen;
1494 1494
1495 if(mp3buf[tagptr] != tag[i]) 1495 if(audiobuf[tagptr] != tag[i])
1496 taglen = 0; 1496 taglen = 0;
1497 1497
1498 tagptr++; 1498 tagptr++;
@@ -1512,11 +1512,11 @@ static void mpeg_thread(void)
1512 } 1512 }
1513 } 1513 }
1514 1514
1515 mp3buf_write += len; 1515 audiobuf_write += len;
1516 1516
1517 if(mp3buf_write >= mp3buflen) 1517 if(audiobuf_write >= audiobuflen)
1518 { 1518 {
1519 mp3buf_write = 0; 1519 audiobuf_write = 0;
1520 DEBUGF("W\n"); 1520 DEBUGF("W\n");
1521 } 1521 }
1522 1522
@@ -1597,48 +1597,48 @@ static void mpeg_thread(void)
1597 startpos = prerecord_buffer[startpos]; 1597 startpos = prerecord_buffer[startpos];
1598 1598
1599 DEBUGF("Start looking at address %x (%x)\n", 1599 DEBUGF("Start looking at address %x (%x)\n",
1600 mp3buf+startpos, startpos); 1600 audiobuf+startpos, startpos);
1601 1601
1602 saved_header = mpeg_get_last_header(); 1602 saved_header = mpeg_get_last_header();
1603 1603
1604 mem_find_next_frame(startpos, &offset, 5000, 1604 mem_find_next_frame(startpos, &offset, 5000,
1605 saved_header); 1605 saved_header);
1606 1606
1607 mp3buf_read = startpos + offset; 1607 audiobuf_read = startpos + offset;
1608 1608
1609 DEBUGF("New mp3buf_read address: %x (%x)\n", 1609 DEBUGF("New audiobuf_read address: %x (%x)\n",
1610 mp3buf+mp3buf_read, mp3buf_read); 1610 audiobuf+audiobuf_read, audiobuf_read);
1611 1611
1612 /* Make room for headers */ 1612 /* Make room for headers */
1613 mp3buf_read -= MPEG_RESERVED_HEADER_SPACE; 1613 audiobuf_read -= MPEG_RESERVED_HEADER_SPACE;
1614 if(mp3buf_read < 0) 1614 if(audiobuf_read < 0)
1615 { 1615 {
1616 /* Clear the bottom half */ 1616 /* Clear the bottom half */
1617 memset(mp3buf, 0, 1617 memset(audiobuf, 0,
1618 mp3buf_read + MPEG_RESERVED_HEADER_SPACE); 1618 audiobuf_read + MPEG_RESERVED_HEADER_SPACE);
1619 1619
1620 /* And the top half */ 1620 /* And the top half */
1621 mp3buf_read += mp3buflen; 1621 audiobuf_read += audiobuflen;
1622 memset(mp3buf + mp3buf_read, 0, 1622 memset(audiobuf + audiobuf_read, 0,
1623 mp3buflen - mp3buf_read); 1623 audiobuflen - audiobuf_read);
1624 } 1624 }
1625 else 1625 else
1626 { 1626 {
1627 memset(mp3buf + mp3buf_read, 0, 1627 memset(audiobuf + audiobuf_read, 0,
1628 MPEG_RESERVED_HEADER_SPACE); 1628 MPEG_RESERVED_HEADER_SPACE);
1629 } 1629 }
1630 1630
1631 /* Copy the empty ID3 header */ 1631 /* Copy the empty ID3 header */
1632 startpos = mp3buf_read; 1632 startpos = audiobuf_read;
1633 for(i = 0;i < (int)sizeof(empty_id3_header);i++) 1633 for(i = 0;i < (int)sizeof(empty_id3_header);i++)
1634 { 1634 {
1635 mp3buf[startpos++] = empty_id3_header[i]; 1635 audiobuf[startpos++] = empty_id3_header[i];
1636 if(startpos == mp3buflen) 1636 if(startpos == audiobuflen)
1637 startpos = 0; 1637 startpos = 0;
1638 } 1638 }
1639 1639
1640 DEBUGF("New mp3buf_read address (reservation): %x\n", 1640 DEBUGF("New audiobuf_read address (reservation): %x\n",
1641 mp3buf+mp3buf_read); 1641 audiobuf+audiobuf_read);
1642 1642
1643 DEBUGF("Prerecording...\n"); 1643 DEBUGF("Prerecording...\n");
1644 } 1644 }
@@ -1650,11 +1650,11 @@ static void mpeg_thread(void)
1650 1650
1651 /* Advance the write pointer to make 1651 /* Advance the write pointer to make
1652 room for an ID3 tag plus a VBR header */ 1652 room for an ID3 tag plus a VBR header */
1653 mp3buf_write = MPEG_RESERVED_HEADER_SPACE; 1653 audiobuf_write = MPEG_RESERVED_HEADER_SPACE;
1654 memset(mp3buf, 0, MPEG_RESERVED_HEADER_SPACE); 1654 memset(audiobuf, 0, MPEG_RESERVED_HEADER_SPACE);
1655 1655
1656 /* Insert the ID3 header */ 1656 /* Insert the ID3 header */
1657 memcpy(mp3buf, empty_id3_header, 1657 memcpy(audiobuf, empty_id3_header,
1658 sizeof(empty_id3_header)); 1658 sizeof(empty_id3_header));
1659 1659
1660 DEBUGF("Recording...\n"); 1660 DEBUGF("Recording...\n");
@@ -1711,14 +1711,14 @@ static void mpeg_thread(void)
1711 /* saved_header is saved right before stopping 1711 /* saved_header is saved right before stopping
1712 the MAS */ 1712 the MAS */
1713 framelen = create_xing_header(mpeg_file, 0, 1713 framelen = create_xing_header(mpeg_file, 0,
1714 num_rec_bytes, mp3buf, 1714 num_rec_bytes, audiobuf,
1715 num_recorded_frames, 1715 num_recorded_frames,
1716 saved_header, NULL, 1716 saved_header, NULL,
1717 false); 1717 false);
1718 1718
1719 lseek(mpeg_file, MPEG_RESERVED_HEADER_SPACE-framelen, 1719 lseek(mpeg_file, MPEG_RESERVED_HEADER_SPACE-framelen,
1720 SEEK_SET); 1720 SEEK_SET);
1721 write(mpeg_file, mp3buf, framelen); 1721 write(mpeg_file, audiobuf, framelen);
1722 close(mpeg_file); 1722 close(mpeg_file);
1723 } 1723 }
1724 mpeg_file = -1; 1724 mpeg_file = -1;
@@ -1760,9 +1760,9 @@ static void mpeg_thread(void)
1760 if(amount_to_save >= 1800) 1760 if(amount_to_save >= 1800)
1761 { 1761 {
1762 /* Now find a frame boundary to split at */ 1762 /* Now find a frame boundary to split at */
1763 startpos = mp3buf_write - 1800; 1763 startpos = audiobuf_write - 1800;
1764 if(startpos < 0) 1764 if(startpos < 0)
1765 startpos += mp3buflen; 1765 startpos += audiobuflen;
1766 1766
1767 rc = mem_find_next_frame(startpos, &offset, 1800, 1767 rc = mem_find_next_frame(startpos, &offset, 1800,
1768 saved_header); 1768 saved_header);
@@ -1771,28 +1771,28 @@ static void mpeg_thread(void)
1771 /* offset will now contain the number of bytes to 1771 /* offset will now contain the number of bytes to
1772 add to startpos to find the frame boundary */ 1772 add to startpos to find the frame boundary */
1773 startpos += offset; 1773 startpos += offset;
1774 if(startpos >= mp3buflen) 1774 if(startpos >= audiobuflen)
1775 startpos -= mp3buflen; 1775 startpos -= audiobuflen;
1776 } 1776 }
1777 else 1777 else
1778 { 1778 {
1779 /* No header found. Let's save the whole buffer. */ 1779 /* No header found. Let's save the whole buffer. */
1780 startpos = mp3buf_write; 1780 startpos = audiobuf_write;
1781 } 1781 }
1782 } 1782 }
1783 else 1783 else
1784 { 1784 {
1785 /* Too few bytes recorded, timeout */ 1785 /* Too few bytes recorded, timeout */
1786 startpos = mp3buf_write; 1786 startpos = audiobuf_write;
1787 } 1787 }
1788 1788
1789 amount_to_save = startpos - mp3buf_read; 1789 amount_to_save = startpos - audiobuf_read;
1790 if(amount_to_save < 0) 1790 if(amount_to_save < 0)
1791 amount_to_save += mp3buflen; 1791 amount_to_save += audiobuflen;
1792 1792
1793 /* First save up to the end of the buffer */ 1793 /* First save up to the end of the buffer */
1794 writelen = MIN(amount_to_save, 1794 writelen = MIN(amount_to_save,
1795 mp3buflen - mp3buf_read); 1795 audiobuflen - audiobuf_read);
1796 1796
1797 if (mpeg_file < 0) /* delayed file opening */ 1797 if (mpeg_file < 0) /* delayed file opening */
1798 { 1798 {
@@ -1804,7 +1804,7 @@ static void mpeg_thread(void)
1804 1804
1805 if(writelen) 1805 if(writelen)
1806 { 1806 {
1807 rc = write(mpeg_file, mp3buf + mp3buf_read, writelen); 1807 rc = write(mpeg_file, audiobuf + audiobuf_read, writelen);
1808 if(rc < 0) 1808 if(rc < 0)
1809 { 1809 {
1810 if(errno == ENOSPC) 1810 if(errno == ENOSPC)
@@ -1826,7 +1826,7 @@ static void mpeg_thread(void)
1826 writelen = amount_to_save - writelen; 1826 writelen = amount_to_save - writelen;
1827 if(writelen) 1827 if(writelen)
1828 { 1828 {
1829 rc = write(mpeg_file, mp3buf, writelen); 1829 rc = write(mpeg_file, audiobuf, writelen);
1830 if(rc < 0) 1830 if(rc < 0)
1831 { 1831 {
1832 if(errno == ENOSPC) 1832 if(errno == ENOSPC)
@@ -1845,9 +1845,9 @@ static void mpeg_thread(void)
1845 } 1845 }
1846 1846
1847 /* Advance the buffer pointers */ 1847 /* Advance the buffer pointers */
1848 mp3buf_read += amount_to_save; 1848 audiobuf_read += amount_to_save;
1849 if(mp3buf_read >= mp3buflen) 1849 if(audiobuf_read >= audiobuflen)
1850 mp3buf_read -= mp3buflen; 1850 audiobuf_read -= audiobuflen;
1851 1851
1852 /* Close the current file */ 1852 /* Close the current file */
1853 rc = close(mpeg_file); 1853 rc = close(mpeg_file);
@@ -1867,23 +1867,23 @@ static void mpeg_thread(void)
1867 wrapped */ 1867 wrapped */
1868 if(amount_to_save < 0) 1868 if(amount_to_save < 0)
1869 { 1869 {
1870 amount_to_save += mp3buflen; 1870 amount_to_save += audiobuflen;
1871 } 1871 }
1872 1872
1873 DEBUGF("r: %x w: %x\n", mp3buf_read, mp3buf_write); 1873 DEBUGF("r: %x w: %x\n", audiobuf_read, audiobuf_write);
1874 DEBUGF("ats: %x\n", amount_to_save); 1874 DEBUGF("ats: %x\n", amount_to_save);
1875 1875
1876 /* Save data only if the buffer is getting full, 1876 /* Save data only if the buffer is getting full,
1877 or if we should stop recording */ 1877 or if we should stop recording */
1878 if(amount_to_save) 1878 if(amount_to_save)
1879 { 1879 {
1880 if(mp3buflen - 1880 if(audiobuflen -
1881 amount_to_save < MPEG_RECORDING_LOW_WATER || 1881 amount_to_save < MPEG_RECORDING_LOW_WATER ||
1882 stop_pending) 1882 stop_pending)
1883 { 1883 {
1884 /* Only save up to the end of the buffer */ 1884 /* Only save up to the end of the buffer */
1885 writelen = MIN(amount_to_save, 1885 writelen = MIN(amount_to_save,
1886 mp3buflen - mp3buf_read); 1886 audiobuflen - audiobuf_read);
1887 1887
1888 DEBUGF("wrl: %x\n", writelen); 1888 DEBUGF("wrl: %x\n", writelen);
1889 1889
@@ -1896,7 +1896,7 @@ static void mpeg_thread(void)
1896 panicf("recfile: %d", mpeg_file); 1896 panicf("recfile: %d", mpeg_file);
1897 } 1897 }
1898 1898
1899 rc = write(mpeg_file, mp3buf + mp3buf_read, 1899 rc = write(mpeg_file, audiobuf + audiobuf_read,
1900 writelen); 1900 writelen);
1901 1901
1902 if(rc < 0) 1902 if(rc < 0)
@@ -1914,9 +1914,9 @@ static void mpeg_thread(void)
1914 } 1914 }
1915 } 1915 }
1916 1916
1917 mp3buf_read += amount_to_save; 1917 audiobuf_read += amount_to_save;
1918 if(mp3buf_read >= mp3buflen) 1918 if(audiobuf_read >= audiobuflen)
1919 mp3buf_read = 0; 1919 audiobuf_read = 0;
1920 1920
1921 rc = fsync(mpeg_file); 1921 rc = fsync(mpeg_file);
1922 if(rc < 0) 1922 if(rc < 0)
@@ -2468,9 +2468,9 @@ unsigned long mpeg_num_recorded_bytes(void)
2468 if(index < 0) 2468 if(index < 0)
2469 index += prerecording_max_seconds; 2469 index += prerecording_max_seconds;
2470 2470
2471 num_bytes = mp3buf_write - prerecord_buffer[index]; 2471 num_bytes = audiobuf_write - prerecord_buffer[index];
2472 if(num_bytes < 0) 2472 if(num_bytes < 0)
2473 num_bytes += mp3buflen; 2473 num_bytes += audiobuflen;
2474 2474
2475 return num_bytes;; 2475 return num_bytes;;
2476 } 2476 }
@@ -2765,7 +2765,7 @@ void audio_init(void)
2765 mpeg_errno = 0; 2765 mpeg_errno = 0;
2766 2766
2767#ifndef SIMULATOR 2767#ifndef SIMULATOR
2768 mp3buflen = mp3end - mp3buf; 2768 audiobuflen = audiobufend - audiobuf;
2769 queue_init(&mpeg_queue); 2769 queue_init(&mpeg_queue);
2770#endif /* #ifndef SIMULATOR */ 2770#endif /* #ifndef SIMULATOR */
2771 create_thread(mpeg_thread, mpeg_stack, 2771 create_thread(mpeg_thread, mpeg_stack,
diff --git a/firmware/rolo.c b/firmware/rolo.c
index e2ef26b3aa..ca68596112 100644
--- a/firmware/rolo.c
+++ b/firmware/rolo.c
@@ -120,7 +120,7 @@ int rolo_load(const char* filename)
120 } 120 }
121 lseek(fd, FIRMWARE_OFFSET_FILE_DATA, SEEK_SET); 121 lseek(fd, FIRMWARE_OFFSET_FILE_DATA, SEEK_SET);
122 122
123 if (read(fd, mp3buf, length) != length) { 123 if (read(fd, audiobuf, length) != length) {
124 rolo_error("Error Reading File"); 124 rolo_error("Error Reading File");
125 return -1; 125 return -1;
126 } 126 }
@@ -128,7 +128,7 @@ int rolo_load(const char* filename)
128 checksum = 0; 128 checksum = 0;
129 129
130 for(i = 0;i < length;i++) { 130 for(i = 0;i < length;i++) {
131 checksum += mp3buf[i]; 131 checksum += audiobuf[i];
132 } 132 }
133 133
134 /* Verify checksum against file header */ 134 /* Verify checksum against file header */
@@ -162,12 +162,12 @@ int rolo_load(const char* filename)
162 lseek(fd, FIRMWARE_OFFSET_FILE_DATA, SEEK_SET); 162 lseek(fd, FIRMWARE_OFFSET_FILE_DATA, SEEK_SET);
163 163
164 /* verify that file can be read and descrambled */ 164 /* verify that file can be read and descrambled */
165 if ((mp3buf + (2*length)+4) >= mp3end) { 165 if ((audiobuf + (2*length)+4) >= audiobufend) {
166 rolo_error("Not enough room to load file"); 166 rolo_error("Not enough room to load file");
167 return -1; 167 return -1;
168 } 168 }
169 169
170 if (read(fd, &mp3buf[length], length) != (int)length) { 170 if (read(fd, &audiobuf[length], length) != (int)length) {
171 rolo_error("Error Reading File"); 171 rolo_error("Error Reading File");
172 return -1; 172 return -1;
173 } 173 }
@@ -175,7 +175,7 @@ int rolo_load(const char* filename)
175 lcd_puts(0, 1, "Descramble"); 175 lcd_puts(0, 1, "Descramble");
176 lcd_update(); 176 lcd_update();
177 177
178 checksum = descramble(mp3buf + length, mp3buf, length); 178 checksum = descramble(audiobuf + length, audiobuf, length);
179 179
180 /* Verify checksum against file header */ 180 /* Verify checksum against file header */
181 if (checksum != file_checksum) { 181 if (checksum != file_checksum) {
@@ -201,7 +201,7 @@ int rolo_load(const char* filename)
201 PAIOR = 0x0FA0; 201 PAIOR = 0x0FA0;
202#endif 202#endif
203#endif 203#endif
204 rolo_restart(mp3buf, ramstart, length); 204 rolo_restart(audiobuf, ramstart, length);
205 205
206 return 0; /* this is never reached */ 206 return 0; /* this is never reached */
207} 207}
diff --git a/firmware/rom.lds b/firmware/rom.lds
index 55346dc122..81c266ae4f 100644
--- a/firmware/rom.lds
+++ b/firmware/rom.lds
@@ -104,15 +104,15 @@ SECTIONS
104 _end = .; 104 _end = .;
105 } > DRAM 105 } > DRAM
106 106
107 .mp3buf : 107 .audiobuf :
108 { 108 {
109 . = ALIGN(0x4); 109 . = ALIGN(0x4);
110 _mp3buffer = .; 110 _audiobuffer = .;
111 } > DRAM 111 } > DRAM
112 112
113 .mp3end ENDADDR: 113 .audiobufend ENDADDR:
114 { 114 {
115 _mp3end = .; 115 _audiobufend = .;
116 } > DRAM 116 } > DRAM
117 117
118 .plugin ENDADDR: 118 .plugin ENDADDR: