--- np2/sound/opngeng.c 2004/07/26 18:52:55 1.8 +++ np2/sound/opngeng.c 2005/02/04 05:32:24 1.9 @@ -45,7 +45,7 @@ extern OPNCFG opncfg; #define SLOTOUT(s, e, c) \ ((opncfg.sintable[(((s).freq_cnt + (c)) >> \ - (FREQ_BITS - SIN_BITS)) & (SIN_ENT-1)] * \ + (FREQ_BITS - SIN_BITS)) & (SIN_ENT - 1)] * \ opncfg.envtable[(e)]) >> (ENVTBL_BIT+SINTBL_BIT-TL_BITS)) @@ -143,7 +143,7 @@ void SOUNDCALL opngen_getpcm(void *hdl, 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 >>= 8; samp_r *= opncfg.fmvol; samp_r >>= (OPM_OUTSB + FMDIV_BITS + 1 + 6 - FMVOL_SFTBIT - 8); pcm[1] += samp_r;