1 package net.mograsim.machine.standard.memory;
5 import net.mograsim.logic.core.timeline.Timeline;
6 import net.mograsim.logic.core.wires.Wire;
7 import net.mograsim.logic.core.wires.Wire.ReadEnd;
8 import net.mograsim.logic.core.wires.Wire.ReadWriteEnd;
9 import net.mograsim.logic.model.model.wires.Pin;
10 import net.mograsim.logic.model.modeladapter.LogicModelParameters;
11 import net.mograsim.logic.model.modeladapter.componentadapters.ComponentAdapter;
13 public class WordAddressableMemoryAdapter implements ComponentAdapter<GUIMemoryWA>
17 public Class<GUIMemoryWA> getSupportedClass()
19 return GUIMemoryWA.class;
22 @SuppressWarnings("unused")
24 public void createAndLinkComponent(Timeline timeline, LogicModelParameters params, GUIMemoryWA guiComponent,
25 Map<Pin, Wire> logicWiresPerPin)
27 ReadWriteEnd data = logicWiresPerPin.get(guiComponent.getDataPin()).createReadWriteEnd();
28 ReadEnd address = logicWiresPerPin.get(guiComponent.getAddressPin()).createReadOnlyEnd();
29 ReadEnd mode = logicWiresPerPin.get(guiComponent.getReadWritePin()).createReadOnlyEnd();
30 new WordAddressableMemoryComponent(timeline, 2, guiComponent.getDefinition(), data, mode, address);