ActiveInstructionChangedListener moved to Machine and updated
[Mograsim.git] / plugins / net.mograsim.machine / src / net / mograsim / machine / Machine.java
index f9d851d..8325068 100644 (file)
@@ -5,6 +5,7 @@ import net.mograsim.logic.core.timeline.Timeline;
 import net.mograsim.logic.core.types.BitVector;
 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();
 
        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