- uy = (y + scrollupper) & 127;
- ly = (y + scrolllower) & 127;
- for (x = 0;x < 128;x++)
- {
- ux = (x + scrollupper) & 127;
- lx = (x + scrolllower) & 127;
- u = &skyupperlayerpixels[(uy * 128 + ux) * 4];
- l = &skylowerlayerpixels[(ly * 128 + lx) * 4];
- if (l[3])
- {
- if (l[3] == 255)
- *((int *)m) = *((int *)l);
- else
- {
- m[0] = ((((int) l[0] - (int) u[0]) * (int) l[3]) >> 8) + (int) u[0];
- m[1] = ((((int) l[1] - (int) u[1]) * (int) l[3]) >> 8) + (int) u[1];
- m[2] = ((((int) l[2] - (int) u[2]) * (int) l[3]) >> 8) + (int) u[2];
- m[3] = 255;
- }
- }
- else
- *((int *)m) = *((int *)u);
- m += 4;
- }