Advertisement
Guest User

Untitled

a guest
Aug 23rd, 2016
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.44 KB | None | 0 0
  1. unsigned int interpolate_colors(unsigned int c1, unsigned int c2, unsigned int alpha) {
  2.     unsigned int r;
  3.     __asm {
  4.         pxor mm7,mm7
  5.         movd mm0,c1
  6.         movd mm1,c2
  7.  
  8.         mov eax,alpha
  9.         shl eax,16
  10.         add eax,alpha
  11.         movd mm3,eax
  12.         movq mm2,mm3  
  13.         punpckldq mm3,mm2
  14.  
  15.         punpcklbw mm0,mm7
  16.         punpcklbw mm1,mm7
  17.         psubw mm1,mm0
  18.  
  19.         pmullw mm1,mm3
  20.         psrlw mm1,8
  21.         paddb mm1,mm0
  22.         packuswb mm1,mm7
  23.  
  24.         movd r,mm1
  25.         emms;
  26.     }
  27.     return r;
  28. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement