diff --git a/src/uxn.c b/src/uxn.c index e1a358d..436e6b2 100644 --- a/src/uxn.c +++ b/src/uxn.c @@ -132,9 +132,7 @@ lituxn(Uxn *u, Uint8 instr) void opcuxn(Uxn *u, Uint8 instr) { - Uint8 op = instr & 0x3f, freturn; - setflag(&u->status, FLAG_RETURN, (instr >> 6) & 1); - freturn = getflag(&u->status, FLAG_RETURN); + Uint8 op = instr & 0x3f, freturn = instr & 0x40; u->src = freturn ? &u->rst : &u->wst; u->dst = freturn ? &u->wst : &u->rst; (*ops[op])(u); diff --git a/src/uxn.h b/src/uxn.h index 048b5f2..37ab2a4 100644 --- a/src/uxn.h +++ b/src/uxn.h @@ -17,7 +17,6 @@ typedef unsigned short Uint16; typedef signed short Sint16; #define FLAG_HALT 0x01 -#define FLAG_RETURN 0x04 #define PAGE_DEVICE 0x0100 #define PAGE_VECTORS 0x0200