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