commit f63b25e

neauoire  ·  2023-09-03 01:47:33 +0000 UTC
parent 5e720d7
(screen.c) Fixed missing pixel in redraw region
3 files changed,  +7, -8
+3, -5
 1@@ -214,11 +214,9 @@ screen_deo(Uint8 *ram, Uint8 *d, Uint8 port)
 2 			Uint16 height = uxn_screen.height;
 3 			if(x < width && y < height)
 4 				layer[x + y * width] = color;
 5-			x += 1;
 6-			y += 1;
 7-			screen_change(x, y, x, y);
 8-			if(d[0x6] & 0x1) POKE2(port_x, x);
 9-			if(d[0x6] & 0x2) POKE2(port_y, y);
10+			screen_change(x, y, x + 1, y + 1);
11+			if(d[0x6] & 0x1) POKE2(port_x, x + 1);
12+			if(d[0x6] & 0x2) POKE2(port_y, y + 1);
13 		}
14 		break;
15 	}
+4, -1
 1@@ -31,8 +31,11 @@ WITH REGARD TO THIS SOFTWARE.
 2 #define N2_(v) { r = (v); L = r; X = r >> 8; }
 3 #define L2_(v) { r = (v); Y = r; Z = r >> 8; }
 4 
 5+#define DEI(p) (dei_masks[p] ? emu_dei(u, (p)) : u->dev[(p)])
 6+#define DEO(p, v) { u->dev[p] = v; if(deo_masks[p]) emu_deo(u, p); }
 7+
 8 #define FLIP      { s = ins & 0x40 ? &u->wst : &u->rst; }
 9-#define SHIFT(y)  { r = s->ptr + (y); ptr = s->dat + r - 1; s->ptr = r; }
10+#define SHIFT(y)  { s->ptr += (y); ptr = s->dat + s->ptr - 1; }
11 #define SET(x, y) { SHIFT((ins & 0x80) ? x + y : y) }
12 
13 int
+0, -2
1@@ -13,8 +13,6 @@ WITH REGARD TO THIS SOFTWARE.
2 
3 #define PEEK2(d) (*(d) << 8 | (d)[1])
4 #define POKE2(d, v) { *(d) = (v) >> 8; (d)[1] = (v); }
5-#define DEI(p) (dei_masks[p] ? emu_dei(u, (p)) : u->dev[(p)])
6-#define DEO(p, v) { u->dev[p] = v; if(deo_masks[p]) emu_deo(u, p); }
7 
8 /* clang-format on */
9