From fe8a7e7f50bd36d846211909c337fe2ab6354b8b Mon Sep 17 00:00:00 2001 From: Linus Nielsen Feltzing Date: Thu, 8 Aug 2002 14:51:58 +0000 Subject: Now handles watermark on MPEG_NEXT git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1616 a1c6a512-1295-4272-9138-f99709370657 --- firmware/mpeg.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'firmware') diff --git a/firmware/mpeg.c b/firmware/mpeg.c index ce50115f05..23af9d480b 100644 --- a/firmware/mpeg.c +++ b/firmware/mpeg.c @@ -735,17 +735,20 @@ static void mpeg_thread(void) if ( num_tracks_in_memory() > 1 ) { int track_offset = (tag_read_idx+1) & MAX_ID3_TAGS_MASK; mp3buf_read = id3tags[track_offset]->mempos; - playing = true; - last_dma_tick = current_tick; init_dma(); - start_dma(); - track_change(); + last_dma_tick = current_tick; /* should we start reading more data? */ if(!filling && (get_unplayed_space() < MPEG_LOW_WATER)) { filling = true; queue_post(&mpeg_queue, MPEG_NEED_DATA, 0); + play_pending = true; + } else { + playing = true; + start_dma(); } + + track_change(); } else { reset_mp3_buffer(); -- cgit v1.2.3