X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.model.am2900%2Ftest%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fam2900%2Fam2910%2FTestableAm2910Impl.java;fp=net.mograsim.logic.model.am2900%2Ftest%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fam2900%2Fam2910%2FTestableAm2910Impl.java;h=1695eae380d38d40e9c71949965bed39b738122c;hb=026db85f46b6ea58e765ecff069545728eebdcac;hp=0000000000000000000000000000000000000000;hpb=ccc97ca46668196a77da02acb2bde450e6d20922;p=Mograsim.git diff --git a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2910/TestableAm2910Impl.java b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2910/TestableAm2910Impl.java new file mode 100644 index 00000000..1695eae3 --- /dev/null +++ b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2910/TestableAm2910Impl.java @@ -0,0 +1,126 @@ +package net.mograsim.logic.model.am2900.am2910; + +import org.junit.Test; + +import net.mograsim.logic.core.components.BitDisplay; +import net.mograsim.logic.core.components.ManualSwitch; +import net.mograsim.logic.core.timeline.Timeline; +import net.mograsim.logic.core.types.BitVector; +import net.mograsim.logic.core.types.BitVectorFormatter; +import net.mograsim.logic.model.am2900.TestEnvironmentHelper; +import net.mograsim.logic.model.am2900.TestEnvironmentHelper.DebugState; +import net.mograsim.logic.model.model.components.GUIComponent; + +public class TestableAm2910Impl implements TestableAm2910 +{ + + private GUIComponent am2901; + private Timeline timeline; + private ManualSwitch I; + private ManualSwitch C; + private ManualSwitch CI; + private ManualSwitch D; + private ManualSwitch _CC; + private ManualSwitch _CCEN; + private ManualSwitch _RDL; + private ManualSwitch _OE; + private BitDisplay _FULL; + private BitDisplay Y; + private BitDisplay _PL, _MAP, _VECT; + + private final TestEnvironmentHelper testHelper = new TestEnvironmentHelper(this, "GUIAm2910"); + + @Override + public void setup() + { + testHelper.setup(DebugState.NO_DEBUG); + } + + @Override + public Result run() + { + return testHelper.run(); + } + + @Override + public void clockOn(boolean isClockOn) + { + if (isClockOn) + C.switchFullOn(); + else + C.switchFullOff(); + } + + @Override + public void setInstruction(Am2910_Inst inst) + { + I.setState(BitVector.of(inst.ordinal(), 4)); + } + + @Override + public void set_CCEN(String val_1_bit) + { + _CCEN.setState(BitVector.parse(val_1_bit)); + } + + @Override + public void setD(String val_12_bit) + { + D.setState(BitVector.parse(val_12_bit)); + } + + @Override + public void set_CC(String val_1_bit) + { + _CC.setState(BitVector.parse(val_1_bit)); + } + + @Override + public void setCI(String val_1_bit) + { + CI.setState(BitVector.parse(val_1_bit)); + } + + @Override + public void set_RLD(String val_1_bit) + { + _RDL.setState(BitVector.parse(val_1_bit)); + } + + @Override + public void set_OE(String val_1_bit) + { + _OE.setState(BitVector.parse(val_1_bit)); + } + + @Override + public String getY() + { + return Y.getDisplayedValue().toString(); + } + + @Override + public String get_FULL() + { + return _FULL.getDisplayedValue().toString(); + } + + @Override + public String get_PL() + { + return _PL.getDisplayedValue().toString(); + } + + @Override + public String get_MAP() + { + return _MAP.getDisplayedValue().toString(); + } + + @Override + public String get_VECT() + { + return _VECT.getDisplayedValue().toString(); + } + +}