X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.model.am2900%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fam2900%2Fcomponents%2FModelAm2900MainMemory.java;fp=net.mograsim.logic.model.am2900%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fam2900%2Fcomponents%2FModelAm2900MainMemory.java;h=a673bc42c9f1ca2ece402cdb8b3c27893ba99c4e;hb=7b8035a065c7b64f38850907d519f9a7dfb67e24;hp=0000000000000000000000000000000000000000;hpb=d09827f6dc03fa3cded8e996b4ce45fdae3755ca;p=Mograsim.git diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/ModelAm2900MainMemory.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/ModelAm2900MainMemory.java new file mode 100644 index 00000000..a673bc42 --- /dev/null +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/ModelAm2900MainMemory.java @@ -0,0 +1,32 @@ +package net.mograsim.logic.model.am2900.components; + +import net.mograsim.logic.model.am2900.machine.Am2900MachineDefinition; +import net.mograsim.logic.model.model.LogicModelModifiable; +import net.mograsim.logic.model.modeladapter.LogicCoreAdapter; +import net.mograsim.logic.model.serializing.IdentifyParams; +import net.mograsim.logic.model.serializing.IndirectModelComponentCreator; +import net.mograsim.machine.standard.memory.ModelWordAddressableMemory; + +public class ModelAm2900MainMemory extends ModelWordAddressableMemory +{ + public ModelAm2900MainMemory(LogicModelModifiable model, String name) + { + super(model, Am2900MachineDefinition.getInstance().getMainMemoryDefinition(), name); + } + + static + { + LogicCoreAdapter.addComponentAdapter(new ModelAm2900MicroInstructionMemoryAdapter()); + IndirectModelComponentCreator.setComponentSupplier(ModelAm2900MainMemory.class.getCanonicalName(), (m, p, n) -> + { + return new ModelAm2900MainMemory(m, n); + }); + } + + @Override + public String getIDForSerializing(IdentifyParams idParams) + { + return "Am2900MainMemory"; + } + +}