summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjörn Stenberg <bjorn@haxx.se>2002-05-31 12:12:23 +0000
committerBjörn Stenberg <bjorn@haxx.se>2002-05-31 12:12:23 +0000
commitfa8cd2ca864e4cb5c85e869b1164d7521faa7867 (patch)
tree608371c5c89803f565e87187994c95d60112ce9c
parent1d3226563e0c9a909bfaf02897b815beb2128a91 (diff)
downloadrockbox-fa8cd2ca864e4cb5c85e869b1164d7521faa7867.tar.gz
rockbox-fa8cd2ca864e4cb5c85e869b1164d7521faa7867.zip
Check for more files to play
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@855 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/mpeg.c25
1 files changed, 18 insertions, 7 deletions
diff --git a/firmware/mpeg.c b/firmware/mpeg.c
index 48da48177f..ffa427c6ed 100644
--- a/firmware/mpeg.c
+++ b/firmware/mpeg.c
@@ -271,6 +271,24 @@ void IMIA1(void)
271 TSR1 &= ~0x01; 271 TSR1 &= ~0x01;
272} 272}
273 273
274static int new_file(void)
275{
276 char *trackname;
277
278 trackname = peek_next_track(0);
279 if ( !trackname )
280 return -1;
281
282 debugf("playing %s\n", trackname);
283 mpeg_file = open(trackname, O_RDONLY);
284 if(mpeg_file < 0)
285 {
286 debugf("Couldn't open file\n");
287 return -1;
288 }
289 return 0;
290}
291
274static void mpeg_thread(void) 292static void mpeg_thread(void)
275{ 293{
276 struct event ev; 294 struct event ev;
@@ -394,12 +412,6 @@ static void mpeg_thread(void)
394 boundary */ 412 boundary */
395 mp3buf_write &= 0xfffffffe; 413 mp3buf_write &= 0xfffffffe;
396 414
397#if 1
398 /* No more data to play */
399 DEBUGF("Finished playing\n");
400 filling = false;
401#else
402 next_track();
403 if(new_file() < 0) 415 if(new_file() < 0)
404 { 416 {
405 /* No more data to play */ 417 /* No more data to play */
@@ -412,7 +424,6 @@ static void mpeg_thread(void)
412 /* Tell ourselves that we want more data */ 424 /* Tell ourselves that we want more data */
413 queue_post(&mpeg_queue, MPEG_NEED_DATA, 0); 425 queue_post(&mpeg_queue, MPEG_NEED_DATA, 0);
414 } 426 }
415#endif
416 } 427 }
417 } 428 }
418 break; 429 break;