Diff for /np2/sound/opngeng.c between versions 1.2 and 1.3

version 1.2, 2003/10/18 07:28:50 version 1.3, 2003/10/18 09:02:38
Line 147  void SOUNDCALL opngen_getpcm(void *hdl,  Line 147  void SOUNDCALL opngen_getpcm(void *hdl, 
         (void)hdl;          (void)hdl;
 }  }
   
   void SOUNDCALL opngen_getpcmvr(void *hdl, SINT32 *pcm, UINT count) {
   
           OPNCH   *fm;
           UINT    i;
           SINT32  samp_l;
           SINT32  samp_r;
   
           fm = opnch;
           while(count--) {
                   samp_l = opngen.outdl * (opngen.calcremain * -1);
                   samp_r = opngen.outdr * (opngen.calcremain * -1);
                   opngen.calcremain += FMDIV_ENT;
                   while(1) {
                           opngen.outdc = 0;
                           opngen.outdl = 0;
                           opngen.outdr = 0;
                           for (i=0; i<opngen.playchannels; i++) {
                                   calcratechannel(fm + i);
                           }
                           if (opncfg.vr_en) {
                                   SINT32 tmpl;
                                   SINT32 tmpr;
                                   tmpl = (opngen.outdl >> 5) * opncfg.vr_l;
                                   tmpr = (opngen.outdr >> 5) * opncfg.vr_r;
                                   opngen.outdl += tmpr;
                                   opngen.outdr += tmpl;
                           }
                           opngen.outdl += opngen.outdc;
                           opngen.outdr += opngen.outdc;
                           opngen.outdl >>= FMVOL_SFTBIT;
                           opngen.outdr >>= FMVOL_SFTBIT;
                           if (opngen.calcremain > opncfg.calc1024) {
                                   samp_l += opngen.outdl * opncfg.calc1024;
                                   samp_r += opngen.outdr * opncfg.calc1024;
                                   opngen.calcremain -= opncfg.calc1024;
                           }
                           else {
                                   break;
                           }
                   }
                   samp_l += opngen.outdl * opngen.calcremain;
                   samp_l >>= 8;
                   samp_l *= opncfg.fmvol;
                   samp_l >>= (OPM_OUTSB + FMDIV_BITS + 1 + 6 - FMVOL_SFTBIT - 8);
                   pcm[0] += samp_l;
                   samp_r += opngen.outdr * opngen.calcremain;
                   samp_r >>= FMDIV_BITS;
                   samp_r *= opncfg.fmvol;
                   samp_r >>= (OPM_OUTSB + FMDIV_BITS + 1 + 6 - FMVOL_SFTBIT - 8);
                   pcm[1] += samp_r;
                   opngen.calcremain -= opncfg.calc1024;
                   pcm += 2;
           }
           (void)hdl;
   }
   

Removed from v.1.2  
changed lines
  Added in v.1.3


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