X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=plugins%2Fnet.mograsim.machine%2Fsrc%2Fnet%2Fmograsim%2Fmachine%2FMachine.java;h=8325068d09ce17fb7a43ee37d00f7ef89c2dc771;hb=0c97f70d199e1ffcd2bc13817f7bb12867ba033e;hp=6ff074d0921a622c8f339845cf49807d22dad193;hpb=58babf45ae7d259a296656451d796dbe601377a4;p=Mograsim.git diff --git a/plugins/net.mograsim.machine/src/net/mograsim/machine/Machine.java b/plugins/net.mograsim.machine/src/net/mograsim/machine/Machine.java index 6ff074d0..8325068d 100644 --- a/plugins/net.mograsim.machine/src/net/mograsim/machine/Machine.java +++ b/plugins/net.mograsim.machine/src/net/mograsim/machine/Machine.java @@ -3,8 +3,9 @@ package net.mograsim.machine; import net.mograsim.logic.core.components.CoreClock; import net.mograsim.logic.core.timeline.Timeline; import net.mograsim.logic.core.types.BitVector; -import net.mograsim.machine.mi.MicroInstructionMemory; import net.mograsim.logic.model.model.LogicModel; +import net.mograsim.machine.mi.AssignableMicroInstructionMemory; +import net.mograsim.machine.standard.memory.AssignableMainMemory; public interface Machine { @@ -22,8 +23,18 @@ public interface Machine Timeline getTimeline(); - MainMemory getMainMemory(); + AssignableMainMemory getMainMemory(); - MicroInstructionMemory getMicroInstructionMemory(); + AssignableMicroInstructionMemory getMicroInstructionMemory(); -} + void addActiveMicroInstructionChangedListener(ActiveMicroInstructionChangedListener listener); + + void removeActiveMicroInstructionChangedListener(ActiveMicroInstructionChangedListener listener); + + long getActiveMicroInstructionAddress(); + + public interface ActiveMicroInstructionChangedListener + { + public void instructionChanged(long oldAddress, long newAddress); + } +} \ No newline at end of file