summaryrefslogtreecommitdiff
path: root/uisimulator/sdl
diff options
context:
space:
mode:
Diffstat (limited to 'uisimulator/sdl')
-rw-r--r--uisimulator/sdl/sound.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/uisimulator/sdl/sound.c b/uisimulator/sdl/sound.c
index 39abc85aca..428983a1b8 100644
--- a/uisimulator/sdl/sound.c
+++ b/uisimulator/sdl/sound.c
@@ -96,6 +96,11 @@ void pcm_play_dma_start(const void *addr, size_t size)
96void pcm_play_dma_stop(void) 96void pcm_play_dma_stop(void)
97{ 97{
98 SDL_PauseAudio(1); 98 SDL_PauseAudio(1);
99 if (udata.debug != NULL) {
100 fclose(udata.debug);
101 udata.debug = NULL;
102 DEBUGF("Audio debug file closed\n");
103 }
99} 104}
100 105
101void pcm_play_dma_pause(bool pause) 106void pcm_play_dma_pause(bool pause)
@@ -113,6 +118,11 @@ size_t pcm_get_bytes_waiting(void)
113 118
114extern int sim_volume; /* in firmware/sound.c */ 119extern int sim_volume; /* in firmware/sound.c */
115void write_to_soundcard(struct pcm_udata *udata) { 120void write_to_soundcard(struct pcm_udata *udata) {
121 if (debug_audio && (udata->debug == NULL)) {
122 udata->debug = fopen("audiodebug.raw", "ab");
123 DEBUGF("Audio debug file open\n");
124 }
125
116 if (cvt.needed) { 126 if (cvt.needed) {
117 Uint32 rd = udata->num_in; 127 Uint32 rd = udata->num_in;
118 Uint32 wr = (double)rd * cvt.len_ratio; 128 Uint32 wr = (double)rd * cvt.len_ratio;
@@ -292,8 +302,9 @@ void pcm_play_dma_init(void)
292 302
293 if (debug_audio) { 303 if (debug_audio) {
294 udata.debug = fopen("audiodebug.raw", "wb"); 304 udata.debug = fopen("audiodebug.raw", "wb");
305 DEBUGF("Audio debug file open\n");
295 } 306 }
296 307
297 /* Set 16-bit stereo audio at 44Khz */ 308 /* Set 16-bit stereo audio at 44Khz */
298 wanted_spec.freq = 44100; 309 wanted_spec.freq = 44100;
299 wanted_spec.format = AUDIO_S16SYS; 310 wanted_spec.format = AUDIO_S16SYS;