commit 8fb5a11

Devine Lu Linvega  ·  2024-03-06 16:58:47 +0000 UTC
parent aaab3e3
Fixed assembly issue
1 files changed,  +9, -9
+9, -9
 1@@ -372,22 +372,22 @@ parse(char *w, FILE *f)
 2 			return error_asm("Invalid hex literal", w);
 3 		break;
 4 	case '_': /* raw byte relative */
 5-		return writebyte(0xff) && makereference(p.scope, w + 1, w[0], p.ptr);
 6+		return makereference(p.scope, w + 1, w[0], p.ptr) && writebyte(0xff);
 7 	case ',': /* literal byte relative */
 8-		return writelitbyte(0xff) && makereference(p.scope, w + 1, w[0], p.ptr + 1);
 9+		return makereference(p.scope, w + 1, w[0], p.ptr + 1) && writelitbyte(0xff);
10 	case '-': /* raw byte absolute */
11-		return writebyte(0xff) && makereference(p.scope, w + 1, w[0], p.ptr);
12+		return makereference(p.scope, w + 1, w[0], p.ptr) && writebyte(0xff);
13 	case '.': /* literal byte zero-page */
14-		return writelitbyte(0xff) && makereference(p.scope, w + 1, w[0], p.ptr + 1);
15+		return makereference(p.scope, w + 1, w[0], p.ptr + 1) && writelitbyte(0xff);
16 	case ':': fprintf(stderr, "Deprecated rune %s, use =%s\n", w, w + 1);
17 	case '=': /* raw short absolute */
18-		return writeshort(0xffff, 0) && makereference(p.scope, w + 1, w[0], p.ptr);
19+		return makereference(p.scope, w + 1, w[0], p.ptr) && writeshort(0xffff, 0);
20 	case ';': /* literal short absolute */
21-		return writeshort(0xffff, 1) && makereference(p.scope, w + 1, w[0], p.ptr + 1);
22+		return makereference(p.scope, w + 1, w[0], p.ptr + 1) && writeshort(0xffff, 1);
23 	case '?': /* JCI */
24-		return writebyte(0x20) && writeshort(0xffff, 0) && makereference(p.scope, w + 1, w[0], p.ptr + 1);
25+		return makereference(p.scope, w + 1, w[0], p.ptr + 1) && writebyte(0x20) && writeshort(0xffff, 0);
26 	case '!': /* JMI */
27-		return writebyte(0x40) && writeshort(0xffff, 0) && makereference(p.scope, w + 1, w[0], p.ptr + 1);
28+		return makereference(p.scope, w + 1, w[0], p.ptr + 1) && writebyte(0x40) && writeshort(0xffff, 0);
29 	case '"': /* raw string */
30 		i = 0;
31 		while((c = w[++i]))
32@@ -417,7 +417,7 @@ parse(char *w, FILE *f)
33 					return 0;
34 			return 1;
35 		} else
36-			return writebyte(0x60) && writeshort(0xffff, 0) && makereference(p.scope, w, ' ', p.ptr + 1);
37+			return makereference(p.scope, w, ' ', p.ptr + 1) && writebyte(0x60) && writeshort(0xffff, 0);
38 	}
39 	return 1;
40 }