So, to do a branch, you do `mov IP, label`, or even a "push.mv" instruction which when used against IP is basically the same as the usual "call" instruction
I wrote something a little like this once too - there was a register stack and call, jump, branch were all implemented by pushing or popping the register stack.
I wrote something a little like this once too - there was a register stack and call, jump, branch were all implemented by pushing or popping the register stack.