X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.model.am2900%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fam2900%2Fmachine%2FAm2900Machine.java;h=ff0704a18d620cb14f7ffdf481a1a29ef9804df2;hb=259c5b8d38b6ed641fd9b5d78fe20969c67015dc;hp=f8abe44387f2a725cd9e7dbcb7e6eef2846801dc;hpb=2fe86b9ccd64afbe485b8290db9f11b93d9943bf;p=Mograsim.git diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/machine/Am2900Machine.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/machine/Am2900Machine.java index f8abe443..ff0704a1 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/machine/Am2900Machine.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/machine/Am2900Machine.java @@ -10,7 +10,11 @@ import net.mograsim.logic.model.modeladapter.ViewLogicModelAdapter; import net.mograsim.logic.model.serializing.IndirectGUIComponentCreator; import net.mograsim.machine.Machine; import net.mograsim.machine.MachineDefinition; +import net.mograsim.machine.MainMemory; import net.mograsim.machine.Register; +import net.mograsim.machine.mi.MicroInstructionMemory; +import net.mograsim.machine.mi.StandardMicroInstructionMemory; +import net.mograsim.machine.standard.memory.WordAddressableMemory; public class Am2900Machine implements Machine { @@ -18,6 +22,8 @@ public class Am2900Machine implements Machine private ViewModelModifiable viewModel; private Timeline timeline; private Clock clock; + private MainMemory mainMemory; + private MicroInstructionMemory instMemory; public Am2900Machine(Am2900MachineDefinition am2900MachineDefinition) { @@ -29,6 +35,9 @@ public class Am2900Machine implements Machine params.gateProcessTime = 50; params.wireTravelTime = 10; timeline = ViewLogicModelAdapter.convert(viewModel, params); + + mainMemory = new WordAddressableMemory(am2900MachineDefinition.getMainMemoryDefinition()); + instMemory = new StandardMicroInstructionMemory(am2900MachineDefinition.getMicroInstructionMemoryDefinition()); } @Override @@ -76,4 +85,16 @@ public class Am2900Machine implements Machine } + @Override + public MainMemory getMainMemory() + { + return mainMemory; + } + + @Override + public MicroInstructionMemory getMicroInstructionMemory() + { + return instMemory; + } + }