X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.machine%2Fsrc%2Fnet%2Fmograsim%2Fmachine%2Fmi%2FStandardMicroInstruction.java;h=c565432f2f59938b726430cb0b2412a6f0efad9b;hb=93f106a691015a63a6c5af27406b94303385698a;hp=e40350dfe35fa68418f9d9db31f8b6271eb28fbe;hpb=a89919ed17e728953766d9d617e7db86fcf315ee;p=Mograsim.git diff --git a/net.mograsim.machine/src/net/mograsim/machine/mi/StandardMicroInstruction.java b/net.mograsim.machine/src/net/mograsim/machine/mi/StandardMicroInstruction.java index e40350df..c565432f 100644 --- a/net.mograsim.machine/src/net/mograsim/machine/mi/StandardMicroInstruction.java +++ b/net.mograsim.machine/src/net/mograsim/machine/mi/StandardMicroInstruction.java @@ -4,13 +4,15 @@ import net.mograsim.machine.mi.parameters.MicroInstructionParameter; class StandardMicroInstruction implements MicroInstruction { + private final Runnable updateCallback; private MicroInstructionParameter[] parameters; - StandardMicroInstruction(MicroInstructionParameter... parameters) + StandardMicroInstruction(Runnable updateCallback, MicroInstructionParameter... parameters) { + this.updateCallback = updateCallback; this.parameters = parameters; } - + /** * @throws IndexOutOfBoundsException */ @@ -33,6 +35,7 @@ class StandardMicroInstruction implements MicroInstruction public void setParameter(int index, MicroInstructionParameter param) { parameters[index] = param; + updateCallback.run(); } }