HUFF_COMPRESS_PROC_YUV MACRO procname,uyvy,delta,decorrelate PUBLIC C _&procname ;;unsigned long* __cdecl procname( ;; [esp+ 4] unsigned char* src, ;; [esp+ 8] unsigned long* dst, ;; [esp+12] unsigned char* src_end); _&procname PROC HUFF_CODEC_PROC_START IF &uyvy bswap eax rol eax,16 ENDIF mov [edi],eax add edi,4 mov ch,-32 sub ebp,4 align 32 loop0: HUFF_COMPRESS encode1,%0+&uyvy,%2*&delta,0,4 HUFF_COMPRESS encode2,%1-&uyvy,%4*&delta,0,0 HUFF_COMPRESS encode1,%2+&uyvy,%2*&delta,0,0 HUFF_COMPRESS encode3,%3-&uyvy,%4*&delta,%2*&decorrelate,0 HUFF_COMPRESS_END loop0 _&procname ENDP ENDM