commit 01c7537
Devine Lu Linvega
·
2026-01-26 18:46:57 +0000 UTC
parent 4e224c4
JUMP macro use b register
1 files changed,
+4,
-4
+4,
-4
1@@ -1035,7 +1035,7 @@ emu_deo(const Uint8 port, const Uint8 value)
2 #define DEC s[--(*p)]
3 #define INC s[(*p)++]
4 #define FLIP s = stk[!r], p = &ptr[!r];
5-#define JUMP(x) c = ram[pc] << 8, c |= ram[pc + 1], pc += x + 2;
6+#define JUMP(x) b = ram[pc] << 8, b |= ram[pc + 1], pc += x + 2;
7 #define DROP(o,m) o = DEC; if(m) o |= DEC << 8;
8 #define TAKE(o) if(d) o[1] = DEC; o[0] = DEC;
9 #define PUSH(i,m) { if(m) c = (i), INC = c >> 8, INC = c; else INC = i; }
10@@ -1053,9 +1053,9 @@ uxn_eval(Uint16 pc)
11 Uint8 op = ram[pc++], r = (op >> 6) & 1, *s = stk[r], *p = &ptr[r];
12 switch(op) {
13 /* BRK */ case 0x00:return 1;
14- /* JCI */ case 0x20:if(DEC) JUMP(c) else pc += 2; break;
15- /* JMI */ case 0x40:JUMP(c) break;
16- /* JSI */ case 0x60:JUMP(0) INC = pc >> 8; INC = pc; pc += c; break;
17+ /* JCI */ case 0x20:if(DEC) JUMP(b) else pc += 2; break;
18+ /* JMI */ case 0x40:JUMP(b) break;
19+ /* JSI */ case 0x60:JUMP(0) PUSH(pc,1) pc += b; break;
20 /* LI2 */ case 0xa0:INC = ram[pc++]; /* Fall-through */
21 /* LIT */ case 0x80:INC = ram[pc++]; break;
22 /* L2r */ case 0xe0:INC = ram[pc++]; /* Fall-through */