From d2e9d4bfa1a191fc0d6f4771ab6245f81eae4fda Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Sun, 21 Aug 2005 21:30:27 +0000 Subject: [PATCH] It turns out that the nosound mikmod driver works perfectly well for our use. :) --- VisualC.zip | Bin 115888 -> 115882 bytes mikmod/Makefile.am | 1 - mikmod/drv_nos.c | 9 ++++++ mikmod/drv_sdl.c | 79 --------------------------------------------- mikmod/mdreg.c | 3 -- mikmod/mikmod.h | 2 -- music.c | 17 +++++----- 7 files changed, 17 insertions(+), 94 deletions(-) delete mode 100644 mikmod/drv_sdl.c diff --git a/VisualC.zip b/VisualC.zip index f0a723a9cbeabe6de7e9151060047a5a3faeb246..f7a1ba492aa66542d0d1197f4ccf010602895b1c 100644 GIT binary patch delta 1542 zcmZvcc~H|w6vwm4k0TlmISq&eiy{UvA*FyA4nZ&>oC?UH93I@tF@wa&q==%(0A&JQ zf|Vf=6vToW6idPxg?fN;DxzG9C>0Pj21Kz5w6%Y@Gdu75-uvv^*+2GsB}?g2mXfNs zI|f;SlCMq4+LU}%gS8H`%Fe#B?U#z6BtQbb5o9?*GdA(~4xuHRpp4oqBQDz&7Up13 zC`x|8dNy5#GX6KL1MWFIW}}rkLzFoDcIVA@yJE0HU>Iah1X$(x^a|eKR7}~QG+b(8 z+zXq6#RaNou}&0kuyV6MKPKte=Q+u2tjWCc4?0Bd9j+p*Hig7Xgon&l<2m}G^FEcd zHq&G2WLoqfZNRcHD?@6Z#fJMm!;?%ZV!nQqNP9SW?FpDOOqU*{-u5{y{R=Lw(w9H# zb;)vr!sp$wKjJ2OOcG2;C5)EjQ#(aeDtR<|B8Jo;p(Y$Ein1DwdwjoGD<-} zM&*eL?<$Wcle~4zwp(l3&UYFPO_=X0@wtC~B;MaQdNtLX@M|>P1^v=%Jff<-|A14* zC)`?ki1RAXsqv@5TxSNdpQtAopibtN7hPrMO04`u!QSDn8hMs=Tim3-lveXQDm<_j z_^@&mtJrZpq@=U8n-$RYMz7EGgbtTJMG@=X^baw)WB1JV3 zb^)`;$CKu2V3YkeG~!^&ee#5xclpa1RAKH^x2t$0Z(?Dp=+Uc8y`fX#hRyS%xNO$6qcAODY>KWpoGR9c#a)uGlltHl<-&QYum$3Y*=>{PfbP-l?W9&Mh!bwW`}NIN3C)YSb_|B?F2rG!o!uk0W!ffwkg|Po#L3 zQ*GH1d}__WwI_4K@prSu7cM_;H=p%?HaVgoeT7;aUO&J0;mpHW?NbT3PId|2bU>dE^t zxAjuz7|&k6S5$|_SndtPQZ3r9>~dkyx_GmnyIs2e(8dMtJOFkzs+qq@XdUzD)yv_E zY3e0`gktSlU(%sSz^umCHPf&YmNx*OPSaPQb88&~6O#@fXh>?Q4GKa%%a<&eqKzG_ zt+IyH?#AJdb`<35-mviqE`50HIW18=a$6rpAYy$!KCjCOLF^Fuj~ARpu49%Irv;}Y zh*92&EZ19bd#|5E(3cNBAYfN6tEa?wT1zUU z+p(_O5u84X$PEYX6$0XFx#jq!qEO!M0IiEzwj;UOK%Nj-8p-YETlYIg13w4>1(90~ zB#M9q#veg(nh|Z7C<4})b4$qv*d+p1Kocr806NBB8O32LuZ0(zz$yrZKnHG;y#%mf zMFVgLV)&r}1b`XHXao#k1i6jC3;YCM%fmfr+ayEO;K?Q#@)$mAk|9#KsTt7FwggCS z1$da-46M-^|0E;Lzz*H@EkQWyMoQ4B1z4dMO_q5Xf^euCagZmgf*eR{m0dd50<6K1 zT!*3;tzdpDh(MpSmB$TGUks?2Tt^h=s-q4}6ayfnqTRAO!p0HtgVt%L2nK~p%FZ!B za&Ri#9@rl_ZmoXho$&&tH)xSh=|QFZadRll2k&YhvcXCDCi{?{GnGEt`5=43^V4Et zp}9$)L*3;aF8r|5Nh`}sbEgdBH)4pipSmjK;V(wey;8T&N38#mwdSs;?DvS4bZLuQ z$bj36t=SJQFWK>kK`xxLhUH;v%gfaR$WkgdYEN3c(*Wruc_RAyD$cJ$jX!4WO+(NZ zss_WZd>F&j>yfTM8f{pmzbY!qdtVi(s)g1oREgY*!^gPY?Lk2w8{+~3`& zF_lv?m|TNjOYadAY^GOGm3=FipW7asv<>8su&AT{8A&+4kvYAlOc-4|4tH%GF-$13 zI-4XQ&nfyHY)>41hqe|Ja-yG7LM)fq%_PQ&THj=aVVbhSUxdM;)DQS8om?f-^Yezm zId6hX9U(2MXtscS{&oc`L>zTSr%P*-Me)XxveKC@Lb`4F4A(Wjlt0y&Vz=GGD`oOD z^>)I*#jtl;Ui)Io8|$Z6ImMDm=r|nizm)d3%7kQ=Ds1xgkTiN`u%?NTqmg=_N4>Va zo;y@jc1pX1a#nL;T0cX~;d*}z3^a`ow^<47KKK6D*Dh$ue99ZbE$e~^`uw8bBesgk z8$bD1;kDbX);1Q*2MB2HiyZgXoS17{b{sRG>@}+HiYq36S-vFU#kQzvhd);PoKN%D znVq3e^*Qg4)D}5cq`OA{BiUoSq|d1GV=4ueZp|0`PKwys*!niEr-!R}A#-S(`mUa_zI+5@5BIct*Ps6o{i{%HNxg@JmO+0TDj`;did+e+t676Gy zVi?Y&v3IG+1hc}#v06LtS^o&JEOLW-ex@^RaonRkX`UFHdCTDokR=@MXa*$YG*$;I zOK?pt_914S*tk&aSCXZ=reEor9Jb9*>fosH<-gS_WEF+=6J6J39TIg}U!mrSE`Gy0 zJvW|L|4Ns|_H|-=a5Vudnz>~2z z7?z1PG#3E|8fyeaLO_9;BESR)>=%K @@ -44,7 +45,9 @@ #define ZEROLEN 32768 +#ifndef SDL_MIXER_ONLY static SBYTE *zerobuf=NULL; +#endif static BOOL NS_IsThere(void) { @@ -53,20 +56,26 @@ static BOOL NS_IsThere(void) static BOOL NS_Init(void) { +#ifndef SDL_MIXER_ONLY zerobuf=(SBYTE*)_mm_malloc(ZEROLEN); +#endif return VC_Init(); } static void NS_Exit(void) { VC_Exit(); +#ifndef SDL_MIXER_ONLY _mm_free(zerobuf); +#endif } static void NS_Update(void) { +#ifndef SDL_MIXER_ONLY if (zerobuf) VC_WriteBytes(zerobuf,ZEROLEN); +#endif } MIKMODAPI MDRIVER drv_nos={ diff --git a/mikmod/drv_sdl.c b/mikmod/drv_sdl.c deleted file mode 100644 index 4102478d..00000000 --- a/mikmod/drv_sdl.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - -Name: -DRV_SDL.C - -Description: -Mikmod driver for output using the Simple DirectMedia Layer - -*/ - - -#include "mikmod_internals.h" - - -static BOOL SDRV_IsThere(void) -{ - return 1; -} - - -static BOOL SDRV_Init(void) -{ - md_mode |= DMODE_SOFT_MUSIC | DMODE_SOFT_SNDFX; - return(VC_Init()); -} - - -static void SDRV_Exit(void) -{ - VC_Exit(); -} - - -static void SDRV_Update(void) -{ - /* does nothing, buffers are updated in the background */ -} - - -static BOOL SDRV_Reset(void) -{ - return 0; -} - - -MIKMODAPI MDRIVER drv_sdl = -{ NULL, - "SDL", - "MikMod Simple DirectMedia Layer driver v1.1", - 0,255, - "SDL", - - NULL, - SDRV_IsThere, - VC_SampleLoad, - VC_SampleUnload, - VC_SampleSpace, - VC_SampleLength, - SDRV_Init, - SDRV_Exit, - SDRV_Reset, - VC_SetNumVoices, - VC_PlayStart, - VC_PlayStop, - SDRV_Update, - NULL, /* FIXME: Pause */ - VC_VoiceSetVolume, - VC_VoiceGetVolume, - VC_VoiceSetFrequency, - VC_VoiceGetFrequency, - VC_VoiceSetPanning, - VC_VoiceGetPanning, - VC_VoicePlay, - VC_VoiceStop, - VC_VoiceStopped, - VC_VoiceGetPosition, - VC_VoiceRealVolume -}; - diff --git a/mikmod/mdreg.c b/mikmod/mdreg.c index 0e98b88e..2ba11275 100644 --- a/mikmod/mdreg.c +++ b/mikmod/mdreg.c @@ -32,11 +32,8 @@ #include "mikmod_internals.h" -MIKMODAPI extern struct MDRIVER drv_sdl; /* Simple Direct Media */ - void _mm_registeralldrivers(void) { - _mm_registerdriver(&drv_sdl); _mm_registerdriver(&drv_nos); } diff --git a/mikmod/mikmod.h b/mikmod/mikmod.h index 278ae0d9..ca48308b 100644 --- a/mikmod/mikmod.h +++ b/mikmod/mikmod.h @@ -650,8 +650,6 @@ MIKMODAPI extern struct MDRIVER drv_raw; /* raw file disk writer [music.raw] MIKMODAPI extern struct MDRIVER drv_stdout; /* output to stdout */ MIKMODAPI extern struct MDRIVER drv_wav; /* RIFF WAVE file disk writer [music.wav] */ -MIKMODAPI extern struct MDRIVER drv_sdl; /* SDL_mixer driver */ - MIKMODAPI extern struct MDRIVER drv_ultra; /* Linux Ultrasound driver */ MIKMODAPI extern struct MDRIVER drv_AF; /* Dec Alpha AudioFile */ diff --git a/music.c b/music.c index 20c3c6ed..8f81579c 100644 --- a/music.c +++ b/music.c @@ -380,23 +380,22 @@ int open_music(SDL_AudioSpec *mixer) } md_mode |= DMODE_STEREO; } - md_mixfreq = mixer->freq; - md_device = 0; - md_volume = 96; + md_mixfreq = mixer->freq; + md_device = 0; + md_volume = 96; md_musicvolume = 128; md_sndfxvolume = 128; - md_pansep = 128; - md_reverb = 0; -#ifdef LIBMIKMOD_MUSIC - md_mode |= DMODE_HQMIXER|DMODE_SOFT_MUSIC|DMODE_SURROUND; -#endif + md_pansep = 128; + md_reverb = 0; + md_mode |= DMODE_HQMIXER|DMODE_SOFT_MUSIC|DMODE_SURROUND; #ifdef LIBMIKMOD_MUSIC list = MikMod_InfoDriver(); if ( list ) free(list); else -#endif +#else MikMod_RegisterDriver(&drv_nos); +#endif #ifdef LIBMIKMOD_MUSIC list = MikMod_InfoLoader(); if ( list )