diff options
Diffstat (limited to 'games/mirrormagic/patches/patch-ad')
-rw-r--r-- | games/mirrormagic/patches/patch-ad | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/games/mirrormagic/patches/patch-ad b/games/mirrormagic/patches/patch-ad new file mode 100644 index 00000000000..3534a7c40d5 --- /dev/null +++ b/games/mirrormagic/patches/patch-ad @@ -0,0 +1,43 @@ +$NetBSD: patch-ad,v 1.1 2001/07/05 22:13:08 kristerw Exp $ +--- src/libgame/sound.c.orig Sun Dec 31 11:47:19 2000 ++++ src/libgame/sound.c Thu Jul 5 23:37:59 2001 +@@ -291,7 +291,30 @@ + - 2 buffers / 512 bytes (giving 1/16 second resolution for 8 kHz) + - (with stereo the effective buffer size will shrink to 256) + => fragment_size = 0x00020009 */ ++#if defined(PLATFORM_NETBSD) ++ { ++ audio_info_t a_info; + ++ AUDIO_INITINFO(&a_info); ++ a_info.play.encoding = AUDIO_ENCODING_LINEAR8; ++ a_info.play.precision = 8; ++ a_info.play.channels = 2; ++ a_info.play.sample_rate = sample_rate; ++ a_info.blocksize = fragment_size; ++ if (ioctl(audio.device_fd, AUDIO_SETINFO, &a_info) < 0) ++ { ++ /* Try to disable stereo. */ ++ a_info.play.channels = 1; ++ stereo = FALSE; ++ if (ioctl(audio.device_fd, AUDIO_SETINFO, &a_info) < 0) ++ { ++ Error(ERR_EXIT_SOUND_SERVER, ++ "cannot set sample rate of /dev/audio - no sounds"); ++ playing_sounds = 0; ++ } ++ } ++ } ++#else + if (ioctl(audio.device_fd,SNDCTL_DSP_SETFRAGMENT,&fragment_spec) < 0) + Error(ERR_EXIT_SOUND_SERVER, + "cannot set fragment size of /dev/dsp - no sounds"); +@@ -319,7 +342,7 @@ + if (ioctl(audio.device_fd, SNDCTL_DSP_GETBLKSIZE,&fragment_size) < 0) + Error(ERR_EXIT_SOUND_SERVER, + "cannot get fragment size of /dev/dsp - no sounds"); +- ++#endif + max_sample_size = fragment_size / (stereo ? 2 : 1); + } + |