; ********************************************************* ; * ; * MIX routine ; * ; * ESI = source/target buffer ; * EDI = source buffer 2 ; * ECX = buffer size ; * ; ********************************************************* section .text bits 32 global _KZG_mix@0 _KZG_mix@0: %ifdef DEBUG mov ebp, _KZG_mix_amp1 %endif _KZG_mix_onesample: fld dword [esi] fmul dword [ebp+0] fld dword [edi] fmul dword [ebp+4] faddp st1 fstp dword [esi] add esi,byte 4 add edi,byte 4 loop _KZG_mix_onesample ret %ifdef DEBUG section .data global _KZG_mix_amp1 _KZG_mix_amp1 dd 0 global _KZG_mix_amp2 _KZG_mix_amp2 dd 0 %endif