Home | History | Annotate | Download | only in lib_src

Lines Matching defs:oper

164     if ((pRegion->oper[operIndex].gain & 0xfc) == 0)
269 pFMVoice->oper[operIndex].envState = eFMEnvelopeStateRelease;
272 pFMVoice->oper[operIndex].envRate = FM_CalcEGRate(
274 fmReleaseTable[pRegion->oper[operIndex].velocityRelease & 0x0f],
275 fmScaleTable[pRegion->oper[operIndex].egKeyScale >> 4]);
305 pFMVoice->oper[0].envState = eFMEnvelopeStateMuted;
306 pFMVoice->oper[1].envState = eFMEnvelopeStateMuted;
307 pFMVoice->oper[2].envState = eFMEnvelopeStateMuted;
308 pFMVoice->oper[3].envState = eFMEnvelopeStateMuted;
339 if (((pRegion->oper[operIndex].gain & 0xfc) == 0) ||
340 (pFMVoice->oper[operIndex].envGain == 0))
346 if (pFMVoice->oper[operIndex].envGain >= ((EAS_U16) (pRegion->oper[operIndex].sustain & 0xfc) << 7))
350 pFMVoice->oper[operIndex].envState = eFMEnvelopeStateDecay;
352 pFMVoice->oper[operIndex].envRate = FM_CalcEGRate(
354 fmDecayTable[pRegion->oper[operIndex].attackDecay & 0x0f],
355 fmScaleTable[pRegion->oper[operIndex].egKeyScale >> 4]);
444 pFMVoice->oper[operIndex].outputGain = EAS_LogToLinear16(((EAS_I16) (pRegion->oper[operIndex].gain & 0xfc) - 0xfc) << 7);
448 if (pRegion->oper[operIndex].flags & FM_OPER_FLAG_LINEAR_VELOCITY)
455 temp = (temp * (EAS_I32)(pRegion->oper[operIndex].velocityRelease & 0xf0)) >> 7;
458 temp -= ((EAS_I32) pVoice->note - KEY_SCALE_PIVOT_POINT) * (EAS_I32) fmScaleTable[pRegion->oper[operIndex].egKeyScale & 0x0f];
465 pFMVoice->oper[operIndex].baseGain = (EAS_I16) EAS_LogToLinear16(temp);
468 pFMVoice->oper[operIndex].envRate = FM_CalcEGRate(
470 fmDecayTable[pRegion->oper[operIndex].attackDecay & 0x0f],
471 fmScaleTable[pRegion->oper[operIndex].egKeyScale >> 4]);
474 if ((pRegion->oper
478 pFMVoice->oper[operIndex].envGain = 0x7fff;
481 pFMVoice->oper[operIndex].envState = eFMEnvelopeStateDecay;
487 pFMVoice->oper[operIndex].envGain = 0;
488 pFMVoice->oper[operIndex].envState = eFMEnvelopeStateAttack;
757 temp = pRegion->oper[operIndex].tuning +
761 if ((pRegion->oper[operIndex].flags & FM_OPER_FLAG_NO_VIBRATO) == 0)
765 if (pRegion->oper[operIndex].flags & FM_OPER_FLAG_MONOTONE)
769 pFMVoice->oper[operIndex].pitch = (EAS_I16) temp;
772 bTemp = FM_UpdateEG(pVoice, &pFMVoice->oper[operIndex], &pRegion->oper[operIndex], pRegion->region.keyGroupAndFlags & REGION_FLAG_ONE_SHOT);
807 EAS_INT oper;
839 for (oper = 0; oper < 4; oper++)
842 vCfg.gain[oper] = (EAS_U16) FMUL_15x15(pFMVoice->oper[oper].baseGain, pFMVoice->oper[oper].envGain);
843 vCfg.outputGain[oper] = pFMVoice->oper[oper].outputGain;
846 if (pRegion->oper[oper].flags & FM_OPER_FLAG_NOISE)
847 vCfg.flags |= (EAS_U8) (FLAG_FM_ENG_VOICE_OP1_NOISE << oper);
888 for (oper = 0; oper < 4; oper++)
890 vFrame.gain[oper] = (EAS_U16) FMUL_15x15(pFMVoice->oper[oper].baseGain, pFMVoice->oper[oper].envGain);
891 vFrame.pitch[oper] = pFMVoice->oper[oper].pitch;
894 if (FM_SynthIsOutputOperator(pRegion, oper))
895 pVoice->gain = max(pVoice->gain, (EAS_I16) vFrame.gain[oper]);