1void f(unsigned char *src, unsigned char *dst, int num, unsigned char *pos, unsigned char *diffuse, int hasdiffuse, unsigned char *specular, int hasspecular) { 2 int i; 3 4 for(i=num;i--;) { 5 float *p = (float *) ((__SIZE_TYPE__) dst + (__SIZE_TYPE__) pos); 6 if(hasdiffuse) { 7 unsigned int *dstColor = (unsigned int *) (dst + i + (__SIZE_TYPE__) diffuse); 8 *dstColor = * (unsigned int *) ( ((__SIZE_TYPE__) src + (__SIZE_TYPE__) diffuse) + i); 9 } 10 if(hasspecular) { 11 unsigned int *dstColor = (unsigned int *) (dst + i + (__SIZE_TYPE__) specular); 12 *dstColor = * (unsigned int *) ( ((__SIZE_TYPE__) src + (__SIZE_TYPE__) specular) + i); 13 } 14 } 15} 16 17