home *** CD-ROM | disk | FTP | other *** search
- segment .text
-
- %include "a_triblt.inc"
-
- global _vdasm_triblt_span_point
- _vdasm_triblt_span_point:
- push ebp
- push edi
- push esi
- push ebx
- mov eax,[esp+4+16]
- mov ebp,[eax+texinfo.w]
- mov ebx,[eax+texinfo.mips+mipmap.pitch]
- shl ebp,2
- mov edi,[eax+texinfo.src]
- mov edx,[eax+texinfo.dst]
- mov ecx,[eax+texinfo.mips+mipmap.bits]
- sar ebx,2
- add edx,ebp
- neg ebp
- .xloop:
- mov eax,[edi+span.v]
- imul eax,ebx
- add eax,[edi+span.u]
- add edi,8
- mov eax,[ecx+eax*4]
- mov [edx+ebp],eax
- add ebp,4
- jnc .xloop
- pop ebx
- pop esi
- pop edi
- pop ebp
- ret
-
- end