diff --git a/Server/src/net/simon987/server/assembly/DefaultInstructionSet.java b/Server/src/net/simon987/server/assembly/DefaultInstructionSet.java index bb78f73..a7b2d3d 100755 --- a/Server/src/net/simon987/server/assembly/DefaultInstructionSet.java +++ b/Server/src/net/simon987/server/assembly/DefaultInstructionSet.java @@ -36,6 +36,7 @@ public class DefaultInstructionSet implements InstructionSet { add(new TestInstruction()); add(new CmpInstruction()); add(new NegInstruction()); + add(new NotInstruction()); } /** diff --git a/Server/src/net/simon987/server/assembly/instruction/NotInstruction.java b/Server/src/net/simon987/server/assembly/instruction/NotInstruction.java new file mode 100644 index 0000000..453e51e --- /dev/null +++ b/Server/src/net/simon987/server/assembly/instruction/NotInstruction.java @@ -0,0 +1,21 @@ +package net.simon987.server.assembly.instruction; + +import net.simon987.server.assembly.Instruction; +import net.simon987.server.assembly.Status; +import net.simon987.server.assembly.Target; + +public class NotInstruction extends Instruction { + + public static final int OPCODE = 29; + + public NotInstruction() { + super("not", OPCODE); + } + + @Override + public Status execute(Target dst, int dstIndex, Status status) { + dst.set(dstIndex, ~dst.get(dstIndex)); + + return status; + } +} diff --git a/plugins/Plugin Misc HW.jar b/plugins/Plugin Misc HW.jar index 9b9c29f..33c3207 100644 Binary files a/plugins/Plugin Misc HW.jar and b/plugins/Plugin Misc HW.jar differ