diff --git a/src/instruction.cpp b/src/instruction.cpp index 6b551c1a..8ed68159 100644 --- a/src/instruction.cpp +++ b/src/instruction.cpp @@ -169,6 +169,10 @@ void Instruction::executeOn(Core &c) { break; case AND: reg[rdest] = reg[rsrc[0]] & reg[rsrc[1]]; break; + case OR: reg[rdest] = reg[rsrc[0]] | reg[rsrc[1]]; + break; + case XOR: reg[rdest] = reg[rsrc[0]] ^ reg[rsrc[1]]; + break; case NEG: reg[rdest] = -(Word_s)reg[rsrc[0]]; reg[rdest].trunc(wordSz); break;