new version
authorTobias Girstmair <t@thi3nkpad.lan>
Tue, 13 Nov 2018 02:43:30 +0000 (03:43 +0100)
committerTobias Girstmair <t@thi3nkpad.lan>
Tue, 13 Nov 2018 02:43:30 +0000 (03:43 +0100)
fakeasm.h
foo.c

index 3153640..cfb4598 100644 (file)
--- a/fakeasm.h
+++ b/fakeasm.h
@@ -21,9 +21,9 @@
 #define CLR(x)    x = 0;
 #define RET       return;
 #define RCALL    //pseudo
-int zero = 0; //status register zero bit
-#define TST(x)    if(x==0)zero=1;else zero=0; //WARN: not a complete TST mockup
-#define BREQ(l)   if(zero) goto l;
+int sr_zero = 0; //status register zero bit
+#define TST(x)    if(x==0)sr_zero=1;else sr_zero=0; //WARN: not a complete TST mockup
+#define BREQ(l)   if(sr_zero) goto l;
 int carry = 0; //status register carry bit //WARN: not respected by all mocked instructions
 int asmtmp = 0;
 #define ROL(x) asmtmp = x>>7; x <<= 1; x |= carry; carry = asmtmp;
diff --git a/foo.c b/foo.c
index bc469c9..85d4d40 100644 (file)
--- a/foo.c
+++ b/foo.c
@@ -33,7 +33,8 @@ void g(void) {
          CLR zero
          ADC X_hi, zero
          LD  t, X         */
-       t = (((i1&0x1f)<<8|i0)*t)>>8 >> o; //TODO; NOTE: o == {1, 2, 4}
+       t = (((i1&0x1f)<<8|i0)*t)>>8; //TODO
+       t >>= o; //NOTE: o == {1, 2, 4}
        AND     (t, x)
        ANDI    (t, 3)
        RET
Imprint / Impressum