commit 94e041e
Devine Lu Linvega
·
2025-04-04 15:50:36 +0000 UTC
parent 4d74840
(screen) Fixed issue with redraw bounds
2 files changed,
+8,
-7
+7,
-6
1@@ -154,18 +154,19 @@ screen_deo(Uint8 addr)
2 if(ctrl & 0x80) {
3 int x1, y1, x2, y2, ax, bx, ay, by, hor, ver;
4 if(ctrl & 0x10)
5- x1 = MAR(0), x2 = MAR(rX);
6+ x1 = 0, x2 = rX;
7 else
8- x1 = MAR(rX), x2 = MAR(uxn_screen.width);
9+ x1 = rX, x2 = uxn_screen.width;
10 if(ctrl & 0x20)
11- y1 = MAR(0), y2 = MAR(rY);
12+ y1 = 0, y2 = rY;
13 else
14- y1 = MAR(rY), y2 = MAR(uxn_screen.height);
15- hor = x2 - x1, ver = y2 - y1;
16+ y1 = rY, y2 = uxn_screen.height;
17+ screen_change(x1, y1, x2, y2);
18+ x1 = MAR(x1), y1 = MAR(y1);
19+ hor = MAR(x2) - x1, ver = MAR(y2) - y1;
20 for(ay = y1 * len, by = ay + ver * len; ay < by; ay += len)
21 for(ax = ay + x1, bx = ax + hor; ax < bx; ax++)
22 layer[ax] = color;
23- screen_change(x1, y1, x2, y2);
24 }
25 /* pixel mode */
26 else {
+1,
-1
1@@ -268,7 +268,7 @@ main(int argc, char **argv)
2 {
3 int i = 1;
4 if(argc == 2 && argv[1][0] == '-' && argv[1][1] == 'v')
5- return !fprintf(stdout, "Uxn11 - Varvara Emulator, 16 Mar 2025.\n");
6+ return !fprintf(stdout, "Uxn11 - Varvara Emulator, 4 Apr 2025.\n");
7 else if(argc == 1)
8 return !fprintf(stdout, "usage: %s [-v] file.rom [args..]\n", argv[0]);
9 else if(!display_init())