commit 1141676
Devine Lu Linvega
·
2024-11-25 22:50:15 +0000 UTC
parent 2edca88
(screen) Faster still
1 files changed,
+4,
-4
+4,
-4
1@@ -230,10 +230,10 @@ screen_deo(Uxn *u, Uint8 addr)
2 Uint16 xx = MAR(x), yy = MAR(y);
3 if(xx < MAR(uxn_screen.width) && MAR(yy) < MAR2(uxn_screen.height)) {
4 Uint8 *sprite = &u->ram[rA];
5- int opaque = blend % 5, length = MAR2(uxn_screen.width), row = yy * length;
6- for(ay = yy, qy = fy < 0 ? 7 : 0; ay < yy + 8; ay++, qy += fy, row += length) {
7- ch1 = sprite[qy], ch2 = sprite[qy + 8] << 1, x2 = xx + 8 + row;
8- for(ax = xx + row, qx = fx > 0 ? 7 : 0; ax < x2; ax++, qx -= fx) {
9+ int opaque = blend % 5, length = MAR2(uxn_screen.width), y2 = (yy + 8) * length;
10+ for(ay = yy * length, qy = fy < 0 ? 7 : 0; ay < y2; ay += length, qy += fy) {
11+ ch1 = sprite[qy], ch2 = sprite[qy + 8] << 1, x2 = xx + 8 + ay;
12+ for(ax = xx + ay, qx = fx > 0 ? 7 : 0; ax < x2; ax++, qx -= fx) {
13 int color = ((ch1 >> qx) & 1) | ((ch2 >> qx) & 2);
14 if(opaque || color) layer[ax] = blending[color][blend];
15 }