Diff for /np2/macosx/soundmng.cpp between versions 1.5 and 1.7

version 1.5, 2003/11/06 03:22:41 version 1.7, 2003/11/14 07:37:29
Line 10 Line 10
 #endif  #endif
   
 #include        "soundrecording.h"  #include        "soundrecording.h"
   #include        "np2opening.h"
   
 #define SOUNDBUFFERS    2  #define SOUNDBUFFERS    2
   
Line 19  typedef struct { Line 20  typedef struct {
         UINT                    rate;          UINT                    rate;
         UINT                    samples;          UINT                    samples;
         UINT                    buffersize;          UINT                    buffersize;
 #if defined(SOUNDMNG_USEBUFFERING)  #if !defined(SOUND_CRITICAL)
         SINT16                  *indata;          SINT16                  *indata;
         SINT16                  *extendbuffer;          SINT16                  *extendbuffer;
 #endif  #endif
Line 45  static pascal void QSoundCallback(SndCha Line 46  static pascal void QSoundCallback(SndCha
         QSOUND          qs;          QSOUND          qs;
         int                     nextbuf;          int                     nextbuf;
         void            *dst;          void            *dst;
 #if !defined(SOUNDMNG_USEBUFFERING)  #if defined(SOUND_CRITICAL)
 const SINT32    *src;  const SINT32    *src;
 #endif  #endif
   
Line 53  const SINT32 *src; Line 54  const SINT32 *src;
                 qs = &QSound;                  qs = &QSound;
                 nextbuf = inCommand->param1;                  nextbuf = inCommand->param1;
                 dst = qs->buf[nextbuf]->sampleArea;                  dst = qs->buf[nextbuf]->sampleArea;
 #if defined(SOUNDMNG_USEBUFFERING)  #if !defined(SOUND_CRITICAL)
                 if (qs->indata) {                  if (qs->indata) {
                         CopyMemory((SINT16 *)dst, qs->indata, qs->buffersize);                          CopyMemory((SINT16 *)dst, qs->indata, qs->buffersize);
                         qs->indata = NULL;                          qs->indata = NULL;
Line 137  static BOOL SoundBuffer_Init(UINT rate,  Line 138  static BOOL SoundBuffer_Init(UINT rate, 
         drate = rate;          drate = rate;
         dtox80(&drate, &extFreq);          dtox80(&drate, &extFreq);
   
 #if defined(SOUNDMNG_USEBUFFERING)  #if !defined(SOUND_CRITICAL)
         qs->extendbuffer = (SINT16 *)_MALLOC(buffersize, "Extend buffer");          qs->extendbuffer = (SINT16 *)_MALLOC(buffersize, "Extend buffer");
         if (qs->extendbuffer == NULL) {          if (qs->extendbuffer == NULL) {
                 goto sbinit_err;                  goto sbinit_err;
Line 188  static void SoundBuffer_Term(void) { Line 189  static void SoundBuffer_Term(void) {
                         buf[i] = NULL;                          buf[i] = NULL;
                 }                  }
         }          }
 #if defined(SOUNDMNG_USEBUFFERING)  #if !defined(SOUND_CRITICAL)
         qs->indata = NULL;          qs->indata = NULL;
         if (qs->extendbuffer) {          if (qs->extendbuffer) {
                 _MFREE(qs->extendbuffer);                  _MFREE(qs->extendbuffer);
Line 216  UINT soundmng_create(UINT rate, UINT ms) Line 217  UINT soundmng_create(UINT rate, UINT ms)
         if (SoundChannel_Init()) {          if (SoundChannel_Init()) {
                 goto qsinit_err;                  goto qsinit_err;
         }          }
 #if defined(SOUNDMNG_USEBUFFERING)  #if !defined(SOUND_CRITICAL)
         samples = rate * ms / (SOUNDBUFFERS * 1000);          samples = rate * ms / (SOUNDBUFFERS * 1000);
         samples = (samples + 3) & (~3);          samples = (samples + 3) & (~3);
 #else  #else
Line 273  void soundmng_setreverse(BOOL reverse) { Line 274  void soundmng_setreverse(BOOL reverse) {
         }          }
 }  }
   
 #if defined(SOUNDMNG_USEBUFFERING)  #if !defined(SOUND_CRITICAL)
 void soundmng_sync(void) {  void soundmng_sync(void) {
   
         QSOUND          qs;          QSOUND          qs;
Line 306  static Movie setupWAV(const char* name)  Line 307  static Movie setupWAV(const char* name) 
     short       resID = 0;      short       resID = 0;
     Movie       wav = NULL;          Movie       wav = NULL;    
   
         char    path[MAX_PATH];      if (!getResourceFile(name, &fs)) {
         Str255  fname;          char    path[MAX_PATH];
           Str255  fname;
   
           file_cpyname(path, file_getcd(name), MAX_PATH);
           mkstr255(fname, path);
           FSMakeFSSpec(0, 0, fname, &fs);
       }
   
         file_cpyname(path, file_getcd(name), MAX_PATH);  
         mkstr255(fname, path);  
         FSMakeFSSpec(0, 0, fname, &fs);  
     if (OpenMovieFile( &fs, &movieRefNum, fsRdPerm ) == noErr) {      if (OpenMovieFile( &fs, &movieRefNum, fsRdPerm ) == noErr) {
         if (NewMovieFromFile(&wav,movieRefNum, &resID, NULL, newMovieActive, NULL) != noErr) {          if (NewMovieFromFile(&wav,movieRefNum, &resID, NULL, newMovieActive, NULL) != noErr) {
             return NULL;              return NULL;
Line 330  void soundmng_deinitialize(void) { Line 334  void soundmng_deinitialize(void) {
   
 BOOL soundmng_initialize(void) {  BOOL soundmng_initialize(void) {
     EnterMovies();      EnterMovies();
     seekWAV[0] = setupWAV("Fddseek.wav");      seekWAV[0] = setupWAV("fddseek.wav");
     seekWAV[1] = setupWAV("Fddseek1.wav");      seekWAV[1] = setupWAV("fddseek1.wav");
     if (seekWAV[0] == NULL || seekWAV[1] == NULL) {      if (seekWAV[0] == NULL || seekWAV[1] == NULL) {
         return  false;          return  false;
     }      }

Removed from v.1.5  
changed lines
  Added in v.1.7


RetroPC.NET-CVS <cvs@retropc.net>