Implemented some infrastructure for MPROMs
[Mograsim.git] / plugins / net.mograsim.logic.model.am2900 / src / net / mograsim / logic / model / am2900 / machine / AbstractAm2900MachineDefinition.java
index cbc65b8..0fcaed5 100644 (file)
@@ -13,6 +13,7 @@ import net.mograsim.logic.model.am2900.machine.registers.am2910.Am2910RegisterGr
 import net.mograsim.logic.model.model.LogicModelModifiable;
 import net.mograsim.machine.ISASchema;
 import net.mograsim.machine.MachineDefinition;
+import net.mograsim.machine.mi.MPROMDefinition;
 import net.mograsim.machine.registers.Register;
 import net.mograsim.machine.registers.RegisterGroup;
 
@@ -20,10 +21,11 @@ import net.mograsim.machine.registers.RegisterGroup;
 //(used for detecting installed machines in plugin.core)
 public class AbstractAm2900MachineDefinition implements MachineDefinition
 {
-       public static final String AM2900_TEACHING_MACHINE_ID = "Am2900Simple";
-       public static final String AM2900_EXPERT_MACHINE_ID = "Am2900Strict";
-       public static final String AM2900_TEACHING_DESCRIPTION = "Am2900Teaching\nTODO Description";
-       public static final String AM2900_EXPERT_DESCRIPTION = "Am2900Expert\nTODO Description";
+       public static final String AM2900_TEACHING_MACHINE_ID = "Am2900Teaching";
+       public static final String AM2900_EXPERT_MACHINE_ID = "Am2900Expert";
+       public static final String AM2900_TEACHING_DESCRIPTION = "Am2900 for teaching purposes.\nAll registers are reset to 0 when starting.";
+       public static final String AM2900_EXPERT_DESCRIPTION = "Am2900 \"for experts\".\nOnly the \u00b5PC will be reset to 0 when starting."
+                       + "The microprogram will have to reset the other registers manually, including the PC.";
 
        public static final List<Register> unsortedRegisters;
        public static final List<RegisterGroup> registerGroups;
@@ -122,4 +124,9 @@ public class AbstractAm2900MachineDefinition implements MachineDefinition
                return Am2900MicroInstructionMemoryDefinition.instance;
        }
 
+       @Override
+       public MPROMDefinition getMPROMDefinition()
+       {
+               return Am2900MPROMDefinition.instance;
+       }
 }