--- np2/macosx/soundmng.cpp 2003/11/13 18:17:42 1.6 +++ np2/macosx/soundmng.cpp 2003/11/28 17:44:19 1.8 @@ -6,7 +6,8 @@ #include "soundmng.h" #include "sound.h" #if defined(VERMOUTH_LIB) -#include "vermouth.h" +#include "commng.h" +#include "cmver.h" #endif #include "soundrecording.h" @@ -20,7 +21,7 @@ typedef struct { UINT rate; UINT samples; UINT buffersize; -#if defined(SOUNDMNG_USEBUFFERING) +#if !defined(SOUND_CRITICAL) SINT16 *indata; SINT16 *extendbuffer; #endif @@ -33,10 +34,6 @@ static BOOL QS_Avail = FALSE; static _QSOUND QSound; static BOOL QSound_Playing = FALSE; -#if defined(VERMOUTH_LIB) - MIDIMOD vermouth_module = NULL; -#endif - static void (PARTSCALL *fnmix)(SINT16 *dst, const SINT32 *src, UINT size); @@ -46,7 +43,7 @@ static pascal void QSoundCallback(SndCha QSOUND qs; int nextbuf; void *dst; -#if !defined(SOUNDMNG_USEBUFFERING) +#if defined(SOUND_CRITICAL) const SINT32 *src; #endif @@ -54,7 +51,7 @@ const SINT32 *src; qs = &QSound; nextbuf = inCommand->param1; dst = qs->buf[nextbuf]->sampleArea; -#if defined(SOUNDMNG_USEBUFFERING) +#if !defined(SOUND_CRITICAL) if (qs->indata) { CopyMemory((SINT16 *)dst, qs->indata, qs->buffersize); qs->indata = NULL; @@ -138,7 +135,7 @@ static BOOL SoundBuffer_Init(UINT rate, drate = rate; dtox80(&drate, &extFreq); -#if defined(SOUNDMNG_USEBUFFERING) +#if !defined(SOUND_CRITICAL) qs->extendbuffer = (SINT16 *)_MALLOC(buffersize, "Extend buffer"); if (qs->extendbuffer == NULL) { goto sbinit_err; @@ -189,7 +186,7 @@ static void SoundBuffer_Term(void) { buf[i] = NULL; } } -#if defined(SOUNDMNG_USEBUFFERING) +#if !defined(SOUND_CRITICAL) qs->indata = NULL; if (qs->extendbuffer) { _MFREE(qs->extendbuffer); @@ -201,9 +198,6 @@ static void SoundBuffer_Term(void) { UINT soundmng_create(UINT rate, UINT ms) { UINT samples; -#if defined(VERMOUTH_LIB) - UINT num; -#endif QSound_Playing = FALSE; @@ -217,7 +211,7 @@ UINT soundmng_create(UINT rate, UINT ms) if (SoundChannel_Init()) { goto qsinit_err; } -#if defined(SOUNDMNG_USEBUFFERING) +#if !defined(SOUND_CRITICAL) samples = rate * ms / (SOUNDBUFFERS * 1000); samples = (samples + 3) & (~3); #else @@ -228,11 +222,7 @@ UINT soundmng_create(UINT rate, UINT ms) goto qsinit_err; } #if defined(VERMOUTH_LIB) - vermouth_module = midimod_create(rate); - for (num=0; num<128; num++) { - midimod_loadprogram(vermouth_module, num); - midimod_loadrhythm(vermouth_module, num); - } + cmvermouth_load(rate); #endif return(samples); @@ -248,8 +238,7 @@ void soundmng_destroy(void) { SoundBuffer_Term(); SoundChannel_Term(); #if defined(VERMOUTH_LIB) - midimod_destroy(vermouth_module); - vermouth_module = NULL; + cmvermouth_unload(); #endif } } @@ -274,7 +263,7 @@ void soundmng_setreverse(BOOL reverse) { } } -#if defined(SOUNDMNG_USEBUFFERING) +#if !defined(SOUND_CRITICAL) void soundmng_sync(void) { QSOUND qs;