summaryrefslogtreecommitdiffstats
path: root/firmware
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2005-09-05 23:36:29 +0000
committerJens Arnold <amiconn@rockbox.org>2005-09-05 23:36:29 +0000
commitfbaf503d0d5506d4b4867e3b9bd468bb1bae381b (patch)
tree894377350a601e54cb9ec38ec0400dbf3de421a3 /firmware
parent1e0b5aabcb9637b7e7423bc1ca198899be98abbd (diff)
downloadrockbox-fbaf503d0d5506d4b4867e3b9bd468bb1bae381b.tar.gz
rockbox-fbaf503d0d5506d4b4867e3b9bd468bb1bae381b.zip
Archos recording: yield() within audio_beep() to avoid starving the mpeg thread; recording beep should no longer disturb prerecording.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7475 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/mpeg.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/firmware/mpeg.c b/firmware/mpeg.c
index 831463a671..ff74cf96a8 100644
--- a/firmware/mpeg.c
+++ b/firmware/mpeg.c
@@ -2512,6 +2512,7 @@ void audio_beep(int duration)
* it doesn't affect the (pre-)recording. */
mas_codec_writereg(0, shadow_codec_reg0 ^ 1);
mas_codec_writereg(0, shadow_codec_reg0);
+ yield();
}
while (current_tick - starttick < duration);
}
@@ -2681,7 +2682,7 @@ void audio_play(int offset)
} while(1);
#else /* !SIMULATOR */
is_playing = true;
-
+
queue_post(&mpeg_queue, MPEG_PLAY, (void*)offset);
#endif /* !SIMULATOR */