Browse Source

(screen) Fixed issue with redraw bounds

main
Devine Lu Linvega 12 months ago
parent
commit
289a265c41
  1. 13
      src/devices/screen.c
  2. 2
      src/uxnemu.c

13
src/devices/screen.c

@ -154,18 +154,19 @@ screen_deo(Uint8 addr)
if(ctrl & 0x80) {
int x1, y1, x2, y2, ax, bx, ay, by, hor, ver;
if(ctrl & 0x10)
x1 = MAR(0), x2 = MAR(rX);
x1 = 0, x2 = rX;
else
x1 = MAR(rX), x2 = MAR(uxn_screen.width);
x1 = rX, x2 = uxn_screen.width;
if(ctrl & 0x20)
y1 = MAR(0), y2 = MAR(rY);
y1 = 0, y2 = rY;
else
y1 = MAR(rY), y2 = MAR(uxn_screen.height);
hor = x2 - x1, ver = y2 - y1;
y1 = rY, y2 = uxn_screen.height;
screen_change(x1, y1, x2, y2);
x1 = MAR(x1), y1 = MAR(y1);
hor = MAR(x2) - x1, ver = MAR(y2) - y1;
for(ay = y1 * len, by = ay + ver * len; ay < by; ay += len)
for(ax = ay + x1, bx = ax + hor; ax < bx; ax++)
layer[ax] = color;
screen_change(x1, y1, x2, y2);
}
/* pixel mode */
else {

2
src/uxnemu.c

@ -469,7 +469,7 @@ main(int argc, char **argv)
/* flags */
if(argc > 1 && argv[i][0] == '-') {
if(!strcmp(argv[i], "-v"))
return system_error("Uxn(gui) - Varvara Emulator", "31 Jan 2025.");
return system_error("Uxn(gui) - Varvara Emulator", "4 Apr 2025.");
else if(!strcmp(argv[i], "-2x"))
set_zoom(2, 0);
else if(!strcmp(argv[i], "-3x"))

Loading…
Cancel
Save