From: Fabian Stemmler Date: Sat, 31 Aug 2019 14:52:37 +0000 (+0200) Subject: Merge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim... X-Git-Url: https://mograsim.net/gitweb/?a=commitdiff_plain;h=976f7f2be00457b5cda2489545635ccd076c9afd;hp=3568533e10c7bea628050350e88c0e806c09a85e;p=Mograsim.git Merge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim-2019.git into development --- diff --git a/net.mograsim.logic.model.am2900/GUIAm2904Testbench.json b/net.mograsim.logic.model.am2900/GUIAm2904Testbench.json new file mode 100644 index 00000000..faea225d --- /dev/null +++ b/net.mograsim.logic.model.am2900/GUIAm2904Testbench.json @@ -0,0 +1,2338 @@ +{ + "width": 0.0, + "height": 0.0, + "interfacePins": [], + "innerScale": 1.0, + "submodel": { + "components": [ + { + "id": "TextComponent", + "name": "TextComponent#1", + "pos": { + "x": 140.0, + "y": 125.0 + }, + "params": "IC" + }, + { + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#4", + "pos": { + "x": 335.0, + "y": 105.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } + }, + { + "id": "TextComponent", + "name": "TextComponent#8", + "pos": { + "x": 125.0, + "y": 230.0 + }, + "params": "_EN" + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#1", + "pos": { + "x": 185.0, + "y": 310.0 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#6", + "pos": { + "x": 345.0, + "y": 85.0 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#11", + "pos": { + "x": 375.0, + "y": 190.0 + }, + "params": 1 + }, + { + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#2", + "pos": { + "x": 391.0, + "y": 180.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#6", + "pos": { + "x": 125.0, + "y": 200.0 + }, + "params": "_EZ" + }, + { + "id": "TextComponent", + "name": "TextComponent#14", + "pos": { + "x": 40.0, + "y": 130.0 + }, + "params": "I1" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#13", + "pos": { + "x": 60.0, + "y": 132.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#48", + "pos": { + "x": 350.0, + "y": 220.0 + }, + "params": "_OECT" + }, + { + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#3", + "pos": { + "x": 175.0, + "y": 370.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } + }, + { + "id": "TextComponent", + "name": "TextComponent#42", + "pos": { + "x": 270.0, + "y": 135.0 + }, + "params": "YOVR" + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#4", + "pos": { + "x": 355.0, + "y": 380.0 + }, + "params": 1 + }, + { + "id": "GUIMerger", + "name": "GUIMerger#0", + "pos": { + "x": 85.0, + "y": 130.0 + }, + "params": 13 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#36", + "pos": { + "x": 300.0, + "y": 77.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#24", + "pos": { + "x": 55.0, + "y": 162.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#31", + "pos": { + "x": 55.0, + "y": 242.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#25", + "pos": { + "x": 55.0, + "y": 182.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#16", + "pos": { + "x": 35.0, + "y": 160.0 + }, + "params": "I4" + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#12", + "pos": { + "x": 380.0, + "y": 200.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#29", + "pos": { + "x": 416.0, + "y": 195.0 + }, + "params": "YOVR" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#23", + "pos": { + "x": 60.0, + "y": 172.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#35", + "pos": { + "x": 300.0, + "y": 122.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#4", + "pos": { + "x": 170.0, + "y": 127.5 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#8", + "pos": { + "x": 360.0, + "y": 125.0 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#3", + "pos": { + "x": 215.0, + "y": 340.0 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#3", + "pos": { + "x": 55.0, + "y": 122.5 + }, + "params": 1 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#10", + "pos": { + "x": 370.0, + "y": 175.0 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#34", + "pos": { + "x": 300.0, + "y": 92.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#2", + "pos": { + "x": 170.0, + "y": 112.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#44", + "pos": { + "x": 270.0, + "y": 90.0 + }, + "params": "YZ" + }, + { + "id": "TextComponent", + "name": "TextComponent#32", + "pos": { + "x": 390.0, + "y": 315.0 + }, + "params": "SIOn" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#6", + "pos": { + "x": 170.0, + "y": 157.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#39", + "pos": { + "x": 110.0, + "y": 370.0 + }, + "params": "SIO0" + }, + { + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#6", + "pos": { + "x": 365.0, + "y": 370.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#41", + "pos": { + "x": 110.0, + "y": 330.0 + }, + "params": "QIOn" + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#0", + "pos": { + "x": 185.0, + "y": 365.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#10", + "pos": { + "x": 35.0, + "y": 120.0 + }, + "params": "I0" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#15", + "pos": { + "x": 140.0, + "y": 317.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#20", + "pos": { + "x": 140.0, + "y": 302.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#17", + "pos": { + "x": 140.0, + "y": 387.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#10", + "pos": { + "x": 160.0, + "y": 247.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#11", + "pos": { + "x": 160.0, + "y": 217.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#35", + "pos": { + "x": 390.0, + "y": 385.0 + }, + "params": "QIO0" + }, + { + "id": "TextComponent", + "name": "TextComponent#30", + "pos": { + "x": 390.0, + "y": 240.0 + }, + "params": "CT" + }, + { + "id": "TextComponent", + "name": "TextComponent#40", + "pos": { + "x": 110.0, + "y": 315.0 + }, + "params": "SIOn" + }, + { + "id": "TextComponent", + "name": "TextComponent#12", + "pos": { + "x": 35.0, + "y": 140.0 + }, + "params": "I2" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#18", + "pos": { + "x": 140.0, + "y": 372.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#5", + "pos": { + "x": 170.0, + "y": 142.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#8", + "pos": { + "x": 155.0, + "y": 187.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#15", + "pos": { + "x": 40.0, + "y": 150.0 + }, + "params": "I3" + }, + { + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#6", + "pos": { + "x": 335.0, + "y": 120.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } + }, + { + "id": "TextComponent", + "name": "TextComponent#43", + "pos": { + "x": 270.0, + "y": 120.0 + }, + "params": "YN" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#29", + "pos": { + "x": 55.0, + "y": 222.5 + }, + "params": 1 + }, + { + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#1", + "pos": { + "x": 175.0, + "y": 330.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } + }, + { + "id": "TextComponent", + "name": "TextComponent#45", + "pos": { + "x": 270.0, + "y": 105.0 + }, + "params": "YC" + }, + { + "id": "TextComponent", + "name": "TextComponent#17", + "pos": { + "x": 35.0, + "y": 180.0 + }, + "params": "I6" + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#9", + "pos": { + "x": 365.0, + "y": 160.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#11", + "pos": { + "x": 35.0, + "y": 240.0 + }, + "params": "I12" + }, + { + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#7", + "pos": { + "x": 335.0, + "y": 135.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } + }, + { + "id": "TextComponent", + "name": "TextComponent#3", + "pos": { + "x": 140.0, + "y": 155.0 + }, + "params": "IOVR" + }, + { + "id": "TextComponent", + "name": "TextComponent#36", + "pos": { + "x": 30.0, + "y": 300.0 + }, + "params": "enable S/QIOn input" + }, + { + "id": "TextComponent", + "name": "TextComponent#19", + "pos": { + "x": 35.0, + "y": 200.0 + }, + "params": "I8" + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#7", + "pos": { + "x": 360.0, + "y": 110.0 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#22", + "pos": { + "x": 60.0, + "y": 152.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#47", + "pos": { + "x": 145.0, + "y": 270.0 + }, + "params": "_SE" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#9", + "pos": { + "x": 160.0, + "y": 232.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#9", + "pos": { + "x": 125.0, + "y": 245.0 + }, + "params": "_EOVR" + }, + { + "id": "TextComponent", + "name": "TextComponent#28", + "pos": { + "x": 416.0, + "y": 180.0 + }, + "params": "YN" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#12", + "pos": { + "x": 160.0, + "y": 202.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#27", + "pos": { + "x": 416.0, + "y": 165.0 + }, + "params": "YC" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#32", + "pos": { + "x": 300.0, + "y": 107.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#33", + "pos": { + "x": 300.0, + "y": 137.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#37", + "pos": { + "x": 165.0, + "y": 270.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#4", + "pos": { + "x": 115.0, + "y": 170.0 + }, + "params": "_CEM" + }, + { + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#9", + "pos": { + "x": 365.0, + "y": 315.0 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#0", + "pos": { + "x": 255.0, + "y": 152.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#21", + "pos": { + "x": 35.0, + "y": 220.0 + }, + "params": "I10" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#1", + "pos": { + "x": 170.0, + "y": 82.5 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#16", + "pos": { + "x": 140.0, + "y": 332.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#46", + "pos": { + "x": 220.0, + "y": 75.0 + }, + "params": "enable Y input" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#30", + "pos": { + "x": 60.0, + "y": 212.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#0", + "pos": { + "x": 140.0, + "y": 110.0 + }, + "params": "IZ" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#14", + "pos": { + "x": 165.0, + "y": 287.5 + }, + "params": 1 + }, + { + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#8", + "pos": { + "x": 365.0, + "y": 330.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#5", + "pos": { + "x": 115.0, + "y": 185.0 + }, + "params": "_CEmu" + }, + { + "id": "GUIAm2904", + "name": "Am2904", + "pos": { + "x": 220.0, + "y": 175.0 + } + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#7", + "pos": { + "x": 155.0, + "y": 172.5 + }, + "params": 1 + }, + { + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#5", + "pos": { + "x": 365.0, + "y": 275.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#18", + "pos": { + "x": 40.0, + "y": 190.0 + }, + "params": "I7" + }, + { + "id": "TextComponent", + "name": "TextComponent#37", + "pos": { + "x": 30.0, + "y": 355.0 + }, + "params": "enable S/QIO0 input" + }, + { + "id": "TextComponent", + "name": "TextComponent#13", + "pos": { + "x": 40.0, + "y": 170.0 + }, + "params": "I5" + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#2", + "pos": { + "x": 210.0, + "y": 325.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#22", + "pos": { + "x": 40.0, + "y": 230.0 + }, + "params": "I11" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#19", + "pos": { + "x": 140.0, + "y": 357.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#7", + "pos": { + "x": 125.0, + "y": 215.0 + }, + "params": "_EC" + }, + { + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#5", + "pos": { + "x": 335.0, + "y": 90.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#5", + "pos": { + "x": 360.0, + "y": 390.0 + }, + "params": 1 + }, + { + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#4", + "pos": { + "x": 365.0, + "y": 240.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#25", + "pos": { + "x": 225.0, + "y": 150.0 + }, + "params": "_OEY" + }, + { + "id": "TextComponent", + "name": "TextComponent#31", + "pos": { + "x": 390.0, + "y": 275.0 + }, + "params": "C0" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#28", + "pos": { + "x": 55.0, + "y": 202.5 + }, + "params": 1 + }, + { + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#2", + "pos": { + "x": 175.0, + "y": 385.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } + }, + { + "id": "TextComponent", + "name": "TextComponent#23", + "pos": { + "x": 145.0, + "y": 285.0 + }, + "params": "CX" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#21", + "pos": { + "x": 55.0, + "y": 142.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#26", + "pos": { + "x": 416.0, + "y": 150.0 + }, + "params": "YZ" + }, + { + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#0", + "pos": { + "x": 391.0, + "y": 150.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#20", + "pos": { + "x": 40.0, + "y": 210.0 + }, + "params": "I9" + }, + { + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#3", + "pos": { + "x": 391.0, + "y": 195.0 + }, + "params": 1 + }, + { + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#1", + "pos": { + "x": 391.0, + "y": 165.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#34", + "pos": { + "x": 390.0, + "y": 370.0 + }, + "params": "SIO0" + }, + { + "id": "TextComponent", + "name": "TextComponent#38", + "pos": { + "x": 110.0, + "y": 385.0 + }, + "params": "QIO0" + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#27", + "pos": { + "x": 60.0, + "y": 232.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#24", + "pos": { + "x": 150.0, + "y": 80.0 + }, + "params": "C" + }, + { + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#0", + "pos": { + "x": 175.0, + "y": 315.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#26", + "pos": { + "x": 60.0, + "y": 192.5 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#2", + "pos": { + "x": 140.0, + "y": 140.0 + }, + "params": "IN" + }, + { + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#7", + "pos": { + "x": 365.0, + "y": 385.0 + }, + "params": 1 + }, + { + "id": "GUIManualSwitch", + "name": "GUIManualSwitch#38", + "pos": { + "x": 385.0, + "y": 220.0 + }, + "params": 1 + }, + { + "id": "TextComponent", + "name": "TextComponent#33", + "pos": { + "x": 390.0, + "y": 330.0 + }, + "params": "QIOn" + } + ], + "wires": [ + { + "pin1": { + "compName": "GUIManualSwitch#20", + "pinName": "" + }, + "pin2": { + "compName": "WireCrossPoint#1", + "pinName": "" + }, + "name": "unnamedWire#31", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#7", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#4", + "pinName": "EN" + }, + "name": "unnamedWire#62", + "path": [] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "QIO0" + }, + "pin2": { + "compName": "WireCrossPoint#5", + "pinName": "" + }, + "name": "unnamedWire#41", + "path": [ + { + "x": 360.0, + "y": 305.0 + } + ] + }, + { + "pin1": { + "compName": "GUIManualSwitch#18", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#3", + "pinName": "IN" + }, + "name": "unnamedWire#27", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#8", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#6", + "pinName": "EN" + }, + "name": "unnamedWire#64", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#3", + "pinName": "" + }, + "pin2": { + "compName": "GUIMerger#0", + "pinName": "I0" + }, + "name": "unnamedWire#42", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#10", + "pinName": "" + }, + "pin2": { + "compName": "GUIBitDisplay#1", + "pinName": "" + }, + "name": "unnamedWire#16", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#1", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#1", + "pinName": "EN" + }, + "name": "unnamedWire#33", + "path": [ + { + "x": 200.0, + "y": 310.0 + }, + { + "x": 200.0, + "y": 335.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#2", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#0", + "pinName": "OUT" + }, + "name": "unnamedWire#21", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#9", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#5", + "pinName": "OUT" + }, + "name": "unnamedWire#67", + "path": [ + { + "x": 365.0, + "y": 100.0 + } + ] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "_CEmu" + }, + "pin2": { + "compName": "GUIManualSwitch#8", + "pinName": "" + }, + "name": "unnamedWire#7", + "path": [ + { + "x": 185.0, + "y": 205.0 + }, + { + "x": 185.0, + "y": 195.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#11", + "pinName": "" + }, + "pin2": { + "compName": "Am2904", + "pinName": "YN" + }, + "name": "unnamedWire#15", + "path": [ + { + "x": 375.0, + "y": 195.0 + } + ] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "IOVR" + }, + "pin2": { + "compName": "GUIManualSwitch#6", + "pinName": "" + }, + "name": "unnamedWire#5", + "path": [ + { + "x": 195.0, + "y": 200.0 + }, + { + "x": 195.0, + "y": 165.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#11", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#6", + "pinName": "OUT" + }, + "name": "unnamedWire#70", + "path": [ + { + "x": 375.0, + "y": 130.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#6", + "pinName": "" + }, + "pin2": { + "compName": "GUIManualSwitch#36", + "pinName": "" + }, + "name": "unnamedWire#60", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#38", + "pinName": "" + }, + "pin2": { + "compName": "Am2904", + "pinName": "_OECT" + }, + "name": "unnamedWire#75", + "path": [ + { + "x": 410.0, + "y": 230.0 + }, + { + "x": 410.0, + "y": 215.0 + }, + { + "x": 345.0, + "y": 215.0 + }, + { + "x": 345.0, + "y": 225.0 + } + ] + }, + { + "pin1": { + "compName": "GUITriStateBuffer#1", + "pinName": "OUT" + }, + "pin2": { + "compName": "WireCrossPoint#3", + "pinName": "" + }, + "name": "unnamedWire#23", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#19", + "pinName": "" + }, + "pin2": { + "compName": "WireCrossPoint#0", + "pinName": "" + }, + "name": "unnamedWire#28", + "path": [] + }, + { + "pin1": { + "compName": "GUIMerger#0", + "pinName": "I8" + }, + "pin2": { + "compName": "GUIManualSwitch#28", + "pinName": "" + }, + "name": "unnamedWire#47", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#26", + "pinName": "" + }, + "pin2": { + "compName": "GUIMerger#0", + "pinName": "I7" + }, + "name": "unnamedWire#48", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#15", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#0", + "pinName": "IN" + }, + "name": "unnamedWire#24", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#12", + "pinName": "" + }, + "pin2": { + "compName": "GUIBitDisplay#3", + "pinName": "" + }, + "name": "unnamedWire#72", + "path": [ + { + "x": 380.0, + "y": 205.0 + } + ] + }, + { + "pin1": { + "compName": "GUIManualSwitch#5", + "pinName": "" + }, + "pin2": { + "compName": "Am2904", + "pinName": "IN" + }, + "name": "unnamedWire#4", + "path": [ + { + "x": 200.0, + "y": 150.0 + }, + { + "x": 200.0, + "y": 195.0 + } + ] + }, + { + "pin1": { + "compName": "GUIManualSwitch#35", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#6", + "pinName": "IN" + }, + "name": "unnamedWire#56", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#31", + "pinName": "" + }, + "pin2": { + "compName": "GUIMerger#0", + "pinName": "I12" + }, + "name": "unnamedWire#43", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#0", + "pinName": "" + }, + "pin2": { + "compName": "Am2904", + "pinName": "_OEY" + }, + "name": "unnamedWire#0", + "path": [ + { + "x": 280.0, + "y": 160.0 + } + ] + }, + { + "pin1": { + "compName": "GUITriStateBuffer#7", + "pinName": "IN" + }, + "pin2": { + "compName": "GUIManualSwitch#33", + "pinName": "" + }, + "name": "unnamedWire#55", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#14", + "pinName": "" + }, + "pin2": { + "compName": "Am2904", + "pinName": "Cx" + }, + "name": "unnamedWire#13", + "path": [ + { + "x": 200.0, + "y": 295.0 + }, + { + "x": 200.0, + "y": 285.0 + } + ] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "_SE" + }, + "pin2": { + "compName": "GUIManualSwitch#37", + "pinName": "" + }, + "name": "unnamedWire#74", + "path": [ + { + "x": 215.0, + "y": 260.0 + }, + { + "x": 215.0, + "y": 280.0 + } + ] + }, + { + "pin1": { + "compName": "GUITriStateBuffer#7", + "pinName": "EN" + }, + "pin2": { + "compName": "WireCrossPoint#8", + "pinName": "" + }, + "name": "unnamedWire#65", + "path": [ + { + "x": 360.0, + "y": 140.0 + } + ] + }, + { + "pin1": { + "compName": "GUITriStateBuffer#2", + "pinName": "IN" + }, + "pin2": { + "compName": "GUIManualSwitch#17", + "pinName": "" + }, + "name": "unnamedWire#26", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#23", + "pinName": "" + }, + "pin2": { + "compName": "GUIMerger#0", + "pinName": "I5" + }, + "name": "unnamedWire#50", + "path": [] + }, + { + "pin1": { + "compName": "GUIMerger#0", + "pinName": "I6" + }, + "pin2": { + "compName": "GUIManualSwitch#25", + "pinName": "" + }, + "name": "unnamedWire#49", + "path": [] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "_EOVR" + }, + "pin2": { + "compName": "GUIManualSwitch#10", + "pinName": "" + }, + "name": "unnamedWire#10", + "path": [ + { + "x": 205.0, + "y": 220.0 + }, + { + "x": 205.0, + "y": 255.0 + } + ] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "SIOn" + }, + "pin2": { + "compName": "WireCrossPoint#2", + "pinName": "" + }, + "name": "unnamedWire#20", + "path": [ + { + "x": 210.0, + "y": 295.0 + } + ] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "YC" + }, + "pin2": { + "compName": "WireCrossPoint#10", + "pinName": "" + }, + "name": "unnamedWire#68", + "path": [ + { + "x": 370.0, + "y": 190.0 + } + ] + }, + { + "pin1": { + "compName": "GUIBitDisplay#8", + "pinName": "" + }, + "pin2": { + "compName": "WireCrossPoint#3", + "pinName": "" + }, + "name": "unnamedWire#35", + "path": [ + { + "x": 350.0, + "y": 340.0 + }, + { + "x": 350.0, + "y": 380.0 + }, + { + "x": 215.0, + "y": 380.0 + } + ] + }, + { + "pin1": { + "compName": "GUIManualSwitch#1", + "pinName": "" + }, + "pin2": { + "compName": "Am2904", + "pinName": "C" + }, + "name": "unnamedWire#1", + "path": [ + { + "x": 215.0, + "y": 90.0 + }, + { + "x": 215.0, + "y": 180.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#1", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#0", + "pinName": "EN" + }, + "name": "unnamedWire#32", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#22", + "pinName": "" + }, + "pin2": { + "compName": "GUIMerger#0", + "pinName": "I3" + }, + "name": "unnamedWire#52", + "path": [] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "YOVR" + }, + "pin2": { + "compName": "WireCrossPoint#12", + "pinName": "" + }, + "name": "unnamedWire#14", + "path": [] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "C0" + }, + "pin2": { + "compName": "GUIBitDisplay#5", + "pinName": "" + }, + "name": "unnamedWire#19", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#30", + "pinName": "" + }, + "pin2": { + "compName": "GUIMerger#0", + "pinName": "I9" + }, + "name": "unnamedWire#46", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#7", + "pinName": "" + }, + "pin2": { + "compName": "Am2904", + "pinName": "_CEM" + }, + "name": "unnamedWire#6", + "path": [ + { + "x": 190.0, + "y": 180.0 + }, + { + "x": 190.0, + "y": 205.0 + } + ] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "IC" + }, + "pin2": { + "compName": "GUIManualSwitch#4", + "pinName": "" + }, + "name": "unnamedWire#3", + "path": [ + { + "x": 205.0, + "y": 190.0 + }, + { + "x": 205.0, + "y": 135.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#6", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#5", + "pinName": "EN" + }, + "name": "unnamedWire#59", + "path": [] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "YZ" + }, + "pin2": { + "compName": "WireCrossPoint#9", + "pinName": "" + }, + "name": "unnamedWire#17", + "path": [ + { + "x": 365.0, + "y": 185.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#0", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#2", + "pinName": "EN" + }, + "name": "unnamedWire#30", + "path": [ + { + "x": 200.0, + "y": 365.0 + }, + { + "x": 200.0, + "y": 390.0 + } + ] + }, + { + "pin1": { + "compName": "GUIManualSwitch#2", + "pinName": "" + }, + "pin2": { + "compName": "Am2904", + "pinName": "IZ" + }, + "name": "unnamedWire#2", + "path": [ + { + "x": 210.0, + "y": 120.0 + }, + { + "x": 210.0, + "y": 185.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#7", + "pinName": "" + }, + "pin2": { + "compName": "WireCrossPoint#8", + "pinName": "" + }, + "name": "unnamedWire#63", + "path": [] + }, + { + "pin1": { + "compName": "GUITriStateBuffer#3", + "pinName": "OUT" + }, + "pin2": { + "compName": "WireCrossPoint#4", + "pinName": "" + }, + "name": "unnamedWire#36", + "path": [ + { + "x": 210.0, + "y": 380.0 + }, + { + "x": 210.0, + "y": 385.0 + }, + { + "x": 355.0, + "y": 385.0 + } + ] + }, + { + "pin1": { + "compName": "GUIManualSwitch#16", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#1", + "pinName": "IN" + }, + "name": "unnamedWire#25", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#10", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#4", + "pinName": "OUT" + }, + "name": "unnamedWire#69", + "path": [ + { + "x": 370.0, + "y": 115.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#5", + "pinName": "" + }, + "pin2": { + "compName": "GUIBitDisplay#7", + "pinName": "" + }, + "name": "unnamedWire#38", + "path": [ + { + "x": 360.0, + "y": 395.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#4", + "pinName": "" + }, + "pin2": { + "compName": "Am2904", + "pinName": "SIO0" + }, + "name": "unnamedWire#40", + "path": [ + { + "x": 355.0, + "y": 295.0 + } + ] + }, + { + "pin1": { + "compName": "GUIManualSwitch#9", + "pinName": "" + }, + "pin2": { + "compName": "Am2904", + "pinName": "_EN" + }, + "name": "unnamedWire#11", + "path": [ + { + "x": 200.0, + "y": 240.0 + }, + { + "x": 200.0, + "y": 215.0 + } + ] + }, + { + "pin1": { + "compName": "GUIMerger#0", + "pinName": "I10" + }, + "pin2": { + "compName": "GUIManualSwitch#29", + "pinName": "" + }, + "name": "unnamedWire#45", + "path": [] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "_EZ" + }, + "pin2": { + "compName": "GUIManualSwitch#12", + "pinName": "" + }, + "name": "unnamedWire#8", + "path": [] + }, + { + "pin1": { + "compName": "GUIMerger#0", + "pinName": "I4" + }, + "pin2": { + "compName": "GUIManualSwitch#24", + "pinName": "" + }, + "name": "unnamedWire#51", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#3", + "pinName": "" + }, + "pin2": { + "compName": "Am2904", + "pinName": "QIOn" + }, + "name": "unnamedWire#22", + "path": [ + { + "x": 215.0, + "y": 305.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#2", + "pinName": "" + }, + "pin2": { + "compName": "GUIBitDisplay#9", + "pinName": "" + }, + "name": "unnamedWire#34", + "path": [ + { + "x": 210.0, + "y": 375.0 + }, + { + "x": 345.0, + "y": 375.0 + }, + { + "x": 345.0, + "y": 325.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#9", + "pinName": "" + }, + "pin2": { + "compName": "GUIBitDisplay#0", + "pinName": "" + }, + "name": "unnamedWire#66", + "path": [] + }, + { + "pin1": { + "compName": "GUIMerger#0", + "pinName": "I1" + }, + "pin2": { + "compName": "GUIManualSwitch#13", + "pinName": "" + }, + "name": "unnamedWire#54", + "path": [] + }, + { + "pin1": { + "compName": "GUIMerger#0", + "pinName": "I2" + }, + "pin2": { + "compName": "GUIManualSwitch#21", + "pinName": "" + }, + "name": "unnamedWire#53", + "path": [] + }, + { + "pin1": { + "compName": "GUIMerger#0", + "pinName": "O" + }, + "pin2": { + "compName": "Am2904", + "pinName": "I" + }, + "name": "unnamedWire#12", + "path": [ + { + "x": 105.0, + "y": 190.0 + }, + { + "x": 105.0, + "y": 265.0 + }, + { + "x": 210.0, + "y": 265.0 + }, + { + "x": 210.0, + "y": 235.0 + } + ] + }, + { + "pin1": { + "compName": "GUITriStateBuffer#4", + "pinName": "IN" + }, + "pin2": { + "compName": "GUIManualSwitch#32", + "pinName": "" + }, + "name": "unnamedWire#57", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#0", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#3", + "pinName": "EN" + }, + "name": "unnamedWire#29", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#12", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#7", + "pinName": "OUT" + }, + "name": "unnamedWire#73", + "path": [ + { + "x": 380.0, + "y": 145.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#11", + "pinName": "" + }, + "pin2": { + "compName": "GUIBitDisplay#2", + "pinName": "" + }, + "name": "unnamedWire#71", + "path": [] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "_EC" + }, + "pin2": { + "compName": "GUIManualSwitch#11", + "pinName": "" + }, + "name": "unnamedWire#9", + "path": [ + { + "x": 195.0, + "y": 215.0 + }, + { + "x": 195.0, + "y": 225.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#5", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#2", + "pinName": "OUT" + }, + "name": "unnamedWire#37", + "path": [ + { + "x": 210.0, + "y": 390.0 + }, + { + "x": 210.0, + "y": 395.0 + } + ] + }, + { + "pin1": { + "compName": "Am2904", + "pinName": "CT" + }, + "pin2": { + "compName": "GUIBitDisplay#4", + "pinName": "" + }, + "name": "unnamedWire#18", + "path": [ + { + "x": 345.0, + "y": 235.0 + }, + { + "x": 345.0, + "y": 250.0 + } + ] + }, + { + "pin1": { + "compName": "WireCrossPoint#6", + "pinName": "" + }, + "pin2": { + "compName": "WireCrossPoint#7", + "pinName": "" + }, + "name": "unnamedWire#61", + "path": [ + { + "x": 360.0, + "y": 85.0 + } + ] + }, + { + "pin1": { + "compName": "GUIBitDisplay#6", + "pinName": "" + }, + "pin2": { + "compName": "WireCrossPoint#4", + "pinName": "" + }, + "name": "unnamedWire#39", + "path": [] + }, + { + "pin1": { + "compName": "GUIMerger#0", + "pinName": "I11" + }, + "pin2": { + "compName": "GUIManualSwitch#27", + "pinName": "" + }, + "name": "unnamedWire#44", + "path": [] + }, + { + "pin1": { + "compName": "GUIManualSwitch#34", + "pinName": "" + }, + "pin2": { + "compName": "GUITriStateBuffer#5", + "pinName": "IN" + }, + "name": "unnamedWire#58", + "path": [] + } + ], + "version": "0.1.1" + }, + "symbolRendererSnippetID": "default", + "outlineRendererSnippetID": "default", + "highLevelStateHandlerSnippetID": "default", + "version": "0.1.4" +} \ No newline at end of file diff --git a/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904.json b/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904.json index 318840bb..dd1723b0 100644 --- a/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904.json +++ b/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904.json @@ -1,4 +1,3 @@ -mograsim version: 0.1.3 { "width": 120.0, "height": 178.0, @@ -19,14 +18,6 @@ mograsim version: 0.1.3 "name": "_CEM", "logicWidth": 1 }, - { - "location": { - "x": 120.0, - "y": 11.0 - }, - "name": "YZ", - "logicWidth": 1 - }, { "location": { "x": 0.0, @@ -35,22 +26,6 @@ mograsim version: 0.1.3 "name": "C", "logicWidth": 1 }, - { - "location": { - "x": 0.0, - "y": 20.0 - }, - "name": "IN", - "logicWidth": 1 - }, - { - "location": { - "x": 61.0, - "y": 0.0 - }, - "name": "_OEY", - "logicWidth": 1 - }, { "location": { "x": 0.0, @@ -85,82 +60,130 @@ mograsim version: 0.1.3 }, { "location": { - "x": 120.0, - "y": 118.0 + "x": 0.0, + "y": 36.0 }, - "name": "SIO0", + "name": "_EZ", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 10.0 + "y": 110.0 }, - "name": "IZ", + "name": "Cx", "logicWidth": 1 }, { "location": { "x": 120.0, - "y": 60.0 + "y": 21.0 }, - "name": "CT", + "name": "YN", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 128.0 + "y": 15.0 }, - "name": "QIOn", + "name": "IC", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 119.0 + "y": 42.0 }, - "name": "SIOn", + "name": "_EOVR", + "logicWidth": 1 + }, + { + "location": { + "x": 120.0, + "y": 11.0 + }, + "name": "YZ", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 33.0 + "y": 20.0 }, - "name": "_CEmu", + "name": "IN", + "logicWidth": 1 + }, + { + "location": { + "x": 61.0, + "y": 0.0 + }, + "name": "_OEY", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 36.0 + "y": 83.0 }, - "name": "_EZ", + "name": "_SE", + "logicWidth": 1 + }, + { + "location": { + "x": 120.0, + "y": 118.0 + }, + "name": "SIO0", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 110.0 + "y": 10.0 }, - "name": "Cx", + "name": "IZ", "logicWidth": 1 }, { "location": { "x": 120.0, - "y": 21.0 + "y": 60.0 }, - "name": "YN", + "name": "CT", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 15.0 + "y": 128.0 }, - "name": "IC", + "name": "QIOn", + "logicWidth": 1 + }, + { + "location": { + "x": 0.0, + "y": 119.0 + }, + "name": "SIOn", + "logicWidth": 1 + }, + { + "location": { + "x": 0.0, + "y": 33.0 + }, + "name": "_CEmu", + "logicWidth": 1 + }, + { + "location": { + "x": 120.0, + "y": 51.0 + }, + "name": "_OECT", "logicWidth": 1 }, { @@ -186,27 +209,44 @@ mograsim version: 0.1.3 }, "name": "_EC", "logicWidth": 1 - }, - { - "location": { - "x": 0.0, - "y": 42.0 - }, - "name": "_EOVR", - "logicWidth": 1 } ], + "innerScale": 0.2, "submodel": { - "innerScale": 0.2, - "subComps": [ + "components": [ { - "id": "WireCrossPoint", - "name": "WireCrossPoint#14", + "id": "GUINandGate", + "name": "GUINandGate#1", "pos": { - "x": 520.0, - "y": 190.0 + "x": 130.0, + "y": 5.0 }, - "params": 4 + "params": 1 + }, + { + "id": "GUINandGate", + "name": "GUINandGate#10", + "pos": { + "x": 340.0, + "y": 120.0 + }, + "params": 1 + }, + { + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#21", + "pos": { + "x": 250.0, + "y": 820.0 + } + }, + { + "id": "GUImux2", + "name": "DeserializedSubmodelComponent#15", + "pos": { + "x": 435.0, + "y": 575.0 + } }, { "id": "WireCrossPoint", @@ -219,21 +259,21 @@ mograsim version: 0.1.3 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#16", + "name": "WireCrossPoint#27", "pos": { - "x": 255.0, - "y": 255.0 + "x": 440.0, + "y": 385.0 }, - "params": 4 + "params": 1 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#15", + "name": "WireCrossPoint#6", "pos": { - "x": 255.0, - "y": 265.0 + "x": 120.0, + "y": 15.0 }, - "params": 4 + "params": 1 }, { "id": "WireCrossPoint", @@ -245,149 +285,123 @@ mograsim version: 0.1.3 "params": 1 }, { - "id": "GUITriStateBuffer", - "name": "GUITriStateBuffer#4", + "id": "GUIAm2904ShiftInstrDecode", + "name": "GUIAm2904ShiftInstrDecode#0", "pos": { - "x": 565.0, - "y": 655.0 - }, - "params": { - "logicWidth": 1, - "orientation": "RIGHT" + "x": 50.0, + "y": 360.0 } }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#17", - "pos": { - "x": 360.0, - "y": 495.0 - }, - "params": 1 - }, - { - "id": "GUITriStateBuffer", - "name": "GUITriStateBuffer#2", + "id": "GUISplitter", + "name": "GUISplitter#6", "pos": { - "x": 10.0, - "y": 605.0 + "x": 285.0, + "y": 320.0 }, - "params": { - "logicWidth": 1, - "orientation": "RIGHT" - } + "params": 3 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#19", + "name": "WireCrossPoint#12", "pos": { - "x": 35.0, - "y": 595.0 + "x": 195.0, + "y": 35.0 }, "params": 1 }, { - "id": "GUITriStateBuffer", - "name": "GUITriStateBuffer#3", + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#12", "pos": { - "x": 560.0, - "y": 595.0 - }, - "params": { - "logicWidth": 1, - "orientation": "RIGHT" + "x": 315.0, + "y": 505.0 } }, { - "id": "GUITriStateBuffer", - "name": "GUITriStateBuffer#0", + "id": "GUIAm2904TestLogic", + "name": "DeserializedSubmodelComponent#6", "pos": { - "x": 530.0, - "y": 170.0 - }, - "params": { - "logicWidth": 4, - "orientation": "RIGHT" + "x": 225.0, + "y": 340.0 } }, { - "id": "GUITriStateBuffer", - "name": "GUITriStateBuffer#1", + "id": "GUImux3", + "name": "DeserializedSubmodelComponent#7", "pos": { - "x": 10.0, - "y": 650.0 - }, - "params": { - "logicWidth": 1, - "orientation": "RIGHT" + "x": 300.0, + "y": 310.0 } }, { - "id": "GUIAm2904muSR", - "name": "DeserializedSubmodelComponent#1", + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#0", "pos": { - "x": 270.0, - "y": 250.0 - } + "x": 530.0, + "y": 70.0 + }, + "params": 4 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#10", + "name": "WireCrossPoint#22", "pos": { - "x": 195.0, - "y": 55.0 + "x": 250.0, + "y": 540.0 }, "params": 1 }, { - "id": "GUIAm2904MSR", - "name": "DeserializedSubmodelComponent#0", + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#14", "pos": { - "x": 225.0, - "y": 95.0 + "x": 415.0, + "y": 465.0 } }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#12", + "id": "GUINandGate", + "name": "GUINandGate#7", "pos": { - "x": 195.0, - "y": 35.0 + "x": 205.0, + "y": 50.0 }, "params": 1 }, { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#3", + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#17", "pos": { - "x": 470.0, - "y": 160.0 + "x": 190.0, + "y": 460.0 } }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#11", + "id": "GUISplitter", + "name": "GUISplitter#11", "pos": { - "x": 195.0, - "y": 15.0 + "x": 405.0, + "y": 575.0 }, - "params": 1 + "params": 3 }, { - "id": "GUIand", - "name": "DeserializedSubmodelComponent#2", + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#10", "pos": { - "x": 370.0, - "y": 130.0 + "x": 455.0, + "y": 355.0 } }, { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#5", + "id": "WireCrossPoint", + "name": "WireCrossPoint#4", "pos": { - "x": 415.0, - "y": 210.0 - } + "x": 150.0, + "y": 160.0 + }, + "params": 1 }, { "id": "GUInot4", @@ -398,97 +412,123 @@ mograsim version: 0.1.3 } }, { - "id": "GUIMerger", - "name": "GUIMerger#4", + "id": "WireCrossPoint", + "name": "WireCrossPoint#30", "pos": { - "x": 25.0, - "y": 355.0 + "x": 550.0, + "y": 570.0 }, - "params": 2 + "params": 1 }, { - "id": "GUIMerger", - "name": "GUIMerger#3", + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#2", "pos": { - "x": 510.0, - "y": 165.0 + "x": 10.0, + "y": 605.0 }, - "params": 4 + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } }, { - "id": "GUImux3", - "name": "DeserializedSubmodelComponent#7", + "id": "GUIAm2904muSR", + "name": "DeserializedSubmodelComponent#1", "pos": { - "x": 300.0, - "y": 310.0 + "x": 270.0, + "y": 250.0 } }, { - "id": "GUIMerger", - "name": "GUIMerger#2", + "id": "GUISplitter", + "name": "GUISplitter#7", "pos": { - "x": 15.0, - "y": 65.0 + "x": 420.0, + "y": 325.0 }, "params": 4 }, { - "id": "GUIAm2904TestLogic", - "name": "DeserializedSubmodelComponent#6", + "id": "WireCrossPoint", + "name": "WireCrossPoint#15", "pos": { - "x": 225.0, - "y": 340.0 + "x": 255.0, + "y": 265.0 + }, + "params": 4 + }, + { + "id": "GUIAm2904RegCTInstrDecode", + "name": "GUIAm2904RegCTInstrDecode#0", + "pos": { + "x": 50.0, + "y": 240.0 } }, { "id": "GUIMerger", - "name": "GUIMerger#1", + "name": "GUIMerger#3", "pos": { - "x": 25.0, - "y": 305.0 + "x": 510.0, + "y": 165.0 }, - "params": 5 + "params": 4 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#9", + "id": "GUISplitter", + "name": "GUISplitter#10", "pos": { - "x": 480.0, - "y": 305.0 - } + "x": 420.0, + "y": 410.0 + }, + "params": 4 }, { - "id": "GUIMerger", - "name": "GUIMerger#0", + "id": "WireCrossPoint", + "name": "WireCrossPoint#33", "pos": { - "x": 25.0, - "y": 245.0 + "x": 530.0, + "y": 270.0 }, - "params": 6 + "params": 1 }, { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#8", + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#3", "pos": { - "x": 540.0, - "y": 295.0 + "x": 560.0, + "y": 595.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" } }, { - "id": "GUINandGate", - "name": "GUINandGate#9", + "id": "WireCrossPoint", + "name": "WireCrossPoint#11", "pos": { - "x": 205.0, - "y": 10.0 + "x": 195.0, + "y": 15.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#8", + "id": "GUISplitter", + "name": "GUISplitter#0", "pos": { - "x": 205.0, - "y": 30.0 + "x": 10.0, + "y": 245.0 + }, + "params": 13 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#7", + "pos": { + "x": 215.0, + "y": 180.0 }, "params": 1 }, @@ -502,296 +542,318 @@ mograsim version: 0.1.3 "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#4", + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#1", "pos": { - "x": 225.0, - "y": 155.0 + "x": 565.0, + "y": 180.0 }, - "params": 1 + "params": 4 }, { - "id": "GUINandGate", - "name": "GUINandGate#7", + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#2", "pos": { - "x": 205.0, - "y": 50.0 + "x": 530.0, + "y": 200.0 }, - "params": 1 + "params": 4 }, { - "id": "GUINandGate", - "name": "GUINandGate#6", + "id": "WireCrossPoint", + "name": "WireCrossPoint#21", "pos": { - "x": 205.0, - "y": 70.0 + "x": 585.0, + "y": 640.0 }, "params": 1 }, { - "id": "GUImux3", - "name": "DeserializedSubmodelComponent#23", + "id": "WireCrossPoint", + "name": "WireCrossPoint#16", "pos": { - "x": 300.0, - "y": 715.0 + "x": 255.0, + "y": 255.0 + }, + "params": 4 + }, + { + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#5", + "pos": { + "x": 560.0, + "y": 290.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" } }, { - "id": "GUImux2", - "name": "DeserializedSubmodelComponent#22", + "id": "GUISplitter", + "name": "GUISplitter#14", "pos": { - "x": 120.0, + "x": 90.0, "y": 720.0 - } + }, + "params": 3 }, { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#21", + "id": "GUISplitter", + "name": "GUISplitter#1", "pos": { - "x": 250.0, - "y": 820.0 - } + "x": 555.0, + "y": 80.0 + }, + "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#30", + "id": "GUINandGate", + "name": "GUINandGate#2", "pos": { - "x": 550.0, - "y": 570.0 + "x": 225.0, + "y": 195.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#32", + "id": "GUISplitter", + "name": "GUISplitter#3", "pos": { - "x": 85.0, - "y": 590.0 + "x": 450.0, + "y": 175.0 }, - "params": 1 + "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#31", + "id": "GUINandGate", + "name": "GUINandGate#0", "pos": { - "x": 120.0, - "y": 545.0 + "x": 190.0, + "y": 145.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#25", + "id": "GUISplitter", + "name": "GUISplitter#9", "pos": { - "x": 285.0, - "y": 755.0 + "x": 240.0, + "y": 475.0 }, - "params": 1 + "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#24", + "id": "GUISplitter", + "name": "GUISplitter#13", "pos": { - "x": 285.0, + "x": 265.0, "y": 725.0 }, - "params": 1 + "params": 3 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#27", + "id": "GUIMerger", + "name": "GUIMerger#2", "pos": { - "x": 470.0, - "y": 385.0 + "x": 15.0, + "y": 65.0 }, - "params": 1 + "params": 4 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#26", + "name": "WireCrossPoint#24", "pos": { - "x": 290.0, - "y": 805.0 + "x": 285.0, + "y": 725.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#29", + "id": "GUIAm2904MSR", + "name": "DeserializedSubmodelComponent#0", + "pos": { + "x": 225.0, + "y": 95.0 + } + }, + { + "id": "GUISplitter", + "name": "GUISplitter#8", "pos": { - "x": 45.0, - "y": 580.0 + "x": 420.0, + "y": 365.0 }, - "params": 1 + "params": 4 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#28", + "name": "WireCrossPoint#8", "pos": { - "x": 470.0, - "y": 350.0 + "x": 215.0, + "y": 160.0 }, "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#14", + "id": "GUImux3", + "name": "DeserializedSubmodelComponent#23", "pos": { - "x": 90.0, - "y": 720.0 - }, - "params": 3 + "x": 300.0, + "y": 715.0 + } }, { - "id": "GUISplitter", - "name": "GUISplitter#15", + "id": "GUIMerger", + "name": "GUIMerger#4", "pos": { - "x": 120.0, - "y": 455.0 + "x": 25.0, + "y": 355.0 }, "params": 2 }, { - "id": "GUISplitter", - "name": "GUISplitter#12", + "id": "WireCrossPoint", + "name": "WireCrossPoint#3", "pos": { - "x": 405.0, - "y": 655.0 + "x": 335.0, + "y": 270.0 }, - "params": 3 + "params": 4 }, { - "id": "GUISplitter", - "name": "GUISplitter#13", + "id": "GUIMerger", + "name": "GUIMerger#0", "pos": { - "x": 265.0, - "y": 725.0 + "x": 25.0, + "y": 245.0 }, - "params": 3 + "params": 6 }, { - "id": "GUISplitter", - "name": "GUISplitter#10", + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#9", "pos": { - "x": 445.0, - "y": 410.0 - }, - "params": 4 + "x": 450.0, + "y": 310.0 + } }, { - "id": "GUISplitter", - "name": "GUISplitter#11", + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#1", "pos": { - "x": 405.0, - "y": 575.0 + "x": 10.0, + "y": 650.0 }, - "params": 3 + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#21", + "name": "WireCrossPoint#5", "pos": { - "x": 585.0, - "y": 640.0 + "x": 530.0, + "y": 100.0 }, - "params": 1 + "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#20", + "id": "GUINandGate", + "name": "GUINandGate#4", "pos": { - "x": 585.0, - "y": 590.0 + "x": 225.0, + "y": 155.0 }, "params": 1 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#23", + "name": "WireCrossPoint#2", "pos": { - "x": 330.0, - "y": 640.0 + "x": 295.0, + "y": 120.0 }, - "params": 1 + "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#22", + "id": "GUISplitter", + "name": "GUISplitter#2", "pos": { - "x": 250.0, - "y": 540.0 + "x": 395.0, + "y": 195.0 }, - "params": 1 + "params": 2 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#1", + "id": "GUISplitter", + "name": "GUISplitter#5", "pos": { - "x": 180.0, - "y": 135.0 + "x": 395.0, + "y": 265.0 }, "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#0", + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#3", "pos": { - "x": 165.0, - "y": 150.0 - }, - "params": 1 + "x": 470.0, + "y": 160.0 + } }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#3", + "id": "GUImux2", + "name": "DeserializedSubmodelComponent#16", "pos": { - "x": 335.0, - "y": 270.0 - }, - "params": 4 + "x": 435.0, + "y": 655.0 + } }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#2", + "name": "WireCrossPoint#28", "pos": { - "x": 295.0, - "y": 120.0 + "x": 440.0, + "y": 345.0 }, - "params": 4 + "params": 1 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#5", + "name": "WireCrossPoint#17", "pos": { - "x": 530.0, - "y": 100.0 + "x": 360.0, + "y": 495.0 }, - "params": 4 + "params": 1 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#4", + "name": "WireCrossPoint#26", "pos": { - "x": 150.0, - "y": 160.0 + "x": 290.0, + "y": 805.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#7", + "id": "GUISplitter", + "name": "GUISplitter#15", "pos": { - "x": 215.0, - "y": 180.0 + "x": 120.0, + "y": 455.0 }, - "params": 1 + "params": 2 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#6", + "name": "WireCrossPoint#0", "pos": { - "x": 120.0, - "y": 15.0 + "x": 165.0, + "y": 150.0 }, "params": 1 }, @@ -805,354 +867,427 @@ mograsim version: 0.1.3 "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#8", + "id": "GUINandGate", + "name": "GUINandGate#8", "pos": { - "x": 215.0, - "y": 160.0 + "x": 205.0, + "y": 30.0 }, "params": 1 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#18", + "id": "GUISplitter", + "name": "GUISplitter#4", "pos": { - "x": 135.0, - "y": 470.0 - } + "x": 395.0, + "y": 225.0 + }, + "params": 4 }, { "id": "GUImux1", - "name": "DeserializedSubmodelComponent#17", + "name": "DeserializedSubmodelComponent#11", "pos": { - "x": 190.0, - "y": 460.0 + "x": 265.0, + "y": 515.0 } }, { - "id": "GUImux2", - "name": "DeserializedSubmodelComponent#16", + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#3", "pos": { - "x": 435.0, - "y": 655.0 - } + "x": 560.0, + "y": 150.0 + }, + "params": 1 }, { - "id": "GUImux2", - "name": "DeserializedSubmodelComponent#15", + "id": "GUINandGate", + "name": "GUINandGate#3", "pos": { - "x": 435.0, - "y": 575.0 - } + "x": 225.0, + "y": 215.0 + }, + "params": 1 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#14", + "id": "WireCrossPoint", + "name": "WireCrossPoint#19", "pos": { - "x": 415.0, - "y": 465.0 - } + "x": 35.0, + "y": 595.0 + }, + "params": 1 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#13", + "id": "WireCrossPoint", + "name": "WireCrossPoint#14", "pos": { - "x": 365.0, - "y": 485.0 - } + "x": 520.0, + "y": 190.0 + }, + "params": 4 }, { "id": "GUINandGate", - "name": "GUINandGate#11", + "name": "GUINandGate#9", "pos": { - "x": 60.0, - "y": 570.0 + "x": 205.0, + "y": 10.0 }, "params": 1 }, { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#12", + "id": "GUIand", + "name": "DeserializedSubmodelComponent#2", "pos": { - "x": 315.0, - "y": 505.0 + "x": 380.0, + "y": 125.0 } }, { "id": "GUImux1", - "name": "DeserializedSubmodelComponent#11", + "name": "DeserializedSubmodelComponent#13", "pos": { - "x": 265.0, - "y": 515.0 + "x": 365.0, + "y": 485.0 } }, { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#10", + "id": "WireCrossPoint", + "name": "WireCrossPoint#25", "pos": { - "x": 500.0, - "y": 360.0 - } + "x": 285.0, + "y": 755.0 + }, + "params": 1 }, { "id": "GUINandGate", - "name": "GUINandGate#10", + "name": "GUINandGate#12", "pos": { - "x": 340.0, - "y": 120.0 + "x": 540.0, + "y": 265.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#1", + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#4", "pos": { - "x": 130.0, - "y": 5.0 + "x": 565.0, + "y": 655.0 }, - "params": 1 + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } }, { - "id": "GUINandGate", - "name": "GUINandGate#0", + "id": "WireCrossPoint", + "name": "WireCrossPoint#20", "pos": { - "x": 190.0, - "y": 145.0 + "x": 585.0, + "y": 590.0 }, "params": 1 }, { "id": "GUINandGate", - "name": "GUINandGate#3", + "name": "GUINandGate#6", "pos": { - "x": 225.0, - "y": 215.0 + "x": 205.0, + "y": 70.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#2", + "id": "WireCrossPoint", + "name": "WireCrossPoint#10", "pos": { - "x": 225.0, - "y": 195.0 + "x": 195.0, + "y": 55.0 }, "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#9", + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#8", "pos": { - "x": 240.0, - "y": 475.0 - }, - "params": 4 + "x": 495.0, + "y": 295.0 + } }, { - "id": "GUISplitter", - "name": "GUISplitter#4", + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#18", "pos": { - "x": 395.0, - "y": 225.0 - }, - "params": 4 + "x": 135.0, + "y": 470.0 + } }, { - "id": "GUISplitter", - "name": "GUISplitter#3", + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#5", "pos": { - "x": 450.0, - "y": 175.0 - }, - "params": 4 + "x": 415.0, + "y": 210.0 + } }, { "id": "GUISplitter", - "name": "GUISplitter#2", + "name": "GUISplitter#12", "pos": { - "x": 395.0, - "y": 195.0 + "x": 405.0, + "y": 655.0 }, - "params": 2 + "params": 3 }, { - "id": "GUISplitter", - "name": "GUISplitter#1", + "id": "WireCrossPoint", + "name": "WireCrossPoint#1", "pos": { - "x": 555.0, - "y": 80.0 + "x": 180.0, + "y": 135.0 }, "params": 4 }, { - "id": "GUISplitter", - "name": "GUISplitter#8", + "id": "GUImux2", + "name": "DeserializedSubmodelComponent#22", "pos": { - "x": 445.0, - "y": 370.0 - }, - "params": 4 + "x": 120.0, + "y": 720.0 + } }, { - "id": "GUISplitter", - "name": "GUISplitter#7", + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#0", "pos": { - "x": 445.0, - "y": 330.0 + "x": 535.0, + "y": 165.0 }, - "params": 4 + "params": { + "logicWidth": 4, + "orientation": "RIGHT" + } }, { - "id": "GUISplitter", - "name": "GUISplitter#6", + "id": "GUIMerger", + "name": "GUIMerger#1", "pos": { - "x": 285.0, - "y": 320.0 + "x": 25.0, + "y": 305.0 }, - "params": 3 + "params": 5 }, { - "id": "GUISplitter", - "name": "GUISplitter#5", + "id": "WireCrossPoint", + "name": "WireCrossPoint#32", "pos": { - "x": 395.0, - "y": 265.0 + "x": 85.0, + "y": 590.0 }, - "params": 4 + "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#0", + "id": "WireCrossPoint", + "name": "WireCrossPoint#23", "pos": { - "x": 10.0, - "y": 245.0 + "x": 330.0, + "y": 640.0 + }, + "params": 1 + } + ], + "wires": [ + { + "pin1": { + "compName": "GUISplitter#3", + "pinName": "O3" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I0_4" + }, + "name": "unnamedWire#100", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#22", + "pinName": "" + }, + "pin2": { + "compName": "GUISplitter#8", + "pinName": "O1" + }, + "name": "unnamedWire#172", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#19", + "pinName": "" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#15", + "pinName": "I01" + }, + "name": "unnamedWire#170", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#32", + "pinName": "" + }, + "pin2": { + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "OEn" + }, + "name": "unnamedWire#202", + "path": [] + }, + { + "pin1": { + "compName": "GUISplitter#4", + "pinName": "O1" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I0_2" }, - "params": 13 + "name": "unnamedWire#103", + "path": [] }, { - "id": "GUIAm2904RegCTInstrDecode", - "name": "GUIAm2904RegCTInstrDecode#0", - "pos": { - "x": 50.0, - "y": 240.0 - } + "pin1": { + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y010" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I010" + }, + "name": "unnamedWire#119", + "path": [] }, - { - "id": "GUIAm2904ShiftInstrDecode", - "name": "GUIAm2904ShiftInstrDecode#0", - "pos": { - "x": 50.0, - "y": 360.0 - } - } - ], - "innerWires": [ { "pin1": { - "compName": "GUISplitter#13", - "pinName": "O1" + "compName": "_submodelinterface", + "pinName": "YOVR" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "S1" + "compName": "GUISplitter#1", + "pinName": "O3" }, - "name": "unnamedWire#190", + "name": "unnamedWire#52", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I010" + "compName": "GUIMerger#0", + "pinName": "I3" }, "pin2": { - "compName": "WireCrossPoint#20", - "pinName": "" + "compName": "GUISplitter#0", + "pinName": "O3" }, - "name": "unnamedWire#191", + "name": "unnamedWire#7", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#21", + "compName": "GUINandGate#2", "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I111" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "_EN" }, - "name": "unnamedWire#194", + "name": "unnamedWire#44", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#27", - "pinName": "" + "compName": "GUINandGate#10", + "pinName": "B" }, "pin2": { - "compName": "WireCrossPoint#26", + "compName": "WireCrossPoint#13", "pinName": "" }, - "name": "unnamedWire#195", + "name": "unnamedWire#81", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#21", - "pinName": "" + "compName": "GUIMerger#4", + "pinName": "I1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I011" + "compName": "GUISplitter#0", + "pinName": "O12" }, - "name": "unnamedWire#192", + "name": "unnamedWire#140", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I100" + "compName": "GUITriStateBuffer#5", + "pinName": "OUT" }, "pin2": { - "compName": "WireCrossPoint#23", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "CT" }, - "name": "unnamedWire#193", + "name": "unnamedWire#236", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "I10" + "compName": "_submodelinterface", + "pinName": "IN" }, "pin2": { - "compName": "WireCrossPoint#21", - "pinName": "" + "compName": "GUIMerger#2", + "pinName": "I2" }, - "name": "unnamedWire#198", - "path": [] + "name": "unnamedWire#18", + "path": [ + { + "x": 5.0, + "y": 100.0 + }, + { + "x": 5.0, + "y": 85.0 + } + ] }, { "pin1": { - "compName": "WireCrossPoint#26", + "compName": "WireCrossPoint#2", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I101" + "compName": "WireCrossPoint#16", + "pinName": "" }, - "name": "unnamedWire#199", + "name": "unnamedWire#26", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I110" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_WEC" }, "pin2": { - "compName": "GUISplitter#7", - "pinName": "O1" + "compName": "GUINandGate#5", + "pinName": "B" }, - "name": "unnamedWire#196", + "name": "unnamedWire#48", "path": [] }, { @@ -1169,158 +1304,158 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "WireCrossPoint#18", - "pinName": "" + "compName": "GUIMerger#3", + "pinName": "O" }, "pin2": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "I10" + "compName": "WireCrossPoint#14", + "pinName": "" }, - "name": "unnamedWire#180", + "name": "unnamedWire#93", "path": [] }, { "pin1": { - "compName": "GUISplitter#13", + "compName": "GUISplitter#4", "pinName": "O0" }, "pin2": { - "compName": "WireCrossPoint#24", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I0_1" }, - "name": "unnamedWire#183", + "name": "unnamedWire#102", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#24", - "pinName": "" + "compName": "GUINandGate#12", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "S0" + "compName": "GUITriStateBuffer#5", + "pinName": "EN" }, - "name": "unnamedWire#184", + "name": "unnamedWire#122", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#23", + "compName": "WireCrossPoint#6", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "I11" + "compName": "GUINandGate#1", + "pinName": "A" }, - "name": "unnamedWire#181", + "name": "unnamedWire#55", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "I11" + "compName": "GUISplitter#5", + "pinName": "O1" }, "pin2": { - "compName": "WireCrossPoint#23", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_2" }, - "name": "unnamedWire#182", + "name": "unnamedWire#108", "path": [] }, { "pin1": { "compName": "DeserializedSubmodelComponent#23", - "pinName": "I001" + "pinName": "I110" }, "pin2": { - "compName": "WireCrossPoint#25", - "pinName": "" + "compName": "GUISplitter#7", + "pinName": "O1" }, - "name": "unnamedWire#187", + "name": "unnamedWire#196", "path": [] }, { "pin1": { - "compName": "GUISplitter#13", - "pinName": "I" + "compName": "WireCrossPoint#24", + "pinName": "" }, "pin2": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "SIOn_MUX" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "S0" }, - "name": "unnamedWire#188", + "name": "unnamedWire#184", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#25", - "pinName": "" + "compName": "GUISplitter#4", + "pinName": "O3" }, "pin2": { - "compName": "WireCrossPoint#24", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I0_4" }, - "name": "unnamedWire#185", + "name": "unnamedWire#105", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#25", - "pinName": "" + "compName": "GUITriStateBuffer#2", + "pinName": "EN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I000" + "compName": "WireCrossPoint#32", + "pinName": "" }, - "name": "unnamedWire#186", + "name": "unnamedWire#218", "path": [] }, { "pin1": { - "compName": "GUISplitter#13", - "pinName": "O2" + "compName": "DeserializedSubmodelComponent#9", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "S2" + "compName": "DeserializedSubmodelComponent#8", + "pinName": "B" }, - "name": "unnamedWire#189", + "name": "unnamedWire#123", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#22", + "compName": "WireCrossPoint#12", "pinName": "" }, "pin2": { - "compName": "GUISplitter#8", - "pinName": "O1" + "compName": "GUINandGate#8", + "pinName": "A" }, - "name": "unnamedWire#172", + "name": "unnamedWire#62", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#22", - "pinName": "" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "S1" }, "pin2": { - "compName": "WireCrossPoint#23", - "pinName": "" + "compName": "GUISplitter#12", + "pinName": "O2" }, - "name": "unnamedWire#173", + "name": "unnamedWire#175", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#19", - "pinName": "" + "compName": "GUINandGate#3", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "I01" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "_EOVR" }, - "name": "unnamedWire#170", + "name": "unnamedWire#43", "path": [] }, { @@ -1332,307 +1467,304 @@ mograsim version: 0.1.3 "compName": "DeserializedSubmodelComponent#15", "pinName": "I10" }, - "name": "unnamedWire#171", - "path": [] - }, - { - "pin1": { - "compName": "GUISplitter#12", - "pinName": "O0" - }, - "pin2": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "I00" - }, - "name": "unnamedWire#176", + "name": "unnamedWire#171", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "Y" + "compName": "GUIBitDisplay#0", + "pinName": "" }, "pin2": { - "compName": "GUITriStateBuffer#4", - "pinName": "IN" + "compName": "WireCrossPoint#5", + "pinName": "" }, - "name": "unnamedWire#177", + "name": "unnamedWire#229", "path": [] }, { "pin1": { - "compName": "GUISplitter#12", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#21", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I111" }, - "name": "unnamedWire#174", + "name": "unnamedWire#194", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "S1" + "compName": "GUISplitter#6", + "pinName": "O2" }, "pin2": { - "compName": "GUISplitter#12", - "pinName": "O2" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "S2" }, - "name": "unnamedWire#175", + "name": "unnamedWire#127", "path": [] }, { "pin1": { - "compName": "GUISplitter#12", - "pinName": "I" + "compName": "WireCrossPoint#32", + "pinName": "" }, "pin2": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "QIO0_MUX" + "compName": "GUITriStateBuffer#1", + "pinName": "EN" }, - "name": "unnamedWire#178", + "name": "unnamedWire#219", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#19", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "I01" + "compName": "GUISplitter#0", + "pinName": "I" }, - "name": "unnamedWire#179", + "name": "unnamedWire#3", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#1", - "pinName": "OUT" + "compName": "GUISplitter#2", + "pinName": "O0" }, "pin2": { - "compName": "WireCrossPoint#18", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "S0" }, - "name": "unnamedWire#161", + "name": "unnamedWire#95", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#2", - "pinName": "OUT" + "compName": "GUISplitter#13", + "pinName": "O0" }, "pin2": { - "compName": "WireCrossPoint#19", + "compName": "WireCrossPoint#24", "pinName": "" }, - "name": "unnamedWire#162", + "name": "unnamedWire#183", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "QIO0" + "compName": "WireCrossPoint#27", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#21", - "pinName": "" + "compName": "DeserializedSubmodelComponent#10", + "pinName": "B" }, - "name": "unnamedWire#160", + "name": "unnamedWire#200", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#3", - "pinName": "IN" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I0_3" }, "pin2": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "Y" + "compName": "GUISplitter#4", + "pinName": "O2" }, - "name": "unnamedWire#165", + "name": "unnamedWire#104", "path": [] }, { "pin1": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "SIO0_MUX" + "compName": "GUINandGate#8", + "pinName": "B" }, "pin2": { - "compName": "GUISplitter#11", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y2" }, - "name": "unnamedWire#166", + "name": "unnamedWire#72", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#3", - "pinName": "OUT" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "I" }, "pin2": { - "compName": "WireCrossPoint#20", - "pinName": "" + "compName": "GUIMerger#1", + "pinName": "O" }, - "name": "unnamedWire#163", - "path": [] + "name": "unnamedWire#16", + "path": [ + { + "x": 40.0, + "y": 395.0 + }, + { + "x": 40.0, + "y": 325.0 + } + ] }, { "pin1": { - "compName": "GUITriStateBuffer#4", - "pinName": "OUT" + "compName": "_submodelinterface", + "pinName": "QIO0" }, "pin2": { "compName": "WireCrossPoint#21", "pinName": "" }, - "name": "unnamedWire#164", + "name": "unnamedWire#160", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y3" }, "pin2": { - "compName": "GUISplitter#11", - "pinName": "O1" + "compName": "GUIMerger#3", + "pinName": "I2" }, - "name": "unnamedWire#169", + "name": "unnamedWire#91", "path": [] }, { "pin1": { - "compName": "GUISplitter#11", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "I10" }, "pin2": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "I00" + "compName": "WireCrossPoint#21", + "pinName": "" }, - "name": "unnamedWire#167", + "name": "unnamedWire#198", "path": [] }, { "pin1": { - "compName": "GUISplitter#11", - "pinName": "O2" + "compName": "WireCrossPoint#10", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "S1" + "compName": "GUINandGate#6", + "pinName": "A" }, - "name": "unnamedWire#168", + "name": "unnamedWire#60", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#0", - "pinName": "OUT" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y000" }, "pin2": { - "compName": "WireCrossPoint#5", - "pinName": "" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I000" }, - "name": "unnamedWire#79", + "name": "unnamedWire#121", "path": [] }, { "pin1": { - "compName": "GUINandGate#10", + "compName": "DeserializedSubmodelComponent#21", "pinName": "B" }, "pin2": { - "compName": "WireCrossPoint#13", - "pinName": "" + "compName": "GUISplitter#7", + "pinName": "O3" }, - "name": "unnamedWire#81", + "name": "unnamedWire#206", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#13", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y111" }, "pin2": { - "compName": "GUINandGate#10", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I111" }, - "name": "unnamedWire#80", + "name": "unnamedWire#114", "path": [] }, { "pin1": { - "compName": "GUINandGate#10", - "pinName": "Y" + "compName": "GUISplitter#10", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "A" + "compName": "WireCrossPoint#3", + "pinName": "" }, - "name": "unnamedWire#83", + "name": "unnamedWire#144", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#13", + "compName": "WireCrossPoint#25", "pinName": "" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "_OEY" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I000" }, - "name": "unnamedWire#82", + "name": "unnamedWire#186", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y1" + "compName": "WireCrossPoint#26", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I1_1" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I101" }, - "name": "unnamedWire#85", + "name": "unnamedWire#199", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "Y" + "compName": "WireCrossPoint#4", + "pinName": "" }, "pin2": { - "compName": "GUITriStateBuffer#0", - "pinName": "EN" + "compName": "_submodelinterface", + "pinName": "_CEmu" }, - "name": "unnamedWire#84", + "name": "unnamedWire#35", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y3" + "compName": "WireCrossPoint#19", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I1_3" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "I01" }, - "name": "unnamedWire#87", + "name": "unnamedWire#179", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I1_2" + "compName": "GUITriStateBuffer#0", + "pinName": "OUT" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y2" + "compName": "GUIBitDisplay#1", + "pinName": "" }, - "name": "unnamedWire#86", + "name": "unnamedWire#230", "path": [] }, { @@ -1649,2198 +1781,2193 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I1_4" + "compName": "GUINandGate#12", + "pinName": "B" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y4" + "compName": "WireCrossPoint#33", + "pinName": "" + }, + "name": "unnamedWire#234", + "path": [] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#1", + "pinName": "Q" + }, + "pin2": { + "compName": "WireCrossPoint#3", + "pinName": "" }, - "name": "unnamedWire#88", + "name": "unnamedWire#27", "path": [] }, { "pin1": { - "compName": "GUIMerger#3", - "pinName": "I1" + "compName": "GUISplitter#12", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y2" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "QIO0_MUX" }, - "name": "unnamedWire#90", + "name": "unnamedWire#178", "path": [] }, { "pin1": { - "compName": "GUIMerger#3", - "pinName": "I3" + "compName": "GUISplitter#14", + "pinName": "O2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y4" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "S1" }, - "name": "unnamedWire#92", + "name": "unnamedWire#208", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y3" + "compName": "GUIMerger#4", + "pinName": "O" }, "pin2": { - "compName": "GUIMerger#3", - "pinName": "I2" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "I12-11" }, - "name": "unnamedWire#91", + "name": "unnamedWire#141", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "Y_MUX" + "compName": "WireCrossPoint#18", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#2", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "I10" }, - "name": "unnamedWire#94", + "name": "unnamedWire#180", "path": [] }, { "pin1": { - "compName": "GUIMerger#3", - "pinName": "O" + "compName": "GUITriStateBuffer#2", + "pinName": "IN" }, "pin2": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "Y" }, - "name": "unnamedWire#93", + "name": "unnamedWire#212", "path": [] }, { "pin1": { - "compName": "GUISplitter#2", - "pinName": "O1" + "compName": "GUIMerger#3", + "pinName": "I1" }, "pin2": { "compName": "DeserializedSubmodelComponent#3", - "pinName": "S0" + "pinName": "Y2" }, - "name": "unnamedWire#96", + "name": "unnamedWire#90", "path": [] }, { "pin1": { - "compName": "GUISplitter#2", - "pinName": "O0" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_WEOVR" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "S0" + "compName": "GUINandGate#3", + "pinName": "B" }, - "name": "unnamedWire#95", + "name": "unnamedWire#59", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I0_2" + "compName": "GUINandGate#1", + "pinName": "Y" }, "pin2": { - "compName": "GUISplitter#3", - "pinName": "O1" + "compName": "WireCrossPoint#11", + "pinName": "" }, - "name": "unnamedWire#98", + "name": "unnamedWire#70", "path": [] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I100" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I0_1" + "compName": "WireCrossPoint#23", + "pinName": "" }, - "name": "unnamedWire#97", + "name": "unnamedWire#193", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I0_3" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I100" }, "pin2": { - "compName": "GUISplitter#3", - "pinName": "O2" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y100" }, - "name": "unnamedWire#99", + "name": "unnamedWire#117", "path": [] }, { "pin1": { - "compName": "GUINandGate#2", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "A1" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_WEN" + "compName": "_submodelinterface", + "pinName": "_EZ" }, - "name": "unnamedWire#58", + "name": "unnamedWire#75", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_CEM" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "C0_MUX" }, "pin2": { - "compName": "WireCrossPoint#6", - "pinName": "" + "compName": "GUISplitter#9", + "pinName": "I" }, - "name": "unnamedWire#57", + "name": "unnamedWire#142", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_WEOVR" + "compName": "_submodelinterface", + "pinName": "IZ" }, "pin2": { - "compName": "GUINandGate#3", - "pinName": "B" + "compName": "GUIMerger#2", + "pinName": "I0" }, - "name": "unnamedWire#59", - "path": [] + "name": "unnamedWire#20", + "path": [ + { + "x": 5.0, + "y": 50.0 + }, + { + "x": 5.0, + "y": 65.0 + } + ] }, { "pin1": { - "compName": "GUINandGate#7", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I001" }, "pin2": { - "compName": "WireCrossPoint#10", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y001" }, - "name": "unnamedWire#61", + "name": "unnamedWire#120", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#10", - "pinName": "" + "compName": "GUITriStateBuffer#0", + "pinName": "OUT" }, "pin2": { - "compName": "GUINandGate#6", - "pinName": "A" + "compName": "WireCrossPoint#5", + "pinName": "" }, - "name": "unnamedWire#60", + "name": "unnamedWire#79", "path": [] }, { "pin1": { - "compName": "GUINandGate#9", - "pinName": "A" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "MSR_MUX" }, "pin2": { - "compName": "WireCrossPoint#11", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "MUX" }, - "name": "unnamedWire#63", + "name": "unnamedWire#31", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#12", - "pinName": "" + "compName": "GUISplitter#14", + "pinName": "O1" }, "pin2": { - "compName": "GUINandGate#8", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "S0" }, - "name": "unnamedWire#62", + "name": "unnamedWire#209", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#12", - "pinName": "" + "compName": "GUINandGate#0", + "pinName": "Y" }, "pin2": { - "compName": "WireCrossPoint#10", + "compName": "WireCrossPoint#8", "pinName": "" }, - "name": "unnamedWire#65", + "name": "unnamedWire#36", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#11", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "Q" }, "pin2": { - "compName": "WireCrossPoint#12", + "compName": "WireCrossPoint#2", "pinName": "" }, - "name": "unnamedWire#64", + "name": "unnamedWire#25", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "_EN" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "_EC" }, "pin2": { - "compName": "GUINandGate#7", + "compName": "GUINandGate#5", "pinName": "Y" }, - "name": "unnamedWire#67", + "name": "unnamedWire#45", "path": [] }, { "pin1": { - "compName": "GUINandGate#6", - "pinName": "Y" + "compName": "DeserializedSubmodelComponent#13", + "pinName": "I0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "_EOVR" + "compName": "_submodelinterface", + "pinName": "Cx" }, - "name": "unnamedWire#66", + "name": "unnamedWire#152", "path": [] }, { "pin1": { - "compName": "GUINandGate#9", - "pinName": "Y" + "compName": "GUISplitter#0", + "pinName": "O8" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "_EZ" + "compName": "GUIMerger#1", + "pinName": "I2" }, - "name": "unnamedWire#69", + "name": "unnamedWire#12", "path": [] }, { "pin1": { - "compName": "GUINandGate#8", - "pinName": "Y" + "compName": "WireCrossPoint#33", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "_EC" + "compName": "_submodelinterface", + "pinName": "_OECT" }, - "name": "unnamedWire#68", + "name": "unnamedWire#235", "path": [] }, { "pin1": { - "compName": "GUINandGate#1", - "pinName": "Y" + "compName": "GUISplitter#0", + "pinName": "O4" }, "pin2": { - "compName": "WireCrossPoint#11", - "pinName": "" + "compName": "GUIMerger#0", + "pinName": "I4" }, - "name": "unnamedWire#70", + "name": "unnamedWire#8", "path": [] }, { "pin1": { - "compName": "GUINandGate#8", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#13", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y2" + "compName": "DeserializedSubmodelComponent#14", + "pinName": "I1" }, - "name": "unnamedWire#72", + "name": "unnamedWire#153", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y1" + "compName": "GUISplitter#8", + "pinName": "O2" }, "pin2": { - "compName": "GUINandGate#9", - "pinName": "B" + "compName": "WireCrossPoint#27", + "pinName": "" }, - "name": "unnamedWire#71", + "name": "unnamedWire#135", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y4" + "compName": "GUINandGate#6", + "pinName": "Y" }, "pin2": { - "compName": "GUINandGate#6", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "_EOVR" }, - "name": "unnamedWire#74", + "name": "unnamedWire#66", "path": [] }, { "pin1": { "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y3" + "pinName": "Y4" }, "pin2": { - "compName": "GUINandGate#7", + "compName": "GUINandGate#6", "pinName": "B" }, - "name": "unnamedWire#73", + "name": "unnamedWire#74", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EC" + "compName": "GUIMerger#0", + "pinName": "O" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "A2" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "I5-0" }, - "name": "unnamedWire#76", + "name": "unnamedWire#15", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "A1" + "compName": "WireCrossPoint#0", + "pinName": "" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "_EZ" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "C" }, - "name": "unnamedWire#75", + "name": "unnamedWire#29", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EOVR" + "compName": "GUITriStateBuffer#0", + "pinName": "EN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "A4" + "compName": "GUIBitDisplay#3", + "pinName": "" }, - "name": "unnamedWire#78", + "name": "unnamedWire#232", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "A3" + "compName": "WireCrossPoint#0", + "pinName": "" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "_EN" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "C" }, - "name": "unnamedWire#77", + "name": "unnamedWire#30", "path": [] }, { "pin1": { - "compName": "GUINandGate#0", - "pinName": "Y" + "compName": "GUITriStateBuffer#3", + "pinName": "EN" }, "pin2": { - "compName": "WireCrossPoint#8", + "compName": "WireCrossPoint#30", "pinName": "" }, - "name": "unnamedWire#36", + "name": "unnamedWire#214", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#4", - "pinName": "" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "Y" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "_CEmu" + "compName": "DeserializedSubmodelComponent#9", + "pinName": "I0" }, - "name": "unnamedWire#35", + "name": "unnamedWire#129", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#8", - "pinName": "" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I001" }, "pin2": { - "compName": "WireCrossPoint#7", + "compName": "WireCrossPoint#25", "pinName": "" }, - "name": "unnamedWire#38", + "name": "unnamedWire#187", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#8", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "Y" }, "pin2": { - "compName": "GUINandGate#4", - "pinName": "A" + "compName": "GUITriStateBuffer#0", + "pinName": "EN" }, - "name": "unnamedWire#37", + "name": "unnamedWire#84", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#7", - "pinName": "" + "compName": "DeserializedSubmodelComponent#17", + "pinName": "I1" }, "pin2": { - "compName": "GUINandGate#5", - "pinName": "A" + "compName": "WireCrossPoint#19", + "pinName": "" }, - "name": "unnamedWire#39", + "name": "unnamedWire#223", "path": [] }, { "pin1": { - "compName": "GUISplitter#5", - "pinName": "O3" + "compName": "GUINandGate#1", + "pinName": "B" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_4" + "compName": "WireCrossPoint#6", + "pinName": "" }, - "name": "unnamedWire#110", + "name": "unnamedWire#56", "path": [] }, { "pin1": { - "compName": "GUISplitter#5", - "pinName": "I" + "compName": "GUISplitter#9", + "pinName": "O1" }, "pin2": { - "compName": "WireCrossPoint#1", - "pinName": "" + "compName": "DeserializedSubmodelComponent#11", + "pinName": "S0" }, - "name": "unnamedWire#111", + "name": "unnamedWire#146", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y111" + "compName": "_submodelinterface", + "pinName": "_SE" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I111" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "_SE" }, - "name": "unnamedWire#114", + "name": "unnamedWire#213", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I110" + "compName": "_submodelinterface", + "pinName": "YC" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y110" + "compName": "GUISplitter#1", + "pinName": "O1" }, - "name": "unnamedWire#115", + "name": "unnamedWire#50", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "GUIMerger#0", + "pinName": "I1" }, "pin2": { - "compName": "GUITriStateBuffer#0", - "pinName": "IN" + "compName": "GUISplitter#0", + "pinName": "O1" }, - "name": "unnamedWire#112", + "name": "unnamedWire#5", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y101" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I101" }, - "name": "unnamedWire#113", + "name": "unnamedWire#116", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y011" + "compName": "GUISplitter#6", + "pinName": "O0" }, "pin2": { "compName": "DeserializedSubmodelComponent#7", - "pinName": "I011" + "pinName": "S0" }, - "name": "unnamedWire#118", + "name": "unnamedWire#125", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y010" + "compName": "DeserializedSubmodelComponent#18", + "pinName": "I0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I010" + "compName": "WireCrossPoint#20", + "pinName": "" }, - "name": "unnamedWire#119", + "name": "unnamedWire#224", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#9", - "pinName": "" + "compName": "GUIMerger#2", + "pinName": "O" }, "pin2": { - "compName": "GUINandGate#2", - "pinName": "A" + "compName": "WireCrossPoint#1", + "pinName": "" }, - "name": "unnamedWire#41", + "name": "unnamedWire#22", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y101" + "compName": "GUISplitter#0", + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I101" + "compName": "GUIMerger#0", + "pinName": "I0" }, - "name": "unnamedWire#116", + "name": "unnamedWire#4", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#7", - "pinName": "" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "Y" }, "pin2": { - "compName": "WireCrossPoint#9", - "pinName": "" + "compName": "GUITriStateBuffer#4", + "pinName": "IN" }, - "name": "unnamedWire#40", + "name": "unnamedWire#177", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I100" + "compName": "GUINandGate#9", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y100" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "_EZ" }, - "name": "unnamedWire#117", + "name": "unnamedWire#69", "path": [] }, { "pin1": { - "compName": "GUINandGate#3", - "pinName": "Y" + "compName": "GUITriStateBuffer#0", + "pinName": "IN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "_EOVR" + "compName": "GUIBitDisplay#2", + "pinName": "" }, - "name": "unnamedWire#43", + "name": "unnamedWire#231", "path": [] }, { "pin1": { - "compName": "GUINandGate#3", - "pinName": "A" + "compName": "WireCrossPoint#7", + "pinName": "" }, "pin2": { "compName": "WireCrossPoint#9", "pinName": "" }, - "name": "unnamedWire#42", + "name": "unnamedWire#40", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "_EC" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "Y" }, "pin2": { - "compName": "GUINandGate#5", - "pinName": "Y" + "compName": "GUITriStateBuffer#1", + "pinName": "IN" }, - "name": "unnamedWire#45", + "name": "unnamedWire#207", "path": [] }, { "pin1": { - "compName": "GUINandGate#2", - "pinName": "Y" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "CT_EXP" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "_EN" + "compName": "DeserializedSubmodelComponent#9", + "pinName": "S0" }, - "name": "unnamedWire#44", + "name": "unnamedWire#128", "path": [] }, { "pin1": { - "compName": "GUINandGate#4", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#15", + "pinName": "S0" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_WEZ" + "compName": "GUISplitter#11", + "pinName": "O1" }, - "name": "unnamedWire#47", + "name": "unnamedWire#169", "path": [] }, { "pin1": { - "compName": "GUINandGate#4", - "pinName": "Y" + "compName": "WireCrossPoint#5", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "_EZ" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "Y" }, - "name": "unnamedWire#46", + "name": "unnamedWire#54", "path": [] }, { "pin1": { - "compName": "GUISplitter#1", + "compName": "GUISplitter#12", "pinName": "O0" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "YZ" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "I00" }, - "name": "unnamedWire#49", + "name": "unnamedWire#176", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_WEC" + "compName": "WireCrossPoint#20", + "pinName": "" }, "pin2": { - "compName": "GUINandGate#5", - "pinName": "B" + "compName": "_submodelinterface", + "pinName": "SIO0" }, - "name": "unnamedWire#48", + "name": "unnamedWire#159", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#32", + "compName": "WireCrossPoint#30", "pinName": "" }, "pin2": { - "compName": "GUINandGate#11", - "pinName": "Y" + "compName": "GUITriStateBuffer#4", + "pinName": "EN" }, - "name": "unnamedWire#220", + "name": "unnamedWire#215", "path": [] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O3" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I0_2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I0_4" + "compName": "GUISplitter#3", + "pinName": "O1" }, - "name": "unnamedWire#100", + "name": "unnamedWire#98", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#18", - "pinName": "Y" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "S1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#17", - "pinName": "I0" + "compName": "GUISplitter#6", + "pinName": "O1" }, - "name": "unnamedWire#221", + "name": "unnamedWire#126", "path": [] }, { "pin1": { - "compName": "GUISplitter#4", - "pinName": "O1" + "compName": "WireCrossPoint#27", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_2" + "compName": "WireCrossPoint#26", + "pinName": "" }, - "name": "unnamedWire#103", + "name": "unnamedWire#195", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#18", - "pinName": "I0" + "compName": "WireCrossPoint#8", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#20", + "compName": "WireCrossPoint#7", "pinName": "" }, - "name": "unnamedWire#224", + "name": "unnamedWire#38", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_3" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I110" }, "pin2": { - "compName": "GUISplitter#4", - "pinName": "O2" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y110" }, - "name": "unnamedWire#104", + "name": "unnamedWire#115", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#21", - "pinName": "" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "MC_MUX" }, "pin2": { - "compName": "DeserializedSubmodelComponent#18", - "pinName": "I1" + "compName": "GUISplitter#15", + "pinName": "I" }, - "name": "unnamedWire#225", + "name": "unnamedWire#226", "path": [] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "I" + "compName": "WireCrossPoint#19", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#3", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "SIOn" }, - "name": "unnamedWire#101", + "name": "unnamedWire#158", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#17", - "pinName": "Y" + "compName": "GUISplitter#0", + "pinName": "O10" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "COVD_V" + "compName": "GUIMerger#1", + "pinName": "I4" }, - "name": "unnamedWire#222", + "name": "unnamedWire#14", "path": [] }, { "pin1": { - "compName": "GUISplitter#4", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#14", + "pinName": "S0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_1" + "compName": "GUISplitter#9", + "pinName": "O3" }, - "name": "unnamedWire#102", + "name": "unnamedWire#155", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#17", - "pinName": "I1" + "compName": "WireCrossPoint#7", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#19", - "pinName": "" + "compName": "GUINandGate#5", + "pinName": "A" }, - "name": "unnamedWire#223", + "name": "unnamedWire#39", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "YC" + "compName": "GUITriStateBuffer#5", + "pinName": "IN" }, "pin2": { - "compName": "GUISplitter#1", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#8", + "pinName": "Y" }, - "name": "unnamedWire#50", + "name": "unnamedWire#237", "path": [] }, { "pin1": { - "compName": "GUISplitter#5", - "pinName": "O0" + "compName": "WireCrossPoint#9", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_1" + "compName": "GUINandGate#2", + "pinName": "A" }, - "name": "unnamedWire#107", + "name": "unnamedWire#41", "path": [] }, { "pin1": { "compName": "GUISplitter#15", - "pinName": "O1" + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#17", + "compName": "DeserializedSubmodelComponent#18", "pinName": "S0" }, - "name": "unnamedWire#228", + "name": "unnamedWire#227", "path": [] }, { "pin1": { - "compName": "GUISplitter#5", - "pinName": "O1" + "compName": "GUISplitter#14", + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_2" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "I00" }, - "name": "unnamedWire#108", + "name": "unnamedWire#211", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "YOVR" + "compName": "GUITriStateBuffer#1", + "pinName": "OUT" }, "pin2": { - "compName": "GUISplitter#1", - "pinName": "O3" + "compName": "WireCrossPoint#18", + "pinName": "" }, - "name": "unnamedWire#52", + "name": "unnamedWire#161", "path": [] }, { "pin1": { - "compName": "GUISplitter#4", - "pinName": "O3" + "compName": "GUISplitter#13", + "pinName": "O1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_4" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "S1" }, - "name": "unnamedWire#105", + "name": "unnamedWire#190", "path": [] }, { "pin1": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "MC_MUX" + "compName": "GUISplitter#12", + "pinName": "O1" }, "pin2": { - "compName": "GUISplitter#15", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "S0" }, - "name": "unnamedWire#226", + "name": "unnamedWire#174", "path": [] }, { "pin1": { - "compName": "GUISplitter#1", + "compName": "GUISplitter#0", "pinName": "O2" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "YN" + "compName": "GUIMerger#0", + "pinName": "I2" }, - "name": "unnamedWire#51", + "name": "unnamedWire#6", "path": [] }, { "pin1": { - "compName": "GUISplitter#4", + "compName": "GUISplitter#1", "pinName": "I" }, "pin2": { - "compName": "WireCrossPoint#2", + "compName": "WireCrossPoint#5", "pinName": "" }, - "name": "unnamedWire#106", + "name": "unnamedWire#53", "path": [] }, { "pin1": { - "compName": "GUISplitter#15", - "pinName": "O0" + "compName": "GUINandGate#2", + "pinName": "B" }, "pin2": { - "compName": "DeserializedSubmodelComponent#18", - "pinName": "S0" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_WEN" }, - "name": "unnamedWire#227", + "name": "unnamedWire#58", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#5", + "compName": "WireCrossPoint#15", + "pinName": "" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#1", + "pinName": "I" + }, + "name": "unnamedWire#132", + "path": [] + }, + { + "pin1": { + "compName": "_submodelinterface", + "pinName": "QIOn" + }, + "pin2": { + "compName": "WireCrossPoint#18", "pinName": "" }, + "name": "unnamedWire#157", + "path": [] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#0", + "pinName": "_EN" + }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", + "compName": "GUINandGate#7", "pinName": "Y" }, - "name": "unnamedWire#54", + "name": "unnamedWire#67", "path": [] }, { "pin1": { - "compName": "GUISplitter#1", - "pinName": "I" + "compName": "GUINandGate#4", + "pinName": "B" }, "pin2": { - "compName": "WireCrossPoint#5", - "pinName": "" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_WEZ" }, - "name": "unnamedWire#53", + "name": "unnamedWire#47", "path": [] }, { "pin1": { - "compName": "GUINandGate#1", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y3" }, "pin2": { - "compName": "WireCrossPoint#6", - "pinName": "" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I1_3" }, - "name": "unnamedWire#56", + "name": "unnamedWire#87", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_3" + "compName": "DeserializedSubmodelComponent#10", + "pinName": "Y" }, "pin2": { - "compName": "GUISplitter#5", - "pinName": "O2" + "compName": "DeserializedSubmodelComponent#9", + "pinName": "I1" }, - "name": "unnamedWire#109", + "name": "unnamedWire#131", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#6", + "compName": "WireCrossPoint#17", "pinName": "" }, "pin2": { - "compName": "GUINandGate#1", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#13", + "pinName": "S0" }, - "name": "unnamedWire#55", + "name": "unnamedWire#150", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O10" + "compName": "GUISplitter#13", + "pinName": "O2" }, "pin2": { - "compName": "GUIMerger#1", - "pinName": "I4" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "S2" }, - "name": "unnamedWire#14", + "name": "unnamedWire#189", "path": [] }, { "pin1": { - "compName": "GUIMerger#1", - "pinName": "I3" + "compName": "WireCrossPoint#23", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O9" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "I11" }, - "name": "unnamedWire#13", + "name": "unnamedWire#181", "path": [] }, { "pin1": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#14", + "pinName": "Y" }, "pin2": { - "compName": "GUIMerger#1", - "pinName": "O" + "compName": "_submodelinterface", + "pinName": "C0" }, - "name": "unnamedWire#16", - "path": [ - { - "x": 40.0, - "y": 395.0 - }, - { - "x": 40.0, - "y": 325.0 - } - ] + "name": "unnamedWire#156", + "path": [] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "O" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_MUX" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "I5-0" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "MUX" }, - "name": "unnamedWire#15", + "name": "unnamedWire#1", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "IN" + "compName": "GUISplitter#0", + "pinName": "O6" }, "pin2": { - "compName": "GUIMerger#2", - "pinName": "I2" + "compName": "GUIMerger#1", + "pinName": "I0" }, - "name": "unnamedWire#18", - "path": [ - { - "x": 5.0, - "y": 100.0 - }, - { - "x": 5.0, - "y": 85.0 - } - ] + "name": "unnamedWire#10", + "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "IOVR" + "compName": "DeserializedSubmodelComponent#17", + "pinName": "Y" }, "pin2": { - "compName": "GUIMerger#2", - "pinName": "I3" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "COVD_V" }, - "name": "unnamedWire#17", - "path": [ - { - "x": 10.0, - "y": 125.0 - }, - { - "x": 10.0, - "y": 95.0 - } - ] + "name": "unnamedWire#222", + "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "IC" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "Y_MUX" }, "pin2": { - "compName": "GUIMerger#2", - "pinName": "I1" + "compName": "GUISplitter#2", + "pinName": "I" }, - "name": "unnamedWire#19", + "name": "unnamedWire#94", "path": [] }, { "pin1": { - "compName": "GUISplitter#14", - "pinName": "I" + "compName": "_submodelinterface", + "pinName": "_EOVR" }, "pin2": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "QIOn_MUX" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "A4" }, - "name": "unnamedWire#210", + "name": "unnamedWire#78", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#29", + "compName": "WireCrossPoint#3", "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#31", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "mu" }, - "name": "unnamedWire#213", + "name": "unnamedWire#28", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#3", - "pinName": "EN" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I1_2" }, "pin2": { - "compName": "WireCrossPoint#30", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y2" }, - "name": "unnamedWire#214", + "name": "unnamedWire#86", "path": [] }, { "pin1": { - "compName": "GUISplitter#14", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#11", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "I00" + "compName": "DeserializedSubmodelComponent#12", + "pinName": "B" }, - "name": "unnamedWire#211", + "name": "unnamedWire#147", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#2", - "pinName": "IN" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I010" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "Y" + "compName": "WireCrossPoint#20", + "pinName": "" }, - "name": "unnamedWire#212", + "name": "unnamedWire#191", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#31", + "compName": "WireCrossPoint#33", "pinName": "" }, "pin2": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "LSHIFT" + "compName": "GUINandGate#12", + "pinName": "A" }, - "name": "unnamedWire#217", + "name": "unnamedWire#233", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#2", - "pinName": "EN" + "compName": "_submodelinterface", + "pinName": "_CEM" }, "pin2": { - "compName": "WireCrossPoint#32", + "compName": "WireCrossPoint#6", "pinName": "" }, - "name": "unnamedWire#218", + "name": "unnamedWire#57", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#30", - "pinName": "" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "A3" }, "pin2": { - "compName": "GUITriStateBuffer#4", - "pinName": "EN" + "compName": "_submodelinterface", + "pinName": "_EN" }, - "name": "unnamedWire#215", + "name": "unnamedWire#77", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#31", - "pinName": "" + "compName": "GUINandGate#7", + "pinName": "A" }, "pin2": { - "compName": "WireCrossPoint#30", + "compName": "WireCrossPoint#10", "pinName": "" }, - "name": "unnamedWire#216", + "name": "unnamedWire#61", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_CINV" + "compName": "WireCrossPoint#1", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "CINV" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I" }, - "name": "unnamedWire#21", + "name": "unnamedWire#23", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "IZ" + "compName": "WireCrossPoint#21", + "pinName": "" }, "pin2": { - "compName": "GUIMerger#2", - "pinName": "I0" + "compName": "DeserializedSubmodelComponent#18", + "pinName": "I1" }, - "name": "unnamedWire#20", - "path": [ - { - "x": 5.0, - "y": 50.0 - }, - { - "x": 5.0, - "y": 65.0 - } - ] + "name": "unnamedWire#225", + "path": [] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y1" + }, + "pin2": { + "compName": "GUINandGate#9", + "pinName": "B" + }, + "name": "unnamedWire#71", + "path": [] }, { "pin1": { - "compName": "WireCrossPoint#1", + "compName": "WireCrossPoint#28", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#21", + "pinName": "A" }, - "name": "unnamedWire#23", + "name": "unnamedWire#205", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#32", - "pinName": "" + "compName": "GUISplitter#1", + "pinName": "O0" }, "pin2": { - "compName": "GUITriStateBuffer#1", - "pinName": "EN" + "compName": "_submodelinterface", + "pinName": "YZ" }, - "name": "unnamedWire#219", + "name": "unnamedWire#49", "path": [] }, { "pin1": { - "compName": "GUIMerger#2", - "pinName": "O" + "compName": "GUISplitter#4", + "pinName": "I" }, "pin2": { - "compName": "WireCrossPoint#1", + "compName": "WireCrossPoint#2", "pinName": "" }, - "name": "unnamedWire#22", + "name": "unnamedWire#106", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "Q" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y3" }, "pin2": { - "compName": "WireCrossPoint#2", - "pinName": "" + "compName": "GUINandGate#7", + "pinName": "B" }, - "name": "unnamedWire#25", + "name": "unnamedWire#73", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "GUISplitter#0", + "pinName": "O11" }, "pin2": { - "compName": "WireCrossPoint#1", - "pinName": "" + "compName": "GUIMerger#4", + "pinName": "I0" }, - "name": "unnamedWire#24", + "name": "unnamedWire#139", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "Q" + "compName": "DeserializedSubmodelComponent#11", + "pinName": "I1" }, "pin2": { - "compName": "WireCrossPoint#3", + "compName": "WireCrossPoint#22", "pinName": "" }, - "name": "unnamedWire#27", + "name": "unnamedWire#143", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#2", + "compName": "WireCrossPoint#15", "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#16", + "compName": "WireCrossPoint#1", "pinName": "" }, - "name": "unnamedWire#26", + "name": "unnamedWire#24", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#0", - "pinName": "" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_OVRRET" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "C" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "OVRRET" }, - "name": "unnamedWire#29", + "name": "unnamedWire#2", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#3", + "compName": "WireCrossPoint#14", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "mu" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I" }, - "name": "unnamedWire#28", + "name": "unnamedWire#113", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#29", - "pinName": "" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "OEN" }, "pin2": { - "compName": "GUINandGate#11", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "B" }, - "name": "unnamedWire#202", + "name": "unnamedWire#138", "path": [] }, { "pin1": { - "compName": "GUINandGate#11", - "pinName": "B" + "compName": "GUINandGate#8", + "pinName": "Y" }, "pin2": { - "compName": "WireCrossPoint#29", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "_EC" }, - "name": "unnamedWire#203", + "name": "unnamedWire#68", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#27", + "compName": "WireCrossPoint#12", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#10", - "pinName": "B" + "compName": "WireCrossPoint#10", + "pinName": "" }, - "name": "unnamedWire#200", + "name": "unnamedWire#65", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#26", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "IC" }, "pin2": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "I11" + "compName": "GUIMerger#2", + "pinName": "I1" }, - "name": "unnamedWire#201", + "name": "unnamedWire#19", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#21", - "pinName": "B" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "OE0" }, "pin2": { - "compName": "GUISplitter#7", - "pinName": "O3" + "compName": "WireCrossPoint#30", + "pinName": "" }, - "name": "unnamedWire#206", + "name": "unnamedWire#203", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "Y" + "compName": "WireCrossPoint#22", + "pinName": "" }, "pin2": { - "compName": "GUITriStateBuffer#1", - "pinName": "IN" + "compName": "WireCrossPoint#23", + "pinName": "" }, - "name": "unnamedWire#207", + "name": "unnamedWire#173", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#0", - "pinName": "" + "compName": "DeserializedSubmodelComponent#15", + "pinName": "I11" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "C" + "compName": "WireCrossPoint#23", + "pinName": "" }, - "name": "unnamedWire#30", + "name": "unnamedWire#182", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#28", - "pinName": "" + "compName": "GUITriStateBuffer#3", + "pinName": "IN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#10", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#15", + "pinName": "Y" }, - "name": "unnamedWire#204", + "name": "unnamedWire#165", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#28", + "compName": "WireCrossPoint#4", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#21", - "pinName": "A" + "compName": "GUINandGate#0", + "pinName": "B" }, - "name": "unnamedWire#205", + "name": "unnamedWire#34", "path": [] }, { "pin1": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "MC_EN" + "compName": "DeserializedSubmodelComponent#8", + "pinName": "A" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "COVD_EN" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "CT_INV" }, - "name": "unnamedWire#32", + "name": "unnamedWire#130", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "MSR_MUX" + "compName": "GUITriStateBuffer#4", + "pinName": "OUT" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "MUX" + "compName": "WireCrossPoint#21", + "pinName": "" }, - "name": "unnamedWire#31", + "name": "unnamedWire#164", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#4", - "pinName": "" + "compName": "GUIMerger#1", + "pinName": "I3" }, "pin2": { - "compName": "GUINandGate#0", - "pinName": "B" + "compName": "GUISplitter#0", + "pinName": "O9" }, - "name": "unnamedWire#34", + "name": "unnamedWire#13", "path": [] }, { "pin1": { - "compName": "GUISplitter#14", - "pinName": "O2" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "MC_EN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "S1" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "COVD_EN" }, - "name": "unnamedWire#208", + "name": "unnamedWire#32", "path": [] }, { "pin1": { - "compName": "GUINandGate#0", - "pinName": "A" + "compName": "WireCrossPoint#15", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#4", - "pinName": "" + "compName": "GUISplitter#7", + "pinName": "I" }, - "name": "unnamedWire#33", + "name": "unnamedWire#133", "path": [] }, { "pin1": { - "compName": "GUISplitter#14", - "pinName": "O1" + "compName": "WireCrossPoint#16", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "M" }, - "name": "unnamedWire#209", + "name": "unnamedWire#136", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#17", - "pinName": "" + "compName": "GUISplitter#3", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#13", - "pinName": "S0" + "compName": "WireCrossPoint#3", + "pinName": "" }, - "name": "unnamedWire#150", + "name": "unnamedWire#101", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#12", - "pinName": "Y" + "compName": "_submodelinterface", + "pinName": "C" }, "pin2": { - "compName": "DeserializedSubmodelComponent#13", - "pinName": "I1" + "compName": "WireCrossPoint#0", + "pinName": "" }, - "name": "unnamedWire#151", - "path": [] + "name": "unnamedWire#0", + "path": [ + { + "x": 5.0, + "y": 25.0 + }, + { + "x": 5.0, + "y": 10.0 + } + ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#14", - "pinName": "I0" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_3" }, "pin2": { - "compName": "WireCrossPoint#17", - "pinName": "" + "compName": "GUISplitter#5", + "pinName": "O2" }, - "name": "unnamedWire#154", + "name": "unnamedWire#109", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#14", - "pinName": "S0" + "compName": "GUISplitter#3", + "pinName": "O0" }, "pin2": { - "compName": "GUISplitter#9", - "pinName": "O3" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I0_1" }, - "name": "unnamedWire#155", + "name": "unnamedWire#97", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#13", - "pinName": "I0" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y011" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "Cx" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I011" }, - "name": "unnamedWire#152", + "name": "unnamedWire#118", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#13", - "pinName": "Y" + "compName": "GUISplitter#6", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#14", - "pinName": "I1" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "CT_MUX" }, - "name": "unnamedWire#153", + "name": "unnamedWire#124", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#19", - "pinName": "" + "compName": "GUISplitter#7", + "pinName": "O2" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "SIOn" + "compName": "WireCrossPoint#28", + "pinName": "" }, - "name": "unnamedWire#158", + "name": "unnamedWire#134", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#20", - "pinName": "" + "compName": "GUIMerger#3", + "pinName": "I3" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "SIO0" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y4" }, - "name": "unnamedWire#159", + "name": "unnamedWire#92", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#14", - "pinName": "Y" + "compName": "GUISplitter#5", + "pinName": "O3" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "C0" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_4" }, - "name": "unnamedWire#156", + "name": "unnamedWire#110", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "QIOn" + "compName": "GUINandGate#3", + "pinName": "A" }, "pin2": { - "compName": "WireCrossPoint#18", + "compName": "WireCrossPoint#9", "pinName": "" }, - "name": "unnamedWire#157", + "name": "unnamedWire#42", "path": [] }, { "pin1": { - "compName": "GUIMerger#4", - "pinName": "I1" + "compName": "WireCrossPoint#25", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O12" + "compName": "WireCrossPoint#24", + "pinName": "" }, - "name": "unnamedWire#140", + "name": "unnamedWire#185", "path": [] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "I5" + "compName": "WireCrossPoint#8", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O5" + "compName": "GUINandGate#4", + "pinName": "A" }, - "name": "unnamedWire#9", + "name": "unnamedWire#37", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#11", - "pinName": "I1" + "compName": "DeserializedSubmodelComponent#12", + "pinName": "A" }, "pin2": { - "compName": "WireCrossPoint#22", - "pinName": "" + "compName": "GUISplitter#9", + "pinName": "O0" }, - "name": "unnamedWire#143", + "name": "unnamedWire#148", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O4" + "compName": "GUIMerger#0", + "pinName": "I5" }, "pin2": { - "compName": "GUIMerger#0", - "pinName": "I4" + "compName": "GUISplitter#0", + "pinName": "O5" }, - "name": "unnamedWire#8", + "name": "unnamedWire#9", "path": [] }, { "pin1": { - "compName": "GUISplitter#10", - "pinName": "I" + "compName": "GUISplitter#9", + "pinName": "O2" }, "pin2": { - "compName": "WireCrossPoint#3", + "compName": "WireCrossPoint#17", "pinName": "" }, - "name": "unnamedWire#144", + "name": "unnamedWire#149", "path": [] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "I3" + "compName": "GUISplitter#14", + "pinName": "I" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O3" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "QIOn_MUX" }, - "name": "unnamedWire#7", + "name": "unnamedWire#210", "path": [] }, { "pin1": { - "compName": "GUIMerger#4", - "pinName": "O" + "compName": "GUINandGate#0", + "pinName": "A" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "I12-11" + "compName": "WireCrossPoint#4", + "pinName": "" }, - "name": "unnamedWire#141", + "name": "unnamedWire#33", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O2" + "compName": "WireCrossPoint#14", + "pinName": "" }, "pin2": { - "compName": "GUIMerger#0", - "pinName": "I2" + "compName": "GUITriStateBuffer#0", + "pinName": "IN" }, - "name": "unnamedWire#6", + "name": "unnamedWire#112", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "C0_MUX" + "compName": "_submodelinterface", + "pinName": "IOVR" }, "pin2": { - "compName": "GUISplitter#9", - "pinName": "I" + "compName": "GUIMerger#2", + "pinName": "I3" }, - "name": "unnamedWire#142", - "path": [] + "name": "unnamedWire#17", + "path": [ + { + "x": 10.0, + "y": 125.0 + }, + { + "x": 10.0, + "y": 95.0 + } + ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#11", - "pinName": "Y" + "compName": "_submodelinterface", + "pinName": "_EC" }, "pin2": { - "compName": "DeserializedSubmodelComponent#12", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "A2" }, - "name": "unnamedWire#147", + "name": "unnamedWire#76", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#12", - "pinName": "A" + "compName": "WireCrossPoint#28", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#9", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#10", + "pinName": "A" }, - "name": "unnamedWire#148", + "name": "unnamedWire#204", "path": [] }, { "pin1": { - "compName": "GUISplitter#10", - "pinName": "O1" + "compName": "GUITriStateBuffer#3", + "pinName": "OUT" }, "pin2": { - "compName": "DeserializedSubmodelComponent#11", - "pinName": "I0" + "compName": "WireCrossPoint#20", + "pinName": "" }, - "name": "unnamedWire#145", + "name": "unnamedWire#163", "path": [] }, { "pin1": { - "compName": "GUISplitter#9", - "pinName": "O1" + "compName": "GUINandGate#9", + "pinName": "A" }, "pin2": { - "compName": "DeserializedSubmodelComponent#11", - "pinName": "S0" + "compName": "WireCrossPoint#11", + "pinName": "" }, - "name": "unnamedWire#146", + "name": "unnamedWire#63", "path": [] }, { "pin1": { "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_MUX" + "pinName": "muSR_CINV" }, "pin2": { "compName": "DeserializedSubmodelComponent#1", - "pinName": "MUX" + "pinName": "CINV" }, - "name": "unnamedWire#1", + "name": "unnamedWire#21", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "C" - }, - "pin2": { - "compName": "WireCrossPoint#0", - "pinName": "" - }, - "name": "unnamedWire#0", - "path": [ - { - "x": 5.0, - "y": 25.0 - }, - { - "x": 5.0, - "y": 10.0 - } - ] - }, - { - "pin1": { - "compName": "GUISplitter#9", - "pinName": "O2" + "compName": "GUINandGate#10", + "pinName": "Y" }, "pin2": { - "compName": "WireCrossPoint#17", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "A" }, - "name": "unnamedWire#149", + "name": "unnamedWire#83", "path": [] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "I1" + "compName": "GUISplitter#11", + "pinName": "O2" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#15", + "pinName": "S1" }, - "name": "unnamedWire#5", + "name": "unnamedWire#168", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O6" + "compName": "DeserializedSubmodelComponent#14", + "pinName": "I0" }, "pin2": { - "compName": "GUIMerger#1", - "pinName": "I0" + "compName": "WireCrossPoint#17", + "pinName": "" }, - "name": "unnamedWire#10", + "name": "unnamedWire#154", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#18", + "pinName": "Y" }, "pin2": { - "compName": "GUIMerger#0", + "compName": "DeserializedSubmodelComponent#17", "pinName": "I0" }, - "name": "unnamedWire#4", + "name": "unnamedWire#221", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I" + "compName": "WireCrossPoint#21", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I011" }, - "name": "unnamedWire#3", + "name": "unnamedWire#192", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O8" + "compName": "GUISplitter#11", + "pinName": "O0" }, "pin2": { - "compName": "GUIMerger#1", - "pinName": "I2" + "compName": "DeserializedSubmodelComponent#15", + "pinName": "I00" }, - "name": "unnamedWire#12", + "name": "unnamedWire#167", "path": [] }, { "pin1": { - "compName": "GUIMerger#1", - "pinName": "I1" + "compName": "GUISplitter#2", + "pinName": "O1" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O7" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "S0" }, - "name": "unnamedWire#11", + "name": "unnamedWire#96", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_OVRRET" + "compName": "GUISplitter#5", + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "OVRRET" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_1" }, - "name": "unnamedWire#2", + "name": "unnamedWire#107", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "GUISplitter#1", + "pinName": "O2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "I" + "compName": "_submodelinterface", + "pinName": "YN" }, - "name": "unnamedWire#132", + "name": "unnamedWire#51", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y1" }, "pin2": { - "compName": "GUISplitter#7", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I1_1" }, - "name": "unnamedWire#133", + "name": "unnamedWire#85", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#8", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I1_4" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "CT_INV" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y4" }, - "name": "unnamedWire#130", + "name": "unnamedWire#88", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#10", + "compName": "DeserializedSubmodelComponent#12", "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#9", + "compName": "DeserializedSubmodelComponent#13", "pinName": "I1" }, - "name": "unnamedWire#131", + "name": "unnamedWire#151", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#16", - "pinName": "" + "compName": "GUIMerger#1", + "pinName": "I1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "M" + "compName": "GUISplitter#0", + "pinName": "O7" }, - "name": "unnamedWire#136", + "name": "unnamedWire#11", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#16", - "pinName": "" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "SIO0_MUX" }, "pin2": { - "compName": "GUISplitter#8", + "compName": "GUISplitter#11", "pinName": "I" }, - "name": "unnamedWire#137", + "name": "unnamedWire#166", "path": [] }, { "pin1": { - "compName": "GUISplitter#7", - "pinName": "O2" - }, - "pin2": { - "compName": "WireCrossPoint#28", + "compName": "WireCrossPoint#13", "pinName": "" }, - "name": "unnamedWire#134", - "path": [] - }, - { - "pin1": { - "compName": "GUISplitter#8", - "pinName": "O2" - }, "pin2": { - "compName": "WireCrossPoint#27", - "pinName": "" + "compName": "GUINandGate#10", + "pinName": "A" }, - "name": "unnamedWire#135", + "name": "unnamedWire#80", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "OEN" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I0_3" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "B" + "compName": "GUISplitter#3", + "pinName": "O2" }, - "name": "unnamedWire#138", + "name": "unnamedWire#99", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O11" + "compName": "WireCrossPoint#11", + "pinName": "" }, "pin2": { - "compName": "GUIMerger#4", - "pinName": "I0" + "compName": "WireCrossPoint#12", + "pinName": "" }, - "name": "unnamedWire#139", + "name": "unnamedWire#64", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y000" + "compName": "GUITriStateBuffer#2", + "pinName": "OUT" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I000" + "compName": "WireCrossPoint#19", + "pinName": "" }, - "name": "unnamedWire#121", + "name": "unnamedWire#162", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#8", - "pinName": "Y" + "compName": "GUISplitter#13", + "pinName": "I" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "CT" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "SIOn_MUX" }, - "name": "unnamedWire#122", + "name": "unnamedWire#188", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I001" + "compName": "GUISplitter#5", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y001" + "compName": "WireCrossPoint#1", + "pinName": "" }, - "name": "unnamedWire#120", + "name": "unnamedWire#111", "path": [] }, { "pin1": { - "compName": "GUISplitter#6", - "pinName": "O0" + "compName": "GUISplitter#15", + "pinName": "O1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", + "compName": "DeserializedSubmodelComponent#17", "pinName": "S0" }, - "name": "unnamedWire#125", + "name": "unnamedWire#228", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "S1" + "compName": "WireCrossPoint#26", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#6", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "I11" }, - "name": "unnamedWire#126", + "name": "unnamedWire#201", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#9", + "compName": "GUINandGate#4", "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#8", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "_EZ" }, - "name": "unnamedWire#123", + "name": "unnamedWire#46", "path": [] }, { "pin1": { - "compName": "GUISplitter#6", - "pinName": "I" + "compName": "WireCrossPoint#16", + "pinName": "" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "CT_MUX" + "compName": "GUISplitter#8", + "pinName": "I" }, - "name": "unnamedWire#124", + "name": "unnamedWire#137", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "Y" + "compName": "GUISplitter#10", + "pinName": "O1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#9", + "compName": "DeserializedSubmodelComponent#11", "pinName": "I0" }, - "name": "unnamedWire#129", - "path": [] - }, - { - "pin1": { - "compName": "GUISplitter#6", - "pinName": "O2" - }, - "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "S2" - }, - "name": "unnamedWire#127", + "name": "unnamedWire#145", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "CT_EXP" + "compName": "WireCrossPoint#13", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#9", - "pinName": "S0" + "compName": "_submodelinterface", + "pinName": "_OEY" }, - "name": "unnamedWire#128", + "name": "unnamedWire#82", "path": [] } - ] + ], + "version": "0.1.1" }, "symbolRendererSnippetID": "simpleRectangularLike", "symbolRendererParams": { @@ -3855,5 +3982,6 @@ mograsim version: 0.1.3 "highLevelStateHandlerParams": { "subcomponentHighLevelStates": {}, "atomicHighLevelStates": {} - } + }, + "version": "0.1.4" } \ No newline at end of file diff --git a/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904MSR.json b/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904MSR.json index 3296f39c..4a244645 100644 --- a/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904MSR.json +++ b/net.mograsim.logic.model.am2900/components/am2904/GUIAm2904MSR.json @@ -1,4 +1,3 @@ -mograsim version: 0.1.3 { "width": 45.0, "height": 46.0, @@ -100,62 +99,78 @@ mograsim version: 0.1.3 "logicWidth": 1 } ], + "innerScale": 0.1, "submodel": { - "innerScale": 0.1, - "subComps": [ + "components": [ { "id": "WireCrossPoint", - "name": "WireCrossPoint#14", + "name": "WireCrossPoint#2", "pos": { - "x": 89.0, - "y": 104.0 + "x": 419.0, + "y": 184.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#13", + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#0", "pos": { - "x": 194.0, - "y": 234.0 - }, - "params": 1 + "x": 55.0, + "y": 110.0 + } }, { - "id": "GUINandGate", - "name": "GUINandGate#0", + "id": "GUIMerger", + "name": "GUIMerger#0", "pos": { - "x": 325.0, - "y": 90.0 + "x": 435.0, + "y": 175.0 }, - "params": 1 + "params": 4 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#16", + "name": "WireCrossPoint#5", "pos": { - "x": 319.0, - "y": 104.0 + "x": 84.0, + "y": 344.0 }, "params": 1 }, + { + "id": "GUISplitter", + "name": "GUISplitter#0", + "pos": { + "x": 5.0, + "y": 35.0 + }, + "params": 4 + }, + { + "id": "GUIdff4_finewe", + "name": "GUIdff4_finewe#0", + "pos": { + "x": 375.0, + "y": 170.0 + } + }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#15", + "name": "WireCrossPoint#8", "pos": { - "x": 319.0, - "y": 294.0 + "x": 74.0, + "y": 314.0 }, "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#3", + "id": "WireCrossPoint", + "name": "WireCrossPoint#3", "pos": { - "x": 5.0, - "y": 295.0 + "x": 424.0, + "y": 194.0 }, - "params": 4 + "params": 1 }, { "id": "GUISplitter", @@ -177,64 +192,103 @@ mograsim version: 0.1.3 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#1", + "name": "WireCrossPoint#4", "pos": { - "x": 414.0, - "y": 174.0 + "x": 429.0, + "y": 204.0 }, "params": 1 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#0", + "name": "WireCrossPoint#11", "pos": { - "x": 29.0, - "y": 284.0 + "x": 89.0, + "y": 94.0 }, "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#0", + "id": "WireCrossPoint", + "name": "WireCrossPoint#12", "pos": { - "x": 5.0, - "y": 35.0 + "x": 19.0, + "y": 294.0 }, - "params": 4 + "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#3", + "id": "GUINandGate", + "name": "GUINandGate#0", "pos": { - "x": 424.0, - "y": 194.0 + "x": 325.0, + "y": 90.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#2", + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#5", "pos": { - "x": 419.0, - "y": 184.0 - }, - "params": 1 + "x": 200.0, + "y": 230.0 + } + }, + { + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#7", + "pos": { + "x": 325.0, + "y": 290.0 + } + }, + { + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#2", + "pos": { + "x": 150.0, + "y": 280.0 + } }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#5", + "name": "WireCrossPoint#0", "pos": { - "x": 84.0, - "y": 344.0 + "x": 29.0, + "y": 284.0 }, "params": 1 }, + { + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#1", + "pos": { + "x": 35.0, + "y": 250.0 + } + }, + { + "id": "GUInot4", + "name": "DeserializedSubmodelComponent#3", + "pos": { + "x": 100.0, + "y": 330.0 + } + }, + { + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#4", + "pos": { + "x": 110.0, + "y": 60.0 + } + }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#4", + "name": "WireCrossPoint#1", "pos": { - "x": 429.0, - "y": 204.0 + "x": 414.0, + "y": 174.0 }, "params": 1 }, @@ -258,38 +312,13 @@ mograsim version: 0.1.3 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#9", - "pos": { - "x": 49.0, - "y": 114.0 - }, - "params": 1 - }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#8", + "name": "WireCrossPoint#14", "pos": { - "x": 74.0, - "y": 314.0 + "x": 89.0, + "y": 104.0 }, "params": 1 }, - { - "id": "GUIdff4_finewe", - "name": "GUIdff4_finewe#0", - "pos": { - "x": 375.0, - "y": 170.0 - } - }, - { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#1", - "pos": { - "x": 35.0, - "y": 250.0 - } - }, { "id": "WireCrossPoint", "name": "WireCrossPoint#10", @@ -299,70 +328,48 @@ mograsim version: 0.1.3 }, "params": 1 }, - { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#0", - "pos": { - "x": 55.0, - "y": 110.0 - } - }, - { - "id": "GUInot4", - "name": "DeserializedSubmodelComponent#3", - "pos": { - "x": 100.0, - "y": 330.0 - } - }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#12", + "name": "WireCrossPoint#15", "pos": { - "x": 19.0, + "x": 319.0, "y": 294.0 }, "params": 1 }, - { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#2", - "pos": { - "x": 150.0, - "y": 280.0 - } - }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#11", + "name": "WireCrossPoint#9", "pos": { - "x": 89.0, - "y": 94.0 + "x": 49.0, + "y": 114.0 }, "params": 1 }, { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#5", + "id": "WireCrossPoint", + "name": "WireCrossPoint#16", "pos": { - "x": 200.0, - "y": 230.0 - } + "x": 319.0, + "y": 104.0 + }, + "params": 1 }, { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#4", + "id": "WireCrossPoint", + "name": "WireCrossPoint#13", "pos": { - "x": 110.0, - "y": 60.0 - } + "x": 194.0, + "y": 234.0 + }, + "params": 1 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#7", + "id": "GUIand", + "name": "DeserializedSubmodelComponent#8", "pos": { - "x": 325.0, - "y": 290.0 + "x": 380.0, + "y": 85.0 } }, { @@ -374,367 +381,347 @@ mograsim version: 0.1.3 } }, { - "id": "GUIMerger", - "name": "GUIMerger#0", + "id": "GUISplitter", + "name": "GUISplitter#3", "pos": { - "x": 435.0, - "y": 175.0 + "x": 5.0, + "y": 295.0 }, "params": 4 - }, - { - "id": "GUIand", - "name": "DeserializedSubmodelComponent#8", - "pos": { - "x": 380.0, - "y": 85.0 - } } ], - "innerWires": [ + "wires": [ { "pin1": { - "compName": "WireCrossPoint#3", - "pinName": "" + "compName": "GUISplitter#0", + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "A3" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I0_1" }, - "name": "unnamedWire#36", + "name": "unnamedWire#12", "path": [ { - "x": 425.0, - "y": 390.0 - }, - { - "x": 90.0, - "y": 390.0 + "x": 35.0, + "y": 35.0 }, { - "x": 90.0, - "y": 355.0 + "x": 35.0, + "y": 125.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#2", + "compName": "WireCrossPoint#13", "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#5", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "S0" }, - "name": "unnamedWire#35", - "path": [ - { - "x": 420.0, - "y": 385.0 - }, - { - "x": 85.0, - "y": 385.0 - } - ] + "name": "unnamedWire#68", + "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y3" + "compName": "_submodelinterface", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", + "compName": "GUISplitter#1", + "pinName": "I" + }, + "name": "unnamedWire#11", + "path": [] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#5", "pinName": "I0_3" }, - "name": "unnamedWire#79", + "pin2": { + "compName": "WireCrossPoint#8", + "pinName": "" + }, + "name": "unnamedWire#61", "path": [ { - "x": 205.0, - "y": 85.0 - }, - { - "x": 205.0, - "y": 215.0 + "x": 75.0, + "y": 265.0 } ] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "A" }, "pin2": { - "compName": "WireCrossPoint#12", + "compName": "WireCrossPoint#7", "pinName": "" }, - "name": "unnamedWire#38", + "name": "unnamedWire#25", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#4", - "pinName": "" + "compName": "GUISplitter#2", + "pinName": "O2" }, "pin2": { - "compName": "WireCrossPoint#6", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "S0" }, - "name": "unnamedWire#37", + "name": "unnamedWire#82", "path": [ { - "x": 430.0, - "y": 395.0 + "x": 245.0, + "y": 445.0 }, { - "x": 95.0, - "y": 395.0 + "x": 245.0, + "y": 185.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I0_4" + "compName": "WireCrossPoint#0", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#5", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "S0" }, - "name": "unnamedWire#39", - "path": [ - { - "x": 85.0, - "y": 325.0 - } - ] + "name": "unnamedWire#43", + "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y1" + "compName": "WireCrossPoint#0", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I0_1" + "compName": "WireCrossPoint#7", + "pinName": "" }, - "name": "unnamedWire#81", - "path": [ - { - "x": 215.0, - "y": 65.0 - }, - { - "x": 215.0, - "y": 195.0 - } - ] + "name": "unnamedWire#21", + "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I0_2" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I1_2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", + "compName": "DeserializedSubmodelComponent#0", "pinName": "Y2" }, - "name": "unnamedWire#80", - "path": [ - { - "x": 210.0, - "y": 205.0 - }, - { - "x": 210.0, - "y": 75.0 - } - ] + "name": "unnamedWire#46", + "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "GUISplitter#2", + "pinName": "O1" }, "pin2": { - "compName": "WireCrossPoint#15", + "compName": "WireCrossPoint#13", "pinName": "" }, - "name": "unnamedWire#83", - "path": [] + "name": "unnamedWire#67", + "path": [ + { + "x": 195.0, + "y": 435.0 + } + ] }, { "pin1": { - "compName": "GUISplitter#2", - "pinName": "O2" + "compName": "WireCrossPoint#3", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "A3" }, - "name": "unnamedWire#82", + "name": "unnamedWire#36", "path": [ { - "x": 245.0, - "y": 445.0 + "x": 425.0, + "y": 390.0 }, { - "x": 245.0, - "y": 185.0 + "x": 90.0, + "y": 390.0 + }, + { + "x": 90.0, + "y": 355.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I0_3" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I1_2" }, "pin2": { - "compName": "WireCrossPoint#8", - "pinName": "" + "compName": "GUISplitter#1", + "pinName": "O1" }, - "name": "unnamedWire#41", + "name": "unnamedWire#17", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I1_4" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "Y4" }, - "name": "unnamedWire#85", + "name": "unnamedWire#48", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#6", + "compName": "WireCrossPoint#10", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", + "compName": "DeserializedSubmodelComponent#4", "pinName": "I0_2" }, - "name": "unnamedWire#40", - "path": [ - { - "x": 95.0, - "y": 305.0 - } - ] + "name": "unnamedWire#53", + "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "C" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "COVD_EN" + "compName": "GUIdff4_finewe#0", + "pinName": "C" }, - "name": "unnamedWire#84", + "name": "unnamedWire#0", "path": [ { - "x": 275.0, - "y": 295.0 + "x": 140.0, + "y": 415.0 + }, + { + "x": 255.0, + "y": 415.0 + }, + { + "x": 255.0, + "y": 280.0 + }, + { + "x": 340.0, + "y": 280.0 + }, + { + "x": 340.0, + "y": 175.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#0", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I1_2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y2" }, - "name": "unnamedWire#43", + "name": "unnamedWire#31", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y2" + "compName": "WireCrossPoint#2", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I0" + "compName": "WireCrossPoint#5", + "pinName": "" }, - "name": "unnamedWire#87", + "name": "unnamedWire#35", "path": [ { - "x": 305.0, - "y": 195.0 + "x": 420.0, + "y": 385.0 }, { - "x": 305.0, - "y": 305.0 + "x": 85.0, + "y": 385.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#7", + "compName": "WireCrossPoint#15", "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#9", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "COVD_EN" }, - "name": "unnamedWire#42", + "name": "unnamedWire#84", "path": [ { - "x": 30.0, - "y": 230.0 - }, - { - "x": 50.0, - "y": 230.0 + "x": 275.0, + "y": 295.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "COVD_V" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y3" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I1" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I0_3" }, - "name": "unnamedWire#86", + "name": "unnamedWire#79", "path": [ { - "x": 375.0, - "y": 325.0 - }, - { - "x": 320.0, - "y": 325.0 + "x": 205.0, + "y": 85.0 }, { - "x": 320.0, - "y": 315.0 + "x": 205.0, + "y": 215.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#9", - "pinName": "" + "compName": "GUISplitter#3", + "pinName": "O1" }, "pin2": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "B" }, - "name": "unnamedWire#45", + "name": "unnamedWire#23", "path": [ { - "x": 50.0, - "y": 105.0 + "x": 25.0, + "y": 305.0 + }, + { + "x": 25.0, + "y": 265.0 } ] }, @@ -752,275 +739,281 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", + "compName": "DeserializedSubmodelComponent#5", "pinName": "Y1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", + "compName": "DeserializedSubmodelComponent#6", "pinName": "I1_1" }, - "name": "unnamedWire#44", + "name": "unnamedWire#77", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "Y" - }, - "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "D2" - }, - "name": "unnamedWire#88", - "path": [ - { - "x": 365.0, - "y": 295.0 - }, - { - "x": 365.0, - "y": 235.0 - } - ] - }, - { - "pin1": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "Y3" + "compName": "WireCrossPoint#12", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I1_3" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I0_1" }, - "name": "unnamedWire#47", + "name": "unnamedWire#57", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I1_2" + "compName": "_submodelinterface", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "Y2" + "compName": "GUISplitter#3", + "pinName": "I" }, - "name": "unnamedWire#46", + "name": "unnamedWire#22", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "GUISplitter#0", + "pinName": "O2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I0_4" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I0_3" }, - "name": "unnamedWire#49", - "path": [] + "name": "unnamedWire#14", + "path": [ + { + "x": 25.0, + "y": 55.0 + }, + { + "x": 25.0, + "y": 145.0 + } + ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I1_4" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "Y1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "Y4" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_1" }, - "name": "unnamedWire#48", + "name": "unnamedWire#63", "path": [] }, { "pin1": { - "compName": "GUIdff4_finewe#0", - "pinName": "Q2" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I0_2" }, "pin2": { - "compName": "WireCrossPoint#2", - "pinName": "" + "compName": "GUISplitter#0", + "pinName": "O1" }, - "name": "unnamedWire#9", - "path": [] + "name": "unnamedWire#13", + "path": [ + { + "x": 30.0, + "y": 135.0 + }, + { + "x": 30.0, + "y": 45.0 + } + ] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "I1" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "Y1" }, "pin2": { - "compName": "WireCrossPoint#2", - "pinName": "" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I1_1" }, - "name": "unnamedWire#8", + "name": "unnamedWire#44", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#1", + "compName": "WireCrossPoint#14", "pinName": "" }, "pin2": { - "compName": "GUIMerger#0", - "pinName": "I0" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I0_4" }, - "name": "unnamedWire#7", + "name": "unnamedWire#49", "path": [] }, { "pin1": { - "compName": "GUIdff4_finewe#0", - "pinName": "Q1" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I0_4" }, "pin2": { - "compName": "WireCrossPoint#1", - "pinName": "" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y4" }, - "name": "unnamedWire#6", - "path": [] + "name": "unnamedWire#78", + "path": [ + { + "x": 200.0, + "y": 225.0 + }, + { + "x": 200.0, + "y": 95.0 + } + ] }, { "pin1": { - "compName": "WireCrossPoint#16", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "Y3" }, "pin2": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_3" }, - "name": "unnamedWire#90", + "name": "unnamedWire#65", "path": [] }, { "pin1": { - "compName": "GUINandGate#0", - "pinName": "A" + "compName": "_submodelinterface", + "pinName": "MUX" }, "pin2": { - "compName": "WireCrossPoint#16", - "pinName": "" + "compName": "GUISplitter#2", + "pinName": "I" }, - "name": "unnamedWire#92", + "name": "unnamedWire#20", "path": [ { - "x": 320.0, - "y": 95.0 + "x": 40.0, + "y": 435.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#16", + "compName": "GUIMerger#0", + "pinName": "I3" + }, + "pin2": { + "compName": "WireCrossPoint#4", "pinName": "" }, + "name": "unnamedWire#28", + "path": [] + }, + { + "pin1": { + "compName": "GUISplitter#1", + "pinName": "O2" + }, "pin2": { - "compName": "GUINandGate#0", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I1_3" }, - "name": "unnamedWire#91", + "name": "unnamedWire#18", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EOVR" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I0_1" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "_WE4" + "compName": "WireCrossPoint#10", + "pinName": "" }, - "name": "unnamedWire#1", + "name": "unnamedWire#54", "path": [ { - "x": 355.0, - "y": 30.0 - }, - { - "x": 355.0, - "y": 215.0 + "x": 90.0, + "y": 75.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#10", - "pinName": "" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y3" }, "pin2": { - "compName": "WireCrossPoint#11", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I1_3" }, - "name": "unnamedWire#50", + "name": "unnamedWire#32", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "C" + "compName": "WireCrossPoint#4", + "pinName": "" }, "pin2": { "compName": "GUIdff4_finewe#0", - "pinName": "C" + "pinName": "Q4" }, - "name": "unnamedWire#0", - "path": [ - { - "x": 140.0, - "y": 415.0 - }, - { - "x": 255.0, - "y": 415.0 - }, - { - "x": 255.0, - "y": 280.0 - }, - { - "x": 340.0, - "y": 280.0 - }, - { - "x": 340.0, - "y": 175.0 - } - ] + "name": "unnamedWire#29", + "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", + "compName": "DeserializedSubmodelComponent#2", "pinName": "I0_3" }, "pin2": { - "compName": "WireCrossPoint#11", + "compName": "WireCrossPoint#8", "pinName": "" }, - "name": "unnamedWire#52", + "name": "unnamedWire#41", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#11", - "pinName": "" + "compName": "GUISplitter#1", + "pinName": "O3" }, "pin2": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I1_4" }, - "name": "unnamedWire#51", + "name": "unnamedWire#19", "path": [] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "O" + "compName": "WireCrossPoint#1", + "pinName": "" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "Q" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "A1" }, - "name": "unnamedWire#5", - "path": [] + "name": "unnamedWire#34", + "path": [ + { + "x": 415.0, + "y": 380.0 + }, + { + "x": 80.0, + "y": 380.0 + }, + { + "x": 80.0, + "y": 335.0 + } + ] }, { "pin1": { @@ -1036,331 +1029,306 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I0_1" + "compName": "GUISplitter#3", + "pinName": "O0" }, "pin2": { - "compName": "WireCrossPoint#10", + "compName": "WireCrossPoint#12", "pinName": "" }, - "name": "unnamedWire#54", - "path": [ - { - "x": 90.0, - "y": 75.0 - } - ] + "name": "unnamedWire#38", + "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EZ" + "compName": "WireCrossPoint#9", + "pinName": "" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "_WE1" + "compName": "WireCrossPoint#14", + "pinName": "" }, - "name": "unnamedWire#4", + "name": "unnamedWire#45", "path": [ { - "x": 55.0, - "y": 15.0 - }, - { - "x": 370.0, - "y": 15.0 - }, - { - "x": 370.0, - "y": 185.0 + "x": 50.0, + "y": 105.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#10", - "pinName": "" - }, - "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I0_2" - }, - "name": "unnamedWire#53", - "path": [] - }, - { - "pin1": { - "compName": "GUISplitter#0", - "pinName": "O0" + "compName": "GUINandGate#0", + "pinName": "A" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I0_1" + "compName": "WireCrossPoint#16", + "pinName": "" }, - "name": "unnamedWire#12", + "name": "unnamedWire#92", "path": [ { - "x": 35.0, - "y": 35.0 - }, - { - "x": 35.0, - "y": 125.0 + "x": 320.0, + "y": 95.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "A2" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I0_3" }, "pin2": { - "compName": "WireCrossPoint#5", + "compName": "WireCrossPoint#11", "pinName": "" }, - "name": "unnamedWire#56", + "name": "unnamedWire#52", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EC" + "compName": "GUISplitter#2", + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#8", - "pinName": "A" + "compName": "WireCrossPoint#0", + "pinName": "" }, - "name": "unnamedWire#3", + "name": "unnamedWire#24", "path": [ { - "x": 155.0, - "y": 20.0 + "x": 60.0, + "y": 425.0 }, { - "x": 365.0, - "y": 20.0 + "x": 60.0, + "y": 415.0 }, { - "x": 365.0, - "y": 90.0 + "x": 30.0, + "y": 415.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EN" + "compName": "WireCrossPoint#4", + "pinName": "" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "_WE3" + "compName": "WireCrossPoint#6", + "pinName": "" }, - "name": "unnamedWire#2", + "name": "unnamedWire#37", "path": [ { - "x": 255.0, - "y": 25.0 - }, - { - "x": 360.0, - "y": 25.0 + "x": 430.0, + "y": 395.0 }, { - "x": 360.0, - "y": 205.0 + "x": 95.0, + "y": 395.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "Y" - }, - "pin2": { "compName": "GUISplitter#1", - "pinName": "I" - }, - "name": "unnamedWire#11", - "path": [] - }, - { - "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "A4" + "pinName": "O0" }, "pin2": { - "compName": "WireCrossPoint#6", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I1_1" }, - "name": "unnamedWire#55", + "name": "unnamedWire#16", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O2" + "compName": "_submodelinterface", + "pinName": "_EOVR" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I0_3" + "compName": "GUIdff4_finewe#0", + "pinName": "_WE4" }, - "name": "unnamedWire#14", + "name": "unnamedWire#1", "path": [ { - "x": 25.0, - "y": 55.0 + "x": 355.0, + "y": 30.0 }, { - "x": 25.0, - "y": 145.0 + "x": 355.0, + "y": 215.0 } ] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O2" + "compName": "WireCrossPoint#9", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#8", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "S0" }, - "name": "unnamedWire#58", + "name": "unnamedWire#93", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I0_2" + "compName": "GUIMerger#0", + "pinName": "O" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O1" + "compName": "_submodelinterface", + "pinName": "Q" }, - "name": "unnamedWire#13", - "path": [ - { - "x": 30.0, - "y": 135.0 - }, - { - "x": 30.0, - "y": 45.0 - } - ] + "name": "unnamedWire#5", + "path": [] }, { "pin1": { - "compName": "WireCrossPoint#12", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y3" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I0_1" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I1_3" }, - "name": "unnamedWire#57", + "name": "unnamedWire#75", "path": [] }, { "pin1": { - "compName": "GUISplitter#1", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "A2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I1_1" + "compName": "WireCrossPoint#5", + "pinName": "" }, - "name": "unnamedWire#16", + "name": "unnamedWire#56", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I0_4" + "compName": "_submodelinterface", + "pinName": "COVD_V" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O3" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I1" }, - "name": "unnamedWire#15", + "name": "unnamedWire#86", "path": [ { - "x": 20.0, - "y": 155.0 + "x": 375.0, + "y": 325.0 }, { - "x": 20.0, - "y": 65.0 + "x": 320.0, + "y": 325.0 + }, + { + "x": 320.0, + "y": 315.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#12", + "compName": "WireCrossPoint#13", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_1" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "S0" }, - "name": "unnamedWire#59", + "name": "unnamedWire#69", "path": [ { - "x": 20.0, - "y": 245.0 + "x": 105.0, + "y": 235.0 + }, + { + "x": 105.0, + "y": 65.0 } ] }, { "pin1": { - "compName": "GUISplitter#1", - "pinName": "O2" + "compName": "GUIdff4_finewe#0", + "pinName": "Q2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I1_3" + "compName": "WireCrossPoint#2", + "pinName": "" }, - "name": "unnamedWire#18", + "name": "unnamedWire#9", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y4" + }, + "pin2": { + "compName": "GUIdff4_finewe#0", + "pinName": "D4" + }, + "name": "unnamedWire#70", + "path": [ + { + "x": 295.0, + "y": 215.0 + }, + { + "x": 295.0, + "y": 255.0 + } + ] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#5", "pinName": "I1_2" }, "pin2": { - "compName": "GUISplitter#1", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "Y2" }, - "name": "unnamedWire#17", + "name": "unnamedWire#64", "path": [] }, { "pin1": { - "compName": "GUISplitter#1", - "pinName": "O3" + "compName": "WireCrossPoint#1", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I1_4" + "compName": "GUIMerger#0", + "pinName": "I0" }, - "name": "unnamedWire#19", + "name": "unnamedWire#7", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_3" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I0_4" }, "pin2": { - "compName": "WireCrossPoint#8", + "compName": "WireCrossPoint#5", "pinName": "" }, - "name": "unnamedWire#61", + "name": "unnamedWire#39", "path": [ - { - "x": 75.0, - "y": 265.0 + { + "x": 85.0, + "y": 325.0 } ] }, @@ -1378,139 +1346,144 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "Y1" + "compName": "WireCrossPoint#15", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_1" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "S0" }, - "name": "unnamedWire#63", + "name": "unnamedWire#85", "path": [] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O3" - }, - "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_4" - }, - "name": "unnamedWire#62", - "path": [ - { - "x": 80.0, - "y": 325.0 - }, - { - "x": 80.0, - "y": 275.0 - } - ] - }, - { - "pin1": { - "compName": "WireCrossPoint#0", + "compName": "WireCrossPoint#3", "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#7", - "pinName": "" + "compName": "GUIMerger#0", + "pinName": "I2" }, - "name": "unnamedWire#21", + "name": "unnamedWire#27", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "Y3" + "compName": "WireCrossPoint#16", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_3" + "compName": "GUINandGate#0", + "pinName": "B" }, - "name": "unnamedWire#65", + "name": "unnamedWire#91", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "MUX" + "compName": "WireCrossPoint#6", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#2", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I0_2" }, - "name": "unnamedWire#20", + "name": "unnamedWire#40", "path": [ { - "x": 40.0, - "y": 435.0 + "x": 95.0, + "y": 305.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_2" + "compName": "WireCrossPoint#7", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "Y2" + "compName": "WireCrossPoint#9", + "pinName": "" }, - "name": "unnamedWire#64", - "path": [] + "name": "unnamedWire#42", + "path": [ + { + "x": 30.0, + "y": 230.0 + }, + { + "x": 50.0, + "y": 230.0 + } + ] }, { "pin1": { - "compName": "GUISplitter#2", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y1" }, "pin2": { - "compName": "WireCrossPoint#13", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I0_1" }, - "name": "unnamedWire#67", + "name": "unnamedWire#81", "path": [ { - "x": 195.0, - "y": 435.0 + "x": 215.0, + "y": 65.0 + }, + { + "x": 215.0, + "y": 195.0 } ] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O1" + "compName": "_submodelinterface", + "pinName": "_EZ" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "B" + "compName": "GUIdff4_finewe#0", + "pinName": "_WE1" }, - "name": "unnamedWire#23", + "name": "unnamedWire#4", "path": [ { - "x": 25.0, - "y": 305.0 + "x": 55.0, + "y": 15.0 }, { - "x": 25.0, - "y": 265.0 + "x": 370.0, + "y": 15.0 + }, + { + "x": 370.0, + "y": 185.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I" + "compName": "GUIdff4_finewe#0", + "pinName": "D1" }, "pin2": { - "compName": "GUISplitter#3", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y1" }, - "name": "unnamedWire#22", - "path": [] + "name": "unnamedWire#73", + "path": [ + { + "x": 310.0, + "y": 225.0 + }, + { + "x": 310.0, + "y": 185.0 + } + ] }, { "pin1": { @@ -1526,84 +1499,128 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "WireCrossPoint#13", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "_EN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "S0" + "compName": "GUIdff4_finewe#0", + "pinName": "_WE3" }, - "name": "unnamedWire#69", + "name": "unnamedWire#2", "path": [ { - "x": 105.0, - "y": 235.0 + "x": 255.0, + "y": 25.0 }, { - "x": 105.0, - "y": 65.0 + "x": 360.0, + "y": 25.0 + }, + { + "x": 360.0, + "y": 205.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "A4" }, "pin2": { - "compName": "WireCrossPoint#7", + "compName": "WireCrossPoint#6", "pinName": "" }, - "name": "unnamedWire#25", + "name": "unnamedWire#55", "path": [] }, { "pin1": { - "compName": "GUISplitter#2", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I1_4" }, "pin2": { - "compName": "WireCrossPoint#0", - "pinName": "" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y4" }, - "name": "unnamedWire#24", + "name": "unnamedWire#33", + "path": [] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#8", + "pinName": "Y" + }, + "pin2": { + "compName": "GUIdff4_finewe#0", + "pinName": "_WE2" + }, + "name": "unnamedWire#72", "path": [ { - "x": 60.0, - "y": 425.0 + "x": 420.0, + "y": 90.0 }, { - "x": 60.0, - "y": 415.0 + "x": 420.0, + "y": 110.0 }, { - "x": 30.0, - "y": 415.0 + "x": 365.0, + "y": 110.0 + }, + { + "x": 365.0, + "y": 195.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#13", + "compName": "WireCrossPoint#11", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "S0" + "compName": "WireCrossPoint#14", + "pinName": "" }, - "name": "unnamedWire#68", + "name": "unnamedWire#51", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#3", + "compName": "DeserializedSubmodelComponent#0", + "pinName": "Y3" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I1_3" + }, + "name": "unnamedWire#47", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#15", "pinName": "" }, "pin2": { - "compName": "GUIMerger#0", - "pinName": "I2" + "compName": "WireCrossPoint#15", + "pinName": "" }, - "name": "unnamedWire#27", + "name": "unnamedWire#83", + "path": [] + }, + { + "pin1": { + "compName": "GUISplitter#3", + "pinName": "O2" + }, + "pin2": { + "compName": "WireCrossPoint#8", + "pinName": "" + }, + "name": "unnamedWire#58", "path": [] }, { @@ -1620,263 +1637,258 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "WireCrossPoint#4", - "pinName": "" + "compName": "GUIdff4_finewe#0", + "pinName": "D3" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "Q4" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y3" }, - "name": "unnamedWire#29", - "path": [] + "name": "unnamedWire#71", + "path": [ + { + "x": 300.0, + "y": 245.0 + }, + { + "x": 300.0, + "y": 205.0 + } + ] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "I3" + "compName": "GUIdff4_finewe#0", + "pinName": "Q1" }, "pin2": { - "compName": "WireCrossPoint#4", + "compName": "WireCrossPoint#1", "pinName": "" }, - "name": "unnamedWire#28", + "name": "unnamedWire#6", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y4" + "compName": "WireCrossPoint#12", + "pinName": "" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "D4" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I0_1" }, - "name": "unnamedWire#70", + "name": "unnamedWire#59", "path": [ { - "x": 295.0, - "y": 215.0 - }, - { - "x": 295.0, - "y": 255.0 + "x": 20.0, + "y": 245.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#8", - "pinName": "Y" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I0_4" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "_WE2" + "compName": "GUISplitter#0", + "pinName": "O3" }, - "name": "unnamedWire#72", + "name": "unnamedWire#15", "path": [ { - "x": 420.0, - "y": 90.0 - }, - { - "x": 420.0, - "y": 110.0 - }, - { - "x": 365.0, - "y": 110.0 + "x": 20.0, + "y": 155.0 }, { - "x": 365.0, - "y": 195.0 + "x": 20.0, + "y": 65.0 } ] }, { "pin1": { - "compName": "GUIdff4_finewe#0", - "pinName": "D3" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I0_2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y3" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y2" }, - "name": "unnamedWire#71", + "name": "unnamedWire#80", "path": [ { - "x": 300.0, - "y": 245.0 + "x": 210.0, + "y": 205.0 }, { - "x": 300.0, - "y": 205.0 + "x": 210.0, + "y": 75.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y1" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I1_1" + "compName": "GUIdff4_finewe#0", + "pinName": "D2" }, - "name": "unnamedWire#30", - "path": [] + "name": "unnamedWire#88", + "path": [ + { + "x": 365.0, + "y": 295.0 + }, + { + "x": 365.0, + "y": 235.0 + } + ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I1_4" + "compName": "GUISplitter#3", + "pinName": "O3" }, "pin2": { "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y4" + "pinName": "I0_4" }, - "name": "unnamedWire#74", - "path": [] + "name": "unnamedWire#62", + "path": [ + { + "x": 80.0, + "y": 325.0 + }, + { + "x": 80.0, + "y": 275.0 + } + ] }, { "pin1": { - "compName": "GUIdff4_finewe#0", - "pinName": "D1" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y1" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I0" }, - "name": "unnamedWire#73", + "name": "unnamedWire#87", "path": [ { - "x": 310.0, - "y": 225.0 + "x": 305.0, + "y": 195.0 }, { - "x": 310.0, - "y": 185.0 + "x": 305.0, + "y": 305.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y3" + "compName": "WireCrossPoint#16", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I1_3" + "compName": "WireCrossPoint#15", + "pinName": "" }, - "name": "unnamedWire#32", + "name": "unnamedWire#90", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I1_2" + "compName": "WireCrossPoint#10", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y2" + "compName": "WireCrossPoint#11", + "pinName": "" }, - "name": "unnamedWire#76", + "name": "unnamedWire#50", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", + "compName": "DeserializedSubmodelComponent#6", "pinName": "I1_2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", + "compName": "DeserializedSubmodelComponent#5", "pinName": "Y2" }, - "name": "unnamedWire#31", + "name": "unnamedWire#76", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y3" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I1_3" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I1_1" }, - "name": "unnamedWire#75", + "name": "unnamedWire#30", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#1", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I1_4" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "A1" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y4" }, - "name": "unnamedWire#34", - "path": [ - { - "x": 415.0, - "y": 380.0 - }, - { - "x": 80.0, - "y": 380.0 - }, - { - "x": 80.0, - "y": 335.0 - } - ] + "name": "unnamedWire#74", + "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I0_4" + "compName": "_submodelinterface", + "pinName": "_EC" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y4" + "compName": "DeserializedSubmodelComponent#8", + "pinName": "A" }, - "name": "unnamedWire#78", + "name": "unnamedWire#3", "path": [ { - "x": 200.0, - "y": 225.0 + "x": 155.0, + "y": 20.0 }, { - "x": 200.0, - "y": 95.0 + "x": 365.0, + "y": 20.0 + }, + { + "x": 365.0, + "y": 90.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I1_4" - }, - "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y4" - }, - "name": "unnamedWire#33", - "path": [] - }, - { - "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y1" + "compName": "GUIMerger#0", + "pinName": "I1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I1_1" + "compName": "WireCrossPoint#2", + "pinName": "" }, - "name": "unnamedWire#77", + "name": "unnamedWire#8", "path": [] } - ] + ], + "version": "0.1.1" }, "symbolRendererSnippetID": "simpleRectangularLike", "symbolRendererParams": { @@ -1891,5 +1903,6 @@ mograsim version: 0.1.3 "highLevelStateHandlerParams": { "subcomponentHighLevelStates": {}, "atomicHighLevelStates": {} - } + }, + "version": "0.1.4" } \ No newline at end of file diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/GUIAm2904RegCTInstrDecode.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/GUIAm2904RegCTInstrDecode.java index f0f1818d..dc3c4794 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/GUIAm2904RegCTInstrDecode.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/GUIAm2904RegCTInstrDecode.java @@ -47,7 +47,6 @@ public class GUIAm2904RegCTInstrDecode extends SimpleRectangularHardcodedGUIComp // 110: Swap OVR and C // 111: _M addPin(new Pin(this, "MSR_MUX", 3, 20, 0), Usage.OUTPUT, Position.BOTTOM); - // TODO when is this HIGH? addPin(new Pin(this, "OEN", 1, 60, 0), Usage.OUTPUT, Position.BOTTOM); // Y MUX: // 00: mu @@ -101,7 +100,7 @@ public class GUIAm2904RegCTInstrDecode extends SimpleRectangularHardcodedGUIComp { case 0: case 2: - readWriteEnds.get("muSR_MUX").feedSignals(ZERO, ONE); + readWriteEnds.get("muSR_MUX").feedSignals(ONE, ZERO); readWriteEnds.get("muSR_OVRRET").feedSignals(ZERO); readWriteEnds.get("muSR_CINV").feedSignals(ZERO); readWriteEnds.get("muSR_WEZ").feedSignals(ONE); @@ -110,7 +109,7 @@ public class GUIAm2904RegCTInstrDecode extends SimpleRectangularHardcodedGUIComp readWriteEnds.get("muSR_WEOVR").feedSignals(ONE); break; case 1: - readWriteEnds.get("muSR_MUX").feedSignals(ONE, ZERO); + readWriteEnds.get("muSR_MUX").feedSignals(ZERO, ONE); readWriteEnds.get("muSR_OVRRET").feedSignals(ZERO); readWriteEnds.get("muSR_CINV").feedSignals(ZERO); readWriteEnds.get("muSR_WEZ").feedSignals(ONE); @@ -147,7 +146,7 @@ public class GUIAm2904RegCTInstrDecode extends SimpleRectangularHardcodedGUIComp readWriteEnds.get("muSR_WEOVR").feedSignals(ZERO); break; case 9: - readWriteEnds.get("muSR_MUX").feedSignals(ONE, ZERO); + readWriteEnds.get("muSR_MUX").feedSignals(ZERO, ONE); readWriteEnds.get("muSR_OVRRET").feedSignals(ZERO); readWriteEnds.get("muSR_CINV").feedSignals(ZERO); readWriteEnds.get("muSR_WEZ").feedSignals(ONE); @@ -165,7 +164,7 @@ public class GUIAm2904RegCTInstrDecode extends SimpleRectangularHardcodedGUIComp readWriteEnds.get("muSR_WEOVR").feedSignals(ZERO); break; case 11: - readWriteEnds.get("muSR_MUX").feedSignals(ONE, ZERO); + readWriteEnds.get("muSR_MUX").feedSignals(ZERO, ONE); readWriteEnds.get("muSR_OVRRET").feedSignals(ZERO); readWriteEnds.get("muSR_CINV").feedSignals(ZERO); readWriteEnds.get("muSR_WEZ").feedSignals(ZERO); @@ -183,7 +182,7 @@ public class GUIAm2904RegCTInstrDecode extends SimpleRectangularHardcodedGUIComp readWriteEnds.get("muSR_WEOVR").feedSignals(ZERO); break; case 13: - readWriteEnds.get("muSR_MUX").feedSignals(ONE, ZERO); + readWriteEnds.get("muSR_MUX").feedSignals(ZERO, ONE); readWriteEnds.get("muSR_OVRRET").feedSignals(ZERO); readWriteEnds.get("muSR_CINV").feedSignals(ZERO); readWriteEnds.get("muSR_WEZ").feedSignals(ZERO); @@ -201,7 +200,7 @@ public class GUIAm2904RegCTInstrDecode extends SimpleRectangularHardcodedGUIComp readWriteEnds.get("muSR_WEOVR").feedSignals(ONE); break; case 15: - readWriteEnds.get("muSR_MUX").feedSignals(ONE, ZERO); + readWriteEnds.get("muSR_MUX").feedSignals(ZERO, ONE); readWriteEnds.get("muSR_OVRRET").feedSignals(ZERO); readWriteEnds.get("muSR_CINV").feedSignals(ZERO); readWriteEnds.get("muSR_WEZ").feedSignals(ZERO); @@ -235,10 +234,10 @@ public class GUIAm2904RegCTInstrDecode extends SimpleRectangularHardcodedGUIComp switch (IAsInt) { case 0: - readWriteEnds.get("MSR_MUX").feedSignals(ONE, ONE, ZERO); + readWriteEnds.get("MSR_MUX").feedSignals(ZERO, ONE, ONE); break; case 1: - readWriteEnds.get("MSR_MUX").feedSignals(ONE, ZERO, ZERO); + readWriteEnds.get("MSR_MUX").feedSignals(ZERO, ZERO, ONE); break; case 2: readWriteEnds.get("MSR_MUX").feedSignals(ZERO, ONE, ZERO); @@ -247,7 +246,7 @@ public class GUIAm2904RegCTInstrDecode extends SimpleRectangularHardcodedGUIComp readWriteEnds.get("MSR_MUX").feedSignals(ZERO, ZERO, ZERO); break; case 4: - readWriteEnds.get("MSR_MUX").feedSignals(ZERO, ONE, ONE); + readWriteEnds.get("MSR_MUX").feedSignals(ONE, ONE, ZERO); break; case 5: readWriteEnds.get("MSR_MUX").feedSignals(ONE, ONE, ONE); @@ -263,9 +262,10 @@ public class GUIAm2904RegCTInstrDecode extends SimpleRectangularHardcodedGUIComp readWriteEnds.get("MSR_MUX").feedSignals(ONE, ZERO, ONE); break; default: - readWriteEnds.get("MSR_MUX").feedSignals(ZERO, ZERO, ONE); + readWriteEnds.get("MSR_MUX").feedSignals(ONE, ZERO, ZERO); break; } + readWriteEnds.get("OEN").feedSignals(I5_0Bits[0].or(I5_0Bits[1]).or(I5_0Bits[2]).or(I5_0Bits[3]).or(I5_0Bits[4]).or(I5_0Bits[5])); readWriteEnds.get("Y_MUX").feedSignals(I5_0Bits[0], I5_0Bits[1]); readWriteEnds.get("CT_INV").feedSignals(I5_0Bits[5]); readWriteEnds.get("CT_MUX").feedSignals(I5_0Bits[2], I5_0Bits[3], I5_0Bits[4]); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/GUIAm2904ShiftInstrDecode.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/GUIAm2904ShiftInstrDecode.java index 0b990db3..51b6da0e 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/GUIAm2904ShiftInstrDecode.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/GUIAm2904ShiftInstrDecode.java @@ -3,6 +3,7 @@ package net.mograsim.logic.model.am2900.components.am2904; import static net.mograsim.logic.core.types.Bit.ONE; import static net.mograsim.logic.core.types.Bit.U; import static net.mograsim.logic.core.types.Bit.X; +import static net.mograsim.logic.core.types.Bit.Z; import static net.mograsim.logic.core.types.Bit.ZERO; import java.util.Map; @@ -21,8 +22,9 @@ public class GUIAm2904ShiftInstrDecode extends SimpleRectangularHardcodedGUIComp public GUIAm2904ShiftInstrDecode(ViewModelModifiable model, String name) { super(model, name, "Shift \ninstruction\ndecode"); - setSize(60, 70); - addPin(new Pin(this, "I", 5, 0, 35), Usage.INPUT, Position.RIGHT); + setSize(60, 80); + addPin(new Pin(this, "I", 5, 0, 25), Usage.INPUT, Position.RIGHT); + addPin(new Pin(this, "_SE", 1, 0, 55), Usage.INPUT, Position.RIGHT); // SIO0 MUX: // 000: 0 // 001: 1 @@ -54,19 +56,51 @@ public class GUIAm2904ShiftInstrDecode extends SimpleRectangularHardcodedGUIComp // 10x: QIO0 // 11x: MN addPin(new Pin(this, "QIOn_MUX", 3, 60, 35), Usage.OUTPUT, Position.LEFT); - addPin(new Pin(this, "LSHIFT", 1, 60, 45), Usage.OUTPUT, Position.LEFT); + addPin(new Pin(this, "OEn", 1, 60, 45), Usage.OUTPUT, Position.LEFT); + addPin(new Pin(this, "OE0", 1, 60, 55), Usage.OUTPUT, Position.LEFT); // 00: SIO0 // 01: QIO0 // 1x: SIOn - addPin(new Pin(this, "MC_MUX", 2, 60, 55), Usage.OUTPUT, Position.LEFT); - addPin(new Pin(this, "MC_EN", 1, 60, 65), Usage.OUTPUT, Position.LEFT); + addPin(new Pin(this, "MC_MUX", 2, 60, 65), Usage.OUTPUT, Position.LEFT); + addPin(new Pin(this, "MC_EN", 1, 60, 75), Usage.OUTPUT, Position.LEFT); } @Override protected Object recalculate(Object lastState, Map readEnds, Map readWriteEnds) { + Bit _SE = readEnds.get("_SE").getValue(); Bit[] IBits = readEnds.get("I").getValues().getBits(); - readWriteEnds.get("LSHIFT").feedSignals(IBits[0]); + readWriteEnds.get("OEn").feedSignals(IBits[0].not().and(_SE.not())); + readWriteEnds.get("OE0").feedSignals(IBits[0].and(_SE.not())); + if (_SE == Z || _SE == X) + { + readWriteEnds.get("SIO0_MUX").feedSignals(X, X, X); + readWriteEnds.get("SIOn_MUX").feedSignals(X, X, X); + readWriteEnds.get("QIO0_MUX").feedSignals(X, X, X); + readWriteEnds.get("QIOn_MUX").feedSignals(X, X, X); + readWriteEnds.get("MC_MUX").feedSignals(X, X); + readWriteEnds.get("MC_EN").feedSignals(X); + return null; + } else if (_SE == U) + { + + readWriteEnds.get("SIO0_MUX").feedSignals(U, U, U); + readWriteEnds.get("SIOn_MUX").feedSignals(U, U, U); + readWriteEnds.get("QIO0_MUX").feedSignals(U, U, U); + readWriteEnds.get("QIOn_MUX").feedSignals(U, U, U); + readWriteEnds.get("MC_MUX").feedSignals(U, U); + readWriteEnds.get("MC_EN").feedSignals(U); + return null; + } else if (_SE == ONE) + { + readWriteEnds.get("SIO0_MUX").feedSignals(X, X, X); + readWriteEnds.get("SIOn_MUX").feedSignals(X, X, X); + readWriteEnds.get("QIO0_MUX").feedSignals(X, X, X); + readWriteEnds.get("QIOn_MUX").feedSignals(X, X, X); + readWriteEnds.get("MC_MUX").feedSignals(X, X); + readWriteEnds.get("MC_EN").feedSignals(ZERO); + return null; + } // TODO move the following loop to BitVector. int IAsInt = 0; for (int i = 0; i < 5; i++) diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/Am2904Testbench.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/Am2904Testbench.java new file mode 100644 index 00000000..a4c4290a --- /dev/null +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/Am2904Testbench.java @@ -0,0 +1,58 @@ +package net.mograsim.logic.model.examples; + +import net.haspamelodica.swt.helper.gcs.GeneralGC; +import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; +import net.mograsim.logic.core.types.Bit; +import net.mograsim.logic.core.types.BitVector; +import net.mograsim.logic.model.SimpleLogicUIStandalone; +import net.mograsim.logic.model.SimpleLogicUIStandalone.VisualisationObjects; +import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.components.atomic.GUIManualSwitch; +import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; +import net.mograsim.logic.model.serializing.DeserializedSubmodelComponent; +import net.mograsim.logic.model.serializing.IdentifierGetter; +import net.mograsim.logic.model.serializing.IndirectGUIComponentCreator; +import net.mograsim.logic.model.snippets.Renderer; + +public class Am2904Testbench +{ + public static void main(String[] args) + { + SimpleLogicUIStandalone.executeVisualisation(Am2904Testbench::create, Am2904Testbench::beforeRun); + } + + public static void create(ViewModelModifiable model) + { + // TODO use _SE in GUIAm2904.json + // TODO replace with proper ViewModel deserialization + DeserializedSubmodelComponent testbench = (DeserializedSubmodelComponent) IndirectGUIComponentCreator.createComponent(model, + "file:GUIAm2904Testbench.json", "testbench"); + testbench.setSize(1000, 1000); + testbench.setOutlineRenderer(new Renderer() + { + @Override + public Object getParamsForSerializing(IdentifierGetter idGetter) + { + return null; + } + + @Override + public void render(GeneralGC gc, Rectangle visibleRegion) + { + // do nothing + } + }); + } + + public static void beforeRun(VisualisationObjects vis) + { + ((SubmodelComponent) vis.model.getComponentsByName().get("testbench")).submodel.getComponentsByName().values().forEach(c -> + { + if (c instanceof GUIManualSwitch) + { + GUIManualSwitch cCasted = (GUIManualSwitch) c; + cCasted.setHighLevelState("out", BitVector.of(Bit.ZERO, cCasted.logicWidth)); + } + }); + } +} \ No newline at end of file diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/Am2910Testbench.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/Am2910Testbench.java index a9ecc036..132b9135 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/Am2910Testbench.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/Am2910Testbench.java @@ -1,7 +1,10 @@ package net.mograsim.logic.model.examples; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; +import net.mograsim.logic.core.types.Bit; +import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.model.SimpleLogicUIStandalone; +import net.mograsim.logic.model.SimpleLogicUIStandalone.VisualisationObjects; import net.mograsim.logic.model.model.ViewModelModifiable; import net.mograsim.logic.model.model.components.GUIComponent; import net.mograsim.logic.model.model.components.atomic.GUIBitDisplay; @@ -13,7 +16,7 @@ public class Am2910Testbench { public static void main(String[] args) { - SimpleLogicUIStandalone.executeVisualisation(Am2910Testbench::create); + SimpleLogicUIStandalone.executeVisualisation(Am2910Testbench::create, Am2910Testbench::beforeRun); } @SuppressWarnings("unused") // for GUIWires being created @@ -62,4 +65,16 @@ public class Am2910Testbench new GUIWire(model, am2910.getPin("Y"), Y.getInputPin(), new Point(38, 72.5)); new GUIWire(model, am2910.getPin("_OE"), _OE.getOutputPin()); } + + public static void beforeRun(VisualisationObjects vis) + { + vis.model.getComponentsByName().values().forEach(c -> + { + if (c instanceof GUIManualSwitch) + { + GUIManualSwitch cCasted = (GUIManualSwitch) c; + cCasted.setHighLevelState("out", BitVector.of(Bit.ZERO, cCasted.logicWidth)); + } + }); + } } \ No newline at end of file diff --git a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2901/Am2901Testbench.java b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2901/Am2901Testbench.java index 3a7ffa22..b54713e8 100644 --- a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2901/Am2901Testbench.java +++ b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2901/Am2901Testbench.java @@ -4,7 +4,10 @@ import java.util.ArrayList; import java.util.Comparator; import java.util.List; +import net.mograsim.logic.core.types.Bit; +import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.model.SimpleLogicUIStandalone; +import net.mograsim.logic.model.SimpleLogicUIStandalone.VisualisationObjects; import net.mograsim.logic.model.model.ViewModelModifiable; import net.mograsim.logic.model.model.components.GUIComponent; import net.mograsim.logic.model.model.components.atomic.GUIAndGate; @@ -12,6 +15,7 @@ import net.mograsim.logic.model.model.components.atomic.GUIBitDisplay; import net.mograsim.logic.model.model.components.atomic.GUIManualSwitch; import net.mograsim.logic.model.model.components.atomic.GUINotGate; import net.mograsim.logic.model.model.components.atomic.TextComponent; +import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.WireCrossPoint; import net.mograsim.logic.model.serializing.IndirectGUIComponentCreator; @@ -21,7 +25,7 @@ public class Am2901Testbench { public static void main(String[] args) { - SimpleLogicUIStandalone.executeVisualisation(Am2901Testbench::createTestbench); + SimpleLogicUIStandalone.executeVisualisation(Am2901Testbench::createTestbench, Am2901Testbench::beforeRun); } public static void createTestbench(ViewModelModifiable model) @@ -99,4 +103,16 @@ public class Am2901Testbench label.moveTo(x + 25, y); } } + + public static void beforeRun(VisualisationObjects vis) + { + ((SubmodelComponent) vis.model.getComponentsByName().get("testbench")).submodel.getComponentsByName().values().forEach(c -> + { + if (c instanceof GUIManualSwitch) + { + GUIManualSwitch cCasted = (GUIManualSwitch) c; + cCasted.setHighLevelState("out", BitVector.of(Bit.ZERO, cCasted.logicWidth)); + } + }); + } } \ No newline at end of file diff --git a/net.mograsim.logic.model.editor/components/am2904/GUIAm2904.json b/net.mograsim.logic.model.editor/components/am2904/GUIAm2904.json index 318840bb..dd1723b0 100644 --- a/net.mograsim.logic.model.editor/components/am2904/GUIAm2904.json +++ b/net.mograsim.logic.model.editor/components/am2904/GUIAm2904.json @@ -1,4 +1,3 @@ -mograsim version: 0.1.3 { "width": 120.0, "height": 178.0, @@ -19,14 +18,6 @@ mograsim version: 0.1.3 "name": "_CEM", "logicWidth": 1 }, - { - "location": { - "x": 120.0, - "y": 11.0 - }, - "name": "YZ", - "logicWidth": 1 - }, { "location": { "x": 0.0, @@ -35,22 +26,6 @@ mograsim version: 0.1.3 "name": "C", "logicWidth": 1 }, - { - "location": { - "x": 0.0, - "y": 20.0 - }, - "name": "IN", - "logicWidth": 1 - }, - { - "location": { - "x": 61.0, - "y": 0.0 - }, - "name": "_OEY", - "logicWidth": 1 - }, { "location": { "x": 0.0, @@ -85,82 +60,130 @@ mograsim version: 0.1.3 }, { "location": { - "x": 120.0, - "y": 118.0 + "x": 0.0, + "y": 36.0 }, - "name": "SIO0", + "name": "_EZ", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 10.0 + "y": 110.0 }, - "name": "IZ", + "name": "Cx", "logicWidth": 1 }, { "location": { "x": 120.0, - "y": 60.0 + "y": 21.0 }, - "name": "CT", + "name": "YN", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 128.0 + "y": 15.0 }, - "name": "QIOn", + "name": "IC", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 119.0 + "y": 42.0 }, - "name": "SIOn", + "name": "_EOVR", + "logicWidth": 1 + }, + { + "location": { + "x": 120.0, + "y": 11.0 + }, + "name": "YZ", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 33.0 + "y": 20.0 }, - "name": "_CEmu", + "name": "IN", + "logicWidth": 1 + }, + { + "location": { + "x": 61.0, + "y": 0.0 + }, + "name": "_OEY", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 36.0 + "y": 83.0 }, - "name": "_EZ", + "name": "_SE", + "logicWidth": 1 + }, + { + "location": { + "x": 120.0, + "y": 118.0 + }, + "name": "SIO0", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 110.0 + "y": 10.0 }, - "name": "Cx", + "name": "IZ", "logicWidth": 1 }, { "location": { "x": 120.0, - "y": 21.0 + "y": 60.0 }, - "name": "YN", + "name": "CT", "logicWidth": 1 }, { "location": { "x": 0.0, - "y": 15.0 + "y": 128.0 }, - "name": "IC", + "name": "QIOn", + "logicWidth": 1 + }, + { + "location": { + "x": 0.0, + "y": 119.0 + }, + "name": "SIOn", + "logicWidth": 1 + }, + { + "location": { + "x": 0.0, + "y": 33.0 + }, + "name": "_CEmu", + "logicWidth": 1 + }, + { + "location": { + "x": 120.0, + "y": 51.0 + }, + "name": "_OECT", "logicWidth": 1 }, { @@ -186,27 +209,44 @@ mograsim version: 0.1.3 }, "name": "_EC", "logicWidth": 1 - }, - { - "location": { - "x": 0.0, - "y": 42.0 - }, - "name": "_EOVR", - "logicWidth": 1 } ], + "innerScale": 0.2, "submodel": { - "innerScale": 0.2, - "subComps": [ + "components": [ { - "id": "WireCrossPoint", - "name": "WireCrossPoint#14", + "id": "GUINandGate", + "name": "GUINandGate#1", "pos": { - "x": 520.0, - "y": 190.0 + "x": 130.0, + "y": 5.0 }, - "params": 4 + "params": 1 + }, + { + "id": "GUINandGate", + "name": "GUINandGate#10", + "pos": { + "x": 340.0, + "y": 120.0 + }, + "params": 1 + }, + { + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#21", + "pos": { + "x": 250.0, + "y": 820.0 + } + }, + { + "id": "GUImux2", + "name": "DeserializedSubmodelComponent#15", + "pos": { + "x": 435.0, + "y": 575.0 + } }, { "id": "WireCrossPoint", @@ -219,21 +259,21 @@ mograsim version: 0.1.3 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#16", + "name": "WireCrossPoint#27", "pos": { - "x": 255.0, - "y": 255.0 + "x": 440.0, + "y": 385.0 }, - "params": 4 + "params": 1 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#15", + "name": "WireCrossPoint#6", "pos": { - "x": 255.0, - "y": 265.0 + "x": 120.0, + "y": 15.0 }, - "params": 4 + "params": 1 }, { "id": "WireCrossPoint", @@ -245,149 +285,123 @@ mograsim version: 0.1.3 "params": 1 }, { - "id": "GUITriStateBuffer", - "name": "GUITriStateBuffer#4", + "id": "GUIAm2904ShiftInstrDecode", + "name": "GUIAm2904ShiftInstrDecode#0", "pos": { - "x": 565.0, - "y": 655.0 - }, - "params": { - "logicWidth": 1, - "orientation": "RIGHT" + "x": 50.0, + "y": 360.0 } }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#17", - "pos": { - "x": 360.0, - "y": 495.0 - }, - "params": 1 - }, - { - "id": "GUITriStateBuffer", - "name": "GUITriStateBuffer#2", + "id": "GUISplitter", + "name": "GUISplitter#6", "pos": { - "x": 10.0, - "y": 605.0 + "x": 285.0, + "y": 320.0 }, - "params": { - "logicWidth": 1, - "orientation": "RIGHT" - } + "params": 3 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#19", + "name": "WireCrossPoint#12", "pos": { - "x": 35.0, - "y": 595.0 + "x": 195.0, + "y": 35.0 }, "params": 1 }, { - "id": "GUITriStateBuffer", - "name": "GUITriStateBuffer#3", + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#12", "pos": { - "x": 560.0, - "y": 595.0 - }, - "params": { - "logicWidth": 1, - "orientation": "RIGHT" + "x": 315.0, + "y": 505.0 } }, { - "id": "GUITriStateBuffer", - "name": "GUITriStateBuffer#0", + "id": "GUIAm2904TestLogic", + "name": "DeserializedSubmodelComponent#6", "pos": { - "x": 530.0, - "y": 170.0 - }, - "params": { - "logicWidth": 4, - "orientation": "RIGHT" + "x": 225.0, + "y": 340.0 } }, { - "id": "GUITriStateBuffer", - "name": "GUITriStateBuffer#1", + "id": "GUImux3", + "name": "DeserializedSubmodelComponent#7", "pos": { - "x": 10.0, - "y": 650.0 - }, - "params": { - "logicWidth": 1, - "orientation": "RIGHT" + "x": 300.0, + "y": 310.0 } }, { - "id": "GUIAm2904muSR", - "name": "DeserializedSubmodelComponent#1", + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#0", "pos": { - "x": 270.0, - "y": 250.0 - } + "x": 530.0, + "y": 70.0 + }, + "params": 4 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#10", + "name": "WireCrossPoint#22", "pos": { - "x": 195.0, - "y": 55.0 + "x": 250.0, + "y": 540.0 }, "params": 1 }, { - "id": "GUIAm2904MSR", - "name": "DeserializedSubmodelComponent#0", + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#14", "pos": { - "x": 225.0, - "y": 95.0 + "x": 415.0, + "y": 465.0 } }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#12", + "id": "GUINandGate", + "name": "GUINandGate#7", "pos": { - "x": 195.0, - "y": 35.0 + "x": 205.0, + "y": 50.0 }, "params": 1 }, { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#3", + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#17", "pos": { - "x": 470.0, - "y": 160.0 + "x": 190.0, + "y": 460.0 } }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#11", + "id": "GUISplitter", + "name": "GUISplitter#11", "pos": { - "x": 195.0, - "y": 15.0 + "x": 405.0, + "y": 575.0 }, - "params": 1 + "params": 3 }, { - "id": "GUIand", - "name": "DeserializedSubmodelComponent#2", + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#10", "pos": { - "x": 370.0, - "y": 130.0 + "x": 455.0, + "y": 355.0 } }, { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#5", + "id": "WireCrossPoint", + "name": "WireCrossPoint#4", "pos": { - "x": 415.0, - "y": 210.0 - } + "x": 150.0, + "y": 160.0 + }, + "params": 1 }, { "id": "GUInot4", @@ -398,97 +412,123 @@ mograsim version: 0.1.3 } }, { - "id": "GUIMerger", - "name": "GUIMerger#4", + "id": "WireCrossPoint", + "name": "WireCrossPoint#30", "pos": { - "x": 25.0, - "y": 355.0 + "x": 550.0, + "y": 570.0 }, - "params": 2 + "params": 1 }, { - "id": "GUIMerger", - "name": "GUIMerger#3", + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#2", "pos": { - "x": 510.0, - "y": 165.0 + "x": 10.0, + "y": 605.0 }, - "params": 4 + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } }, { - "id": "GUImux3", - "name": "DeserializedSubmodelComponent#7", + "id": "GUIAm2904muSR", + "name": "DeserializedSubmodelComponent#1", "pos": { - "x": 300.0, - "y": 310.0 + "x": 270.0, + "y": 250.0 } }, { - "id": "GUIMerger", - "name": "GUIMerger#2", + "id": "GUISplitter", + "name": "GUISplitter#7", "pos": { - "x": 15.0, - "y": 65.0 + "x": 420.0, + "y": 325.0 }, "params": 4 }, { - "id": "GUIAm2904TestLogic", - "name": "DeserializedSubmodelComponent#6", + "id": "WireCrossPoint", + "name": "WireCrossPoint#15", "pos": { - "x": 225.0, - "y": 340.0 + "x": 255.0, + "y": 265.0 + }, + "params": 4 + }, + { + "id": "GUIAm2904RegCTInstrDecode", + "name": "GUIAm2904RegCTInstrDecode#0", + "pos": { + "x": 50.0, + "y": 240.0 } }, { "id": "GUIMerger", - "name": "GUIMerger#1", + "name": "GUIMerger#3", "pos": { - "x": 25.0, - "y": 305.0 + "x": 510.0, + "y": 165.0 }, - "params": 5 + "params": 4 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#9", + "id": "GUISplitter", + "name": "GUISplitter#10", "pos": { - "x": 480.0, - "y": 305.0 - } + "x": 420.0, + "y": 410.0 + }, + "params": 4 }, { - "id": "GUIMerger", - "name": "GUIMerger#0", + "id": "WireCrossPoint", + "name": "WireCrossPoint#33", "pos": { - "x": 25.0, - "y": 245.0 + "x": 530.0, + "y": 270.0 }, - "params": 6 + "params": 1 }, { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#8", + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#3", "pos": { - "x": 540.0, - "y": 295.0 + "x": 560.0, + "y": 595.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" } }, { - "id": "GUINandGate", - "name": "GUINandGate#9", + "id": "WireCrossPoint", + "name": "WireCrossPoint#11", "pos": { - "x": 205.0, - "y": 10.0 + "x": 195.0, + "y": 15.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#8", + "id": "GUISplitter", + "name": "GUISplitter#0", "pos": { - "x": 205.0, - "y": 30.0 + "x": 10.0, + "y": 245.0 + }, + "params": 13 + }, + { + "id": "WireCrossPoint", + "name": "WireCrossPoint#7", + "pos": { + "x": 215.0, + "y": 180.0 }, "params": 1 }, @@ -502,296 +542,318 @@ mograsim version: 0.1.3 "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#4", + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#1", "pos": { - "x": 225.0, - "y": 155.0 + "x": 565.0, + "y": 180.0 }, - "params": 1 + "params": 4 }, { - "id": "GUINandGate", - "name": "GUINandGate#7", + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#2", "pos": { - "x": 205.0, - "y": 50.0 + "x": 530.0, + "y": 200.0 }, - "params": 1 + "params": 4 }, { - "id": "GUINandGate", - "name": "GUINandGate#6", + "id": "WireCrossPoint", + "name": "WireCrossPoint#21", "pos": { - "x": 205.0, - "y": 70.0 + "x": 585.0, + "y": 640.0 }, "params": 1 }, { - "id": "GUImux3", - "name": "DeserializedSubmodelComponent#23", + "id": "WireCrossPoint", + "name": "WireCrossPoint#16", "pos": { - "x": 300.0, - "y": 715.0 + "x": 255.0, + "y": 255.0 + }, + "params": 4 + }, + { + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#5", + "pos": { + "x": 560.0, + "y": 290.0 + }, + "params": { + "logicWidth": 1, + "orientation": "RIGHT" } }, { - "id": "GUImux2", - "name": "DeserializedSubmodelComponent#22", + "id": "GUISplitter", + "name": "GUISplitter#14", "pos": { - "x": 120.0, + "x": 90.0, "y": 720.0 - } + }, + "params": 3 }, { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#21", + "id": "GUISplitter", + "name": "GUISplitter#1", "pos": { - "x": 250.0, - "y": 820.0 - } + "x": 555.0, + "y": 80.0 + }, + "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#30", + "id": "GUINandGate", + "name": "GUINandGate#2", "pos": { - "x": 550.0, - "y": 570.0 + "x": 225.0, + "y": 195.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#32", + "id": "GUISplitter", + "name": "GUISplitter#3", "pos": { - "x": 85.0, - "y": 590.0 + "x": 450.0, + "y": 175.0 }, - "params": 1 + "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#31", + "id": "GUINandGate", + "name": "GUINandGate#0", "pos": { - "x": 120.0, - "y": 545.0 + "x": 190.0, + "y": 145.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#25", + "id": "GUISplitter", + "name": "GUISplitter#9", "pos": { - "x": 285.0, - "y": 755.0 + "x": 240.0, + "y": 475.0 }, - "params": 1 + "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#24", + "id": "GUISplitter", + "name": "GUISplitter#13", "pos": { - "x": 285.0, + "x": 265.0, "y": 725.0 }, - "params": 1 + "params": 3 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#27", + "id": "GUIMerger", + "name": "GUIMerger#2", "pos": { - "x": 470.0, - "y": 385.0 + "x": 15.0, + "y": 65.0 }, - "params": 1 + "params": 4 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#26", + "name": "WireCrossPoint#24", "pos": { - "x": 290.0, - "y": 805.0 + "x": 285.0, + "y": 725.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#29", + "id": "GUIAm2904MSR", + "name": "DeserializedSubmodelComponent#0", + "pos": { + "x": 225.0, + "y": 95.0 + } + }, + { + "id": "GUISplitter", + "name": "GUISplitter#8", "pos": { - "x": 45.0, - "y": 580.0 + "x": 420.0, + "y": 365.0 }, - "params": 1 + "params": 4 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#28", + "name": "WireCrossPoint#8", "pos": { - "x": 470.0, - "y": 350.0 + "x": 215.0, + "y": 160.0 }, "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#14", + "id": "GUImux3", + "name": "DeserializedSubmodelComponent#23", "pos": { - "x": 90.0, - "y": 720.0 - }, - "params": 3 + "x": 300.0, + "y": 715.0 + } }, { - "id": "GUISplitter", - "name": "GUISplitter#15", + "id": "GUIMerger", + "name": "GUIMerger#4", "pos": { - "x": 120.0, - "y": 455.0 + "x": 25.0, + "y": 355.0 }, "params": 2 }, { - "id": "GUISplitter", - "name": "GUISplitter#12", + "id": "WireCrossPoint", + "name": "WireCrossPoint#3", "pos": { - "x": 405.0, - "y": 655.0 + "x": 335.0, + "y": 270.0 }, - "params": 3 + "params": 4 }, { - "id": "GUISplitter", - "name": "GUISplitter#13", + "id": "GUIMerger", + "name": "GUIMerger#0", "pos": { - "x": 265.0, - "y": 725.0 + "x": 25.0, + "y": 245.0 }, - "params": 3 + "params": 6 }, { - "id": "GUISplitter", - "name": "GUISplitter#10", + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#9", "pos": { - "x": 445.0, - "y": 410.0 - }, - "params": 4 + "x": 450.0, + "y": 310.0 + } }, { - "id": "GUISplitter", - "name": "GUISplitter#11", + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#1", "pos": { - "x": 405.0, - "y": 575.0 + "x": 10.0, + "y": 650.0 }, - "params": 3 + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#21", + "name": "WireCrossPoint#5", "pos": { - "x": 585.0, - "y": 640.0 + "x": 530.0, + "y": 100.0 }, - "params": 1 + "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#20", + "id": "GUINandGate", + "name": "GUINandGate#4", "pos": { - "x": 585.0, - "y": 590.0 + "x": 225.0, + "y": 155.0 }, "params": 1 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#23", + "name": "WireCrossPoint#2", "pos": { - "x": 330.0, - "y": 640.0 + "x": 295.0, + "y": 120.0 }, - "params": 1 + "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#22", + "id": "GUISplitter", + "name": "GUISplitter#2", "pos": { - "x": 250.0, - "y": 540.0 + "x": 395.0, + "y": 195.0 }, - "params": 1 + "params": 2 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#1", + "id": "GUISplitter", + "name": "GUISplitter#5", "pos": { - "x": 180.0, - "y": 135.0 + "x": 395.0, + "y": 265.0 }, "params": 4 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#0", + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#3", "pos": { - "x": 165.0, - "y": 150.0 - }, - "params": 1 + "x": 470.0, + "y": 160.0 + } }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#3", + "id": "GUImux2", + "name": "DeserializedSubmodelComponent#16", "pos": { - "x": 335.0, - "y": 270.0 - }, - "params": 4 + "x": 435.0, + "y": 655.0 + } }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#2", + "name": "WireCrossPoint#28", "pos": { - "x": 295.0, - "y": 120.0 + "x": 440.0, + "y": 345.0 }, - "params": 4 + "params": 1 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#5", + "name": "WireCrossPoint#17", "pos": { - "x": 530.0, - "y": 100.0 + "x": 360.0, + "y": 495.0 }, - "params": 4 + "params": 1 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#4", + "name": "WireCrossPoint#26", "pos": { - "x": 150.0, - "y": 160.0 + "x": 290.0, + "y": 805.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#7", + "id": "GUISplitter", + "name": "GUISplitter#15", "pos": { - "x": 215.0, - "y": 180.0 + "x": 120.0, + "y": 455.0 }, - "params": 1 + "params": 2 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#6", + "name": "WireCrossPoint#0", "pos": { - "x": 120.0, - "y": 15.0 + "x": 165.0, + "y": 150.0 }, "params": 1 }, @@ -805,354 +867,427 @@ mograsim version: 0.1.3 "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#8", + "id": "GUINandGate", + "name": "GUINandGate#8", "pos": { - "x": 215.0, - "y": 160.0 + "x": 205.0, + "y": 30.0 }, "params": 1 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#18", + "id": "GUISplitter", + "name": "GUISplitter#4", "pos": { - "x": 135.0, - "y": 470.0 - } + "x": 395.0, + "y": 225.0 + }, + "params": 4 }, { "id": "GUImux1", - "name": "DeserializedSubmodelComponent#17", + "name": "DeserializedSubmodelComponent#11", "pos": { - "x": 190.0, - "y": 460.0 + "x": 265.0, + "y": 515.0 } }, { - "id": "GUImux2", - "name": "DeserializedSubmodelComponent#16", + "id": "GUIBitDisplay", + "name": "GUIBitDisplay#3", "pos": { - "x": 435.0, - "y": 655.0 - } + "x": 560.0, + "y": 150.0 + }, + "params": 1 }, { - "id": "GUImux2", - "name": "DeserializedSubmodelComponent#15", + "id": "GUINandGate", + "name": "GUINandGate#3", "pos": { - "x": 435.0, - "y": 575.0 - } + "x": 225.0, + "y": 215.0 + }, + "params": 1 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#14", + "id": "WireCrossPoint", + "name": "WireCrossPoint#19", "pos": { - "x": 415.0, - "y": 465.0 - } + "x": 35.0, + "y": 595.0 + }, + "params": 1 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#13", + "id": "WireCrossPoint", + "name": "WireCrossPoint#14", "pos": { - "x": 365.0, - "y": 485.0 - } + "x": 520.0, + "y": 190.0 + }, + "params": 4 }, { "id": "GUINandGate", - "name": "GUINandGate#11", + "name": "GUINandGate#9", "pos": { - "x": 60.0, - "y": 570.0 + "x": 205.0, + "y": 10.0 }, "params": 1 }, { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#12", + "id": "GUIand", + "name": "DeserializedSubmodelComponent#2", "pos": { - "x": 315.0, - "y": 505.0 + "x": 380.0, + "y": 125.0 } }, { "id": "GUImux1", - "name": "DeserializedSubmodelComponent#11", + "name": "DeserializedSubmodelComponent#13", "pos": { - "x": 265.0, - "y": 515.0 + "x": 365.0, + "y": 485.0 } }, { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#10", + "id": "WireCrossPoint", + "name": "WireCrossPoint#25", "pos": { - "x": 500.0, - "y": 360.0 - } + "x": 285.0, + "y": 755.0 + }, + "params": 1 }, { "id": "GUINandGate", - "name": "GUINandGate#10", + "name": "GUINandGate#12", "pos": { - "x": 340.0, - "y": 120.0 + "x": 540.0, + "y": 265.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#1", + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#4", "pos": { - "x": 130.0, - "y": 5.0 + "x": 565.0, + "y": 655.0 }, - "params": 1 + "params": { + "logicWidth": 1, + "orientation": "RIGHT" + } }, { - "id": "GUINandGate", - "name": "GUINandGate#0", + "id": "WireCrossPoint", + "name": "WireCrossPoint#20", "pos": { - "x": 190.0, - "y": 145.0 + "x": 585.0, + "y": 590.0 }, "params": 1 }, { "id": "GUINandGate", - "name": "GUINandGate#3", + "name": "GUINandGate#6", "pos": { - "x": 225.0, - "y": 215.0 + "x": 205.0, + "y": 70.0 }, "params": 1 }, { - "id": "GUINandGate", - "name": "GUINandGate#2", + "id": "WireCrossPoint", + "name": "WireCrossPoint#10", "pos": { - "x": 225.0, - "y": 195.0 + "x": 195.0, + "y": 55.0 }, "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#9", + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#8", "pos": { - "x": 240.0, - "y": 475.0 - }, - "params": 4 + "x": 495.0, + "y": 295.0 + } }, { - "id": "GUISplitter", - "name": "GUISplitter#4", + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#18", "pos": { - "x": 395.0, - "y": 225.0 - }, - "params": 4 + "x": 135.0, + "y": 470.0 + } }, { - "id": "GUISplitter", - "name": "GUISplitter#3", + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#5", "pos": { - "x": 450.0, - "y": 175.0 - }, - "params": 4 + "x": 415.0, + "y": 210.0 + } }, { "id": "GUISplitter", - "name": "GUISplitter#2", + "name": "GUISplitter#12", "pos": { - "x": 395.0, - "y": 195.0 + "x": 405.0, + "y": 655.0 }, - "params": 2 + "params": 3 }, { - "id": "GUISplitter", - "name": "GUISplitter#1", + "id": "WireCrossPoint", + "name": "WireCrossPoint#1", "pos": { - "x": 555.0, - "y": 80.0 + "x": 180.0, + "y": 135.0 }, "params": 4 }, { - "id": "GUISplitter", - "name": "GUISplitter#8", + "id": "GUImux2", + "name": "DeserializedSubmodelComponent#22", "pos": { - "x": 445.0, - "y": 370.0 - }, - "params": 4 + "x": 120.0, + "y": 720.0 + } }, { - "id": "GUISplitter", - "name": "GUISplitter#7", + "id": "GUITriStateBuffer", + "name": "GUITriStateBuffer#0", "pos": { - "x": 445.0, - "y": 330.0 + "x": 535.0, + "y": 165.0 }, - "params": 4 + "params": { + "logicWidth": 4, + "orientation": "RIGHT" + } }, { - "id": "GUISplitter", - "name": "GUISplitter#6", + "id": "GUIMerger", + "name": "GUIMerger#1", "pos": { - "x": 285.0, - "y": 320.0 + "x": 25.0, + "y": 305.0 }, - "params": 3 + "params": 5 }, { - "id": "GUISplitter", - "name": "GUISplitter#5", + "id": "WireCrossPoint", + "name": "WireCrossPoint#32", "pos": { - "x": 395.0, - "y": 265.0 + "x": 85.0, + "y": 590.0 }, - "params": 4 + "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#0", + "id": "WireCrossPoint", + "name": "WireCrossPoint#23", "pos": { - "x": 10.0, - "y": 245.0 + "x": 330.0, + "y": 640.0 + }, + "params": 1 + } + ], + "wires": [ + { + "pin1": { + "compName": "GUISplitter#3", + "pinName": "O3" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I0_4" + }, + "name": "unnamedWire#100", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#22", + "pinName": "" + }, + "pin2": { + "compName": "GUISplitter#8", + "pinName": "O1" + }, + "name": "unnamedWire#172", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#19", + "pinName": "" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#15", + "pinName": "I01" + }, + "name": "unnamedWire#170", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#32", + "pinName": "" + }, + "pin2": { + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "OEn" + }, + "name": "unnamedWire#202", + "path": [] + }, + { + "pin1": { + "compName": "GUISplitter#4", + "pinName": "O1" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I0_2" }, - "params": 13 + "name": "unnamedWire#103", + "path": [] }, { - "id": "GUIAm2904RegCTInstrDecode", - "name": "GUIAm2904RegCTInstrDecode#0", - "pos": { - "x": 50.0, - "y": 240.0 - } + "pin1": { + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y010" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I010" + }, + "name": "unnamedWire#119", + "path": [] }, - { - "id": "GUIAm2904ShiftInstrDecode", - "name": "GUIAm2904ShiftInstrDecode#0", - "pos": { - "x": 50.0, - "y": 360.0 - } - } - ], - "innerWires": [ { "pin1": { - "compName": "GUISplitter#13", - "pinName": "O1" + "compName": "_submodelinterface", + "pinName": "YOVR" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "S1" + "compName": "GUISplitter#1", + "pinName": "O3" }, - "name": "unnamedWire#190", + "name": "unnamedWire#52", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I010" + "compName": "GUIMerger#0", + "pinName": "I3" }, "pin2": { - "compName": "WireCrossPoint#20", - "pinName": "" + "compName": "GUISplitter#0", + "pinName": "O3" }, - "name": "unnamedWire#191", + "name": "unnamedWire#7", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#21", + "compName": "GUINandGate#2", "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I111" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "_EN" }, - "name": "unnamedWire#194", + "name": "unnamedWire#44", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#27", - "pinName": "" + "compName": "GUINandGate#10", + "pinName": "B" }, "pin2": { - "compName": "WireCrossPoint#26", + "compName": "WireCrossPoint#13", "pinName": "" }, - "name": "unnamedWire#195", + "name": "unnamedWire#81", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#21", - "pinName": "" + "compName": "GUIMerger#4", + "pinName": "I1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I011" + "compName": "GUISplitter#0", + "pinName": "O12" }, - "name": "unnamedWire#192", + "name": "unnamedWire#140", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I100" + "compName": "GUITriStateBuffer#5", + "pinName": "OUT" }, "pin2": { - "compName": "WireCrossPoint#23", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "CT" }, - "name": "unnamedWire#193", + "name": "unnamedWire#236", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "I10" + "compName": "_submodelinterface", + "pinName": "IN" }, "pin2": { - "compName": "WireCrossPoint#21", - "pinName": "" + "compName": "GUIMerger#2", + "pinName": "I2" }, - "name": "unnamedWire#198", - "path": [] + "name": "unnamedWire#18", + "path": [ + { + "x": 5.0, + "y": 100.0 + }, + { + "x": 5.0, + "y": 85.0 + } + ] }, { "pin1": { - "compName": "WireCrossPoint#26", + "compName": "WireCrossPoint#2", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I101" + "compName": "WireCrossPoint#16", + "pinName": "" }, - "name": "unnamedWire#199", + "name": "unnamedWire#26", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I110" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_WEC" }, "pin2": { - "compName": "GUISplitter#7", - "pinName": "O1" + "compName": "GUINandGate#5", + "pinName": "B" }, - "name": "unnamedWire#196", + "name": "unnamedWire#48", "path": [] }, { @@ -1169,158 +1304,158 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "WireCrossPoint#18", - "pinName": "" + "compName": "GUIMerger#3", + "pinName": "O" }, "pin2": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "I10" + "compName": "WireCrossPoint#14", + "pinName": "" }, - "name": "unnamedWire#180", + "name": "unnamedWire#93", "path": [] }, { "pin1": { - "compName": "GUISplitter#13", + "compName": "GUISplitter#4", "pinName": "O0" }, "pin2": { - "compName": "WireCrossPoint#24", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I0_1" }, - "name": "unnamedWire#183", + "name": "unnamedWire#102", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#24", - "pinName": "" + "compName": "GUINandGate#12", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "S0" + "compName": "GUITriStateBuffer#5", + "pinName": "EN" }, - "name": "unnamedWire#184", + "name": "unnamedWire#122", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#23", + "compName": "WireCrossPoint#6", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "I11" + "compName": "GUINandGate#1", + "pinName": "A" }, - "name": "unnamedWire#181", + "name": "unnamedWire#55", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "I11" + "compName": "GUISplitter#5", + "pinName": "O1" }, "pin2": { - "compName": "WireCrossPoint#23", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_2" }, - "name": "unnamedWire#182", + "name": "unnamedWire#108", "path": [] }, { "pin1": { "compName": "DeserializedSubmodelComponent#23", - "pinName": "I001" + "pinName": "I110" }, "pin2": { - "compName": "WireCrossPoint#25", - "pinName": "" + "compName": "GUISplitter#7", + "pinName": "O1" }, - "name": "unnamedWire#187", + "name": "unnamedWire#196", "path": [] }, { "pin1": { - "compName": "GUISplitter#13", - "pinName": "I" + "compName": "WireCrossPoint#24", + "pinName": "" }, "pin2": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "SIOn_MUX" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "S0" }, - "name": "unnamedWire#188", + "name": "unnamedWire#184", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#25", - "pinName": "" + "compName": "GUISplitter#4", + "pinName": "O3" }, "pin2": { - "compName": "WireCrossPoint#24", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I0_4" }, - "name": "unnamedWire#185", + "name": "unnamedWire#105", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#25", - "pinName": "" + "compName": "GUITriStateBuffer#2", + "pinName": "EN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "I000" + "compName": "WireCrossPoint#32", + "pinName": "" }, - "name": "unnamedWire#186", + "name": "unnamedWire#218", "path": [] }, { "pin1": { - "compName": "GUISplitter#13", - "pinName": "O2" + "compName": "DeserializedSubmodelComponent#9", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "S2" + "compName": "DeserializedSubmodelComponent#8", + "pinName": "B" }, - "name": "unnamedWire#189", + "name": "unnamedWire#123", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#22", + "compName": "WireCrossPoint#12", "pinName": "" }, "pin2": { - "compName": "GUISplitter#8", - "pinName": "O1" + "compName": "GUINandGate#8", + "pinName": "A" }, - "name": "unnamedWire#172", + "name": "unnamedWire#62", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#22", - "pinName": "" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "S1" }, "pin2": { - "compName": "WireCrossPoint#23", - "pinName": "" + "compName": "GUISplitter#12", + "pinName": "O2" }, - "name": "unnamedWire#173", + "name": "unnamedWire#175", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#19", - "pinName": "" + "compName": "GUINandGate#3", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "I01" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "_EOVR" }, - "name": "unnamedWire#170", + "name": "unnamedWire#43", "path": [] }, { @@ -1332,307 +1467,304 @@ mograsim version: 0.1.3 "compName": "DeserializedSubmodelComponent#15", "pinName": "I10" }, - "name": "unnamedWire#171", - "path": [] - }, - { - "pin1": { - "compName": "GUISplitter#12", - "pinName": "O0" - }, - "pin2": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "I00" - }, - "name": "unnamedWire#176", + "name": "unnamedWire#171", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "Y" + "compName": "GUIBitDisplay#0", + "pinName": "" }, "pin2": { - "compName": "GUITriStateBuffer#4", - "pinName": "IN" + "compName": "WireCrossPoint#5", + "pinName": "" }, - "name": "unnamedWire#177", + "name": "unnamedWire#229", "path": [] }, { "pin1": { - "compName": "GUISplitter#12", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#21", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I111" }, - "name": "unnamedWire#174", + "name": "unnamedWire#194", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "S1" + "compName": "GUISplitter#6", + "pinName": "O2" }, "pin2": { - "compName": "GUISplitter#12", - "pinName": "O2" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "S2" }, - "name": "unnamedWire#175", + "name": "unnamedWire#127", "path": [] }, { "pin1": { - "compName": "GUISplitter#12", - "pinName": "I" + "compName": "WireCrossPoint#32", + "pinName": "" }, "pin2": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "QIO0_MUX" + "compName": "GUITriStateBuffer#1", + "pinName": "EN" }, - "name": "unnamedWire#178", + "name": "unnamedWire#219", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#19", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#16", - "pinName": "I01" + "compName": "GUISplitter#0", + "pinName": "I" }, - "name": "unnamedWire#179", + "name": "unnamedWire#3", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#1", - "pinName": "OUT" + "compName": "GUISplitter#2", + "pinName": "O0" }, "pin2": { - "compName": "WireCrossPoint#18", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "S0" }, - "name": "unnamedWire#161", + "name": "unnamedWire#95", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#2", - "pinName": "OUT" + "compName": "GUISplitter#13", + "pinName": "O0" }, "pin2": { - "compName": "WireCrossPoint#19", + "compName": "WireCrossPoint#24", "pinName": "" }, - "name": "unnamedWire#162", + "name": "unnamedWire#183", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "QIO0" + "compName": "WireCrossPoint#27", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#21", - "pinName": "" + "compName": "DeserializedSubmodelComponent#10", + "pinName": "B" }, - "name": "unnamedWire#160", + "name": "unnamedWire#200", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#3", - "pinName": "IN" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I0_3" }, "pin2": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "Y" + "compName": "GUISplitter#4", + "pinName": "O2" }, - "name": "unnamedWire#165", + "name": "unnamedWire#104", "path": [] }, { "pin1": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "SIO0_MUX" + "compName": "GUINandGate#8", + "pinName": "B" }, "pin2": { - "compName": "GUISplitter#11", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y2" }, - "name": "unnamedWire#166", + "name": "unnamedWire#72", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#3", - "pinName": "OUT" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "I" }, "pin2": { - "compName": "WireCrossPoint#20", - "pinName": "" + "compName": "GUIMerger#1", + "pinName": "O" }, - "name": "unnamedWire#163", - "path": [] + "name": "unnamedWire#16", + "path": [ + { + "x": 40.0, + "y": 395.0 + }, + { + "x": 40.0, + "y": 325.0 + } + ] }, { "pin1": { - "compName": "GUITriStateBuffer#4", - "pinName": "OUT" + "compName": "_submodelinterface", + "pinName": "QIO0" }, "pin2": { "compName": "WireCrossPoint#21", "pinName": "" }, - "name": "unnamedWire#164", + "name": "unnamedWire#160", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y3" }, "pin2": { - "compName": "GUISplitter#11", - "pinName": "O1" + "compName": "GUIMerger#3", + "pinName": "I2" }, - "name": "unnamedWire#169", + "name": "unnamedWire#91", "path": [] }, { "pin1": { - "compName": "GUISplitter#11", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "I10" }, "pin2": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "I00" + "compName": "WireCrossPoint#21", + "pinName": "" }, - "name": "unnamedWire#167", + "name": "unnamedWire#198", "path": [] }, { "pin1": { - "compName": "GUISplitter#11", - "pinName": "O2" + "compName": "WireCrossPoint#10", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#15", - "pinName": "S1" + "compName": "GUINandGate#6", + "pinName": "A" }, - "name": "unnamedWire#168", + "name": "unnamedWire#60", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#0", - "pinName": "OUT" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y000" }, "pin2": { - "compName": "WireCrossPoint#5", - "pinName": "" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I000" }, - "name": "unnamedWire#79", + "name": "unnamedWire#121", "path": [] }, { "pin1": { - "compName": "GUINandGate#10", + "compName": "DeserializedSubmodelComponent#21", "pinName": "B" }, "pin2": { - "compName": "WireCrossPoint#13", - "pinName": "" + "compName": "GUISplitter#7", + "pinName": "O3" }, - "name": "unnamedWire#81", + "name": "unnamedWire#206", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#13", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y111" }, "pin2": { - "compName": "GUINandGate#10", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I111" }, - "name": "unnamedWire#80", + "name": "unnamedWire#114", "path": [] }, { "pin1": { - "compName": "GUINandGate#10", - "pinName": "Y" + "compName": "GUISplitter#10", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "A" + "compName": "WireCrossPoint#3", + "pinName": "" }, - "name": "unnamedWire#83", + "name": "unnamedWire#144", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#13", + "compName": "WireCrossPoint#25", "pinName": "" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "_OEY" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I000" }, - "name": "unnamedWire#82", + "name": "unnamedWire#186", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y1" + "compName": "WireCrossPoint#26", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I1_1" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I101" }, - "name": "unnamedWire#85", + "name": "unnamedWire#199", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "Y" + "compName": "WireCrossPoint#4", + "pinName": "" }, "pin2": { - "compName": "GUITriStateBuffer#0", - "pinName": "EN" + "compName": "_submodelinterface", + "pinName": "_CEmu" }, - "name": "unnamedWire#84", + "name": "unnamedWire#35", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y3" + "compName": "WireCrossPoint#19", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I1_3" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "I01" }, - "name": "unnamedWire#87", + "name": "unnamedWire#179", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I1_2" + "compName": "GUITriStateBuffer#0", + "pinName": "OUT" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y2" + "compName": "GUIBitDisplay#1", + "pinName": "" }, - "name": "unnamedWire#86", + "name": "unnamedWire#230", "path": [] }, { @@ -1649,2198 +1781,2193 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I1_4" + "compName": "GUINandGate#12", + "pinName": "B" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y4" + "compName": "WireCrossPoint#33", + "pinName": "" + }, + "name": "unnamedWire#234", + "path": [] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#1", + "pinName": "Q" + }, + "pin2": { + "compName": "WireCrossPoint#3", + "pinName": "" }, - "name": "unnamedWire#88", + "name": "unnamedWire#27", "path": [] }, { "pin1": { - "compName": "GUIMerger#3", - "pinName": "I1" + "compName": "GUISplitter#12", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y2" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "QIO0_MUX" }, - "name": "unnamedWire#90", + "name": "unnamedWire#178", "path": [] }, { "pin1": { - "compName": "GUIMerger#3", - "pinName": "I3" + "compName": "GUISplitter#14", + "pinName": "O2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y4" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "S1" }, - "name": "unnamedWire#92", + "name": "unnamedWire#208", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y3" + "compName": "GUIMerger#4", + "pinName": "O" }, "pin2": { - "compName": "GUIMerger#3", - "pinName": "I2" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "I12-11" }, - "name": "unnamedWire#91", + "name": "unnamedWire#141", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "Y_MUX" + "compName": "WireCrossPoint#18", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#2", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "I10" }, - "name": "unnamedWire#94", + "name": "unnamedWire#180", "path": [] }, { "pin1": { - "compName": "GUIMerger#3", - "pinName": "O" + "compName": "GUITriStateBuffer#2", + "pinName": "IN" }, "pin2": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "Y" }, - "name": "unnamedWire#93", + "name": "unnamedWire#212", "path": [] }, { "pin1": { - "compName": "GUISplitter#2", - "pinName": "O1" + "compName": "GUIMerger#3", + "pinName": "I1" }, "pin2": { "compName": "DeserializedSubmodelComponent#3", - "pinName": "S0" + "pinName": "Y2" }, - "name": "unnamedWire#96", + "name": "unnamedWire#90", "path": [] }, { "pin1": { - "compName": "GUISplitter#2", - "pinName": "O0" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_WEOVR" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "S0" + "compName": "GUINandGate#3", + "pinName": "B" }, - "name": "unnamedWire#95", + "name": "unnamedWire#59", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I0_2" + "compName": "GUINandGate#1", + "pinName": "Y" }, "pin2": { - "compName": "GUISplitter#3", - "pinName": "O1" + "compName": "WireCrossPoint#11", + "pinName": "" }, - "name": "unnamedWire#98", + "name": "unnamedWire#70", "path": [] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I100" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I0_1" + "compName": "WireCrossPoint#23", + "pinName": "" }, - "name": "unnamedWire#97", + "name": "unnamedWire#193", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I0_3" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I100" }, "pin2": { - "compName": "GUISplitter#3", - "pinName": "O2" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y100" }, - "name": "unnamedWire#99", + "name": "unnamedWire#117", "path": [] }, { "pin1": { - "compName": "GUINandGate#2", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "A1" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_WEN" + "compName": "_submodelinterface", + "pinName": "_EZ" }, - "name": "unnamedWire#58", + "name": "unnamedWire#75", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_CEM" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "C0_MUX" }, "pin2": { - "compName": "WireCrossPoint#6", - "pinName": "" + "compName": "GUISplitter#9", + "pinName": "I" }, - "name": "unnamedWire#57", + "name": "unnamedWire#142", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_WEOVR" + "compName": "_submodelinterface", + "pinName": "IZ" }, "pin2": { - "compName": "GUINandGate#3", - "pinName": "B" + "compName": "GUIMerger#2", + "pinName": "I0" }, - "name": "unnamedWire#59", - "path": [] + "name": "unnamedWire#20", + "path": [ + { + "x": 5.0, + "y": 50.0 + }, + { + "x": 5.0, + "y": 65.0 + } + ] }, { "pin1": { - "compName": "GUINandGate#7", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I001" }, "pin2": { - "compName": "WireCrossPoint#10", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y001" }, - "name": "unnamedWire#61", + "name": "unnamedWire#120", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#10", - "pinName": "" + "compName": "GUITriStateBuffer#0", + "pinName": "OUT" }, "pin2": { - "compName": "GUINandGate#6", - "pinName": "A" + "compName": "WireCrossPoint#5", + "pinName": "" }, - "name": "unnamedWire#60", + "name": "unnamedWire#79", "path": [] }, { "pin1": { - "compName": "GUINandGate#9", - "pinName": "A" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "MSR_MUX" }, "pin2": { - "compName": "WireCrossPoint#11", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "MUX" }, - "name": "unnamedWire#63", + "name": "unnamedWire#31", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#12", - "pinName": "" + "compName": "GUISplitter#14", + "pinName": "O1" }, "pin2": { - "compName": "GUINandGate#8", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "S0" }, - "name": "unnamedWire#62", + "name": "unnamedWire#209", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#12", - "pinName": "" + "compName": "GUINandGate#0", + "pinName": "Y" }, "pin2": { - "compName": "WireCrossPoint#10", + "compName": "WireCrossPoint#8", "pinName": "" }, - "name": "unnamedWire#65", + "name": "unnamedWire#36", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#11", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "Q" }, "pin2": { - "compName": "WireCrossPoint#12", + "compName": "WireCrossPoint#2", "pinName": "" }, - "name": "unnamedWire#64", + "name": "unnamedWire#25", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "_EN" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "_EC" }, "pin2": { - "compName": "GUINandGate#7", + "compName": "GUINandGate#5", "pinName": "Y" }, - "name": "unnamedWire#67", + "name": "unnamedWire#45", "path": [] }, { "pin1": { - "compName": "GUINandGate#6", - "pinName": "Y" + "compName": "DeserializedSubmodelComponent#13", + "pinName": "I0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "_EOVR" + "compName": "_submodelinterface", + "pinName": "Cx" }, - "name": "unnamedWire#66", + "name": "unnamedWire#152", "path": [] }, { "pin1": { - "compName": "GUINandGate#9", - "pinName": "Y" + "compName": "GUISplitter#0", + "pinName": "O8" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "_EZ" + "compName": "GUIMerger#1", + "pinName": "I2" }, - "name": "unnamedWire#69", + "name": "unnamedWire#12", "path": [] }, { "pin1": { - "compName": "GUINandGate#8", - "pinName": "Y" + "compName": "WireCrossPoint#33", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "_EC" + "compName": "_submodelinterface", + "pinName": "_OECT" }, - "name": "unnamedWire#68", + "name": "unnamedWire#235", "path": [] }, { "pin1": { - "compName": "GUINandGate#1", - "pinName": "Y" + "compName": "GUISplitter#0", + "pinName": "O4" }, "pin2": { - "compName": "WireCrossPoint#11", - "pinName": "" + "compName": "GUIMerger#0", + "pinName": "I4" }, - "name": "unnamedWire#70", + "name": "unnamedWire#8", "path": [] }, { "pin1": { - "compName": "GUINandGate#8", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#13", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y2" + "compName": "DeserializedSubmodelComponent#14", + "pinName": "I1" }, - "name": "unnamedWire#72", + "name": "unnamedWire#153", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y1" + "compName": "GUISplitter#8", + "pinName": "O2" }, "pin2": { - "compName": "GUINandGate#9", - "pinName": "B" + "compName": "WireCrossPoint#27", + "pinName": "" }, - "name": "unnamedWire#71", + "name": "unnamedWire#135", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y4" + "compName": "GUINandGate#6", + "pinName": "Y" }, "pin2": { - "compName": "GUINandGate#6", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "_EOVR" }, - "name": "unnamedWire#74", + "name": "unnamedWire#66", "path": [] }, { "pin1": { "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y3" + "pinName": "Y4" }, "pin2": { - "compName": "GUINandGate#7", + "compName": "GUINandGate#6", "pinName": "B" }, - "name": "unnamedWire#73", + "name": "unnamedWire#74", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EC" + "compName": "GUIMerger#0", + "pinName": "O" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "A2" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "I5-0" }, - "name": "unnamedWire#76", + "name": "unnamedWire#15", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "A1" + "compName": "WireCrossPoint#0", + "pinName": "" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "_EZ" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "C" }, - "name": "unnamedWire#75", + "name": "unnamedWire#29", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EOVR" + "compName": "GUITriStateBuffer#0", + "pinName": "EN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "A4" + "compName": "GUIBitDisplay#3", + "pinName": "" }, - "name": "unnamedWire#78", + "name": "unnamedWire#232", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "A3" + "compName": "WireCrossPoint#0", + "pinName": "" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "_EN" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "C" }, - "name": "unnamedWire#77", + "name": "unnamedWire#30", "path": [] }, { "pin1": { - "compName": "GUINandGate#0", - "pinName": "Y" + "compName": "GUITriStateBuffer#3", + "pinName": "EN" }, "pin2": { - "compName": "WireCrossPoint#8", + "compName": "WireCrossPoint#30", "pinName": "" }, - "name": "unnamedWire#36", + "name": "unnamedWire#214", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#4", - "pinName": "" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "Y" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "_CEmu" + "compName": "DeserializedSubmodelComponent#9", + "pinName": "I0" }, - "name": "unnamedWire#35", + "name": "unnamedWire#129", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#8", - "pinName": "" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I001" }, "pin2": { - "compName": "WireCrossPoint#7", + "compName": "WireCrossPoint#25", "pinName": "" }, - "name": "unnamedWire#38", + "name": "unnamedWire#187", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#8", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "Y" }, "pin2": { - "compName": "GUINandGate#4", - "pinName": "A" + "compName": "GUITriStateBuffer#0", + "pinName": "EN" }, - "name": "unnamedWire#37", + "name": "unnamedWire#84", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#7", - "pinName": "" + "compName": "DeserializedSubmodelComponent#17", + "pinName": "I1" }, "pin2": { - "compName": "GUINandGate#5", - "pinName": "A" + "compName": "WireCrossPoint#19", + "pinName": "" }, - "name": "unnamedWire#39", + "name": "unnamedWire#223", "path": [] }, { "pin1": { - "compName": "GUISplitter#5", - "pinName": "O3" + "compName": "GUINandGate#1", + "pinName": "B" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_4" + "compName": "WireCrossPoint#6", + "pinName": "" }, - "name": "unnamedWire#110", + "name": "unnamedWire#56", "path": [] }, { "pin1": { - "compName": "GUISplitter#5", - "pinName": "I" + "compName": "GUISplitter#9", + "pinName": "O1" }, "pin2": { - "compName": "WireCrossPoint#1", - "pinName": "" + "compName": "DeserializedSubmodelComponent#11", + "pinName": "S0" }, - "name": "unnamedWire#111", + "name": "unnamedWire#146", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y111" + "compName": "_submodelinterface", + "pinName": "_SE" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I111" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "_SE" }, - "name": "unnamedWire#114", + "name": "unnamedWire#213", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I110" + "compName": "_submodelinterface", + "pinName": "YC" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y110" + "compName": "GUISplitter#1", + "pinName": "O1" }, - "name": "unnamedWire#115", + "name": "unnamedWire#50", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "GUIMerger#0", + "pinName": "I1" }, "pin2": { - "compName": "GUITriStateBuffer#0", - "pinName": "IN" + "compName": "GUISplitter#0", + "pinName": "O1" }, - "name": "unnamedWire#112", + "name": "unnamedWire#5", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y101" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I101" }, - "name": "unnamedWire#113", + "name": "unnamedWire#116", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y011" + "compName": "GUISplitter#6", + "pinName": "O0" }, "pin2": { "compName": "DeserializedSubmodelComponent#7", - "pinName": "I011" + "pinName": "S0" }, - "name": "unnamedWire#118", + "name": "unnamedWire#125", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y010" + "compName": "DeserializedSubmodelComponent#18", + "pinName": "I0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I010" + "compName": "WireCrossPoint#20", + "pinName": "" }, - "name": "unnamedWire#119", + "name": "unnamedWire#224", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#9", - "pinName": "" + "compName": "GUIMerger#2", + "pinName": "O" }, "pin2": { - "compName": "GUINandGate#2", - "pinName": "A" + "compName": "WireCrossPoint#1", + "pinName": "" }, - "name": "unnamedWire#41", + "name": "unnamedWire#22", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y101" + "compName": "GUISplitter#0", + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I101" + "compName": "GUIMerger#0", + "pinName": "I0" }, - "name": "unnamedWire#116", + "name": "unnamedWire#4", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#7", - "pinName": "" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "Y" }, "pin2": { - "compName": "WireCrossPoint#9", - "pinName": "" + "compName": "GUITriStateBuffer#4", + "pinName": "IN" }, - "name": "unnamedWire#40", + "name": "unnamedWire#177", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I100" + "compName": "GUINandGate#9", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y100" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "_EZ" }, - "name": "unnamedWire#117", + "name": "unnamedWire#69", "path": [] }, { "pin1": { - "compName": "GUINandGate#3", - "pinName": "Y" + "compName": "GUITriStateBuffer#0", + "pinName": "IN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "_EOVR" + "compName": "GUIBitDisplay#2", + "pinName": "" }, - "name": "unnamedWire#43", + "name": "unnamedWire#231", "path": [] }, { "pin1": { - "compName": "GUINandGate#3", - "pinName": "A" + "compName": "WireCrossPoint#7", + "pinName": "" }, "pin2": { "compName": "WireCrossPoint#9", "pinName": "" }, - "name": "unnamedWire#42", + "name": "unnamedWire#40", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "_EC" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "Y" }, "pin2": { - "compName": "GUINandGate#5", - "pinName": "Y" + "compName": "GUITriStateBuffer#1", + "pinName": "IN" }, - "name": "unnamedWire#45", + "name": "unnamedWire#207", "path": [] }, { "pin1": { - "compName": "GUINandGate#2", - "pinName": "Y" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "CT_EXP" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "_EN" + "compName": "DeserializedSubmodelComponent#9", + "pinName": "S0" }, - "name": "unnamedWire#44", + "name": "unnamedWire#128", "path": [] }, { "pin1": { - "compName": "GUINandGate#4", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#15", + "pinName": "S0" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_WEZ" + "compName": "GUISplitter#11", + "pinName": "O1" }, - "name": "unnamedWire#47", + "name": "unnamedWire#169", "path": [] }, { "pin1": { - "compName": "GUINandGate#4", - "pinName": "Y" + "compName": "WireCrossPoint#5", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "_EZ" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "Y" }, - "name": "unnamedWire#46", + "name": "unnamedWire#54", "path": [] }, { "pin1": { - "compName": "GUISplitter#1", + "compName": "GUISplitter#12", "pinName": "O0" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "YZ" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "I00" }, - "name": "unnamedWire#49", + "name": "unnamedWire#176", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_WEC" + "compName": "WireCrossPoint#20", + "pinName": "" }, "pin2": { - "compName": "GUINandGate#5", - "pinName": "B" + "compName": "_submodelinterface", + "pinName": "SIO0" }, - "name": "unnamedWire#48", + "name": "unnamedWire#159", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#32", + "compName": "WireCrossPoint#30", "pinName": "" }, "pin2": { - "compName": "GUINandGate#11", - "pinName": "Y" + "compName": "GUITriStateBuffer#4", + "pinName": "EN" }, - "name": "unnamedWire#220", + "name": "unnamedWire#215", "path": [] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O3" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I0_2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "I0_4" + "compName": "GUISplitter#3", + "pinName": "O1" }, - "name": "unnamedWire#100", + "name": "unnamedWire#98", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#18", - "pinName": "Y" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "S1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#17", - "pinName": "I0" + "compName": "GUISplitter#6", + "pinName": "O1" }, - "name": "unnamedWire#221", + "name": "unnamedWire#126", "path": [] }, { "pin1": { - "compName": "GUISplitter#4", - "pinName": "O1" + "compName": "WireCrossPoint#27", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_2" + "compName": "WireCrossPoint#26", + "pinName": "" }, - "name": "unnamedWire#103", + "name": "unnamedWire#195", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#18", - "pinName": "I0" + "compName": "WireCrossPoint#8", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#20", + "compName": "WireCrossPoint#7", "pinName": "" }, - "name": "unnamedWire#224", + "name": "unnamedWire#38", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_3" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I110" }, "pin2": { - "compName": "GUISplitter#4", - "pinName": "O2" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y110" }, - "name": "unnamedWire#104", + "name": "unnamedWire#115", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#21", - "pinName": "" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "MC_MUX" }, "pin2": { - "compName": "DeserializedSubmodelComponent#18", - "pinName": "I1" + "compName": "GUISplitter#15", + "pinName": "I" }, - "name": "unnamedWire#225", + "name": "unnamedWire#226", "path": [] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "I" + "compName": "WireCrossPoint#19", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#3", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "SIOn" }, - "name": "unnamedWire#101", + "name": "unnamedWire#158", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#17", - "pinName": "Y" + "compName": "GUISplitter#0", + "pinName": "O10" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "COVD_V" + "compName": "GUIMerger#1", + "pinName": "I4" }, - "name": "unnamedWire#222", + "name": "unnamedWire#14", "path": [] }, { "pin1": { - "compName": "GUISplitter#4", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#14", + "pinName": "S0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_1" + "compName": "GUISplitter#9", + "pinName": "O3" }, - "name": "unnamedWire#102", + "name": "unnamedWire#155", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#17", - "pinName": "I1" + "compName": "WireCrossPoint#7", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#19", - "pinName": "" + "compName": "GUINandGate#5", + "pinName": "A" }, - "name": "unnamedWire#223", + "name": "unnamedWire#39", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "YC" + "compName": "GUITriStateBuffer#5", + "pinName": "IN" }, "pin2": { - "compName": "GUISplitter#1", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#8", + "pinName": "Y" }, - "name": "unnamedWire#50", + "name": "unnamedWire#237", "path": [] }, { "pin1": { - "compName": "GUISplitter#5", - "pinName": "O0" + "compName": "WireCrossPoint#9", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_1" + "compName": "GUINandGate#2", + "pinName": "A" }, - "name": "unnamedWire#107", + "name": "unnamedWire#41", "path": [] }, { "pin1": { "compName": "GUISplitter#15", - "pinName": "O1" + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#17", + "compName": "DeserializedSubmodelComponent#18", "pinName": "S0" }, - "name": "unnamedWire#228", + "name": "unnamedWire#227", "path": [] }, { "pin1": { - "compName": "GUISplitter#5", - "pinName": "O1" + "compName": "GUISplitter#14", + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_2" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "I00" }, - "name": "unnamedWire#108", + "name": "unnamedWire#211", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "YOVR" + "compName": "GUITriStateBuffer#1", + "pinName": "OUT" }, "pin2": { - "compName": "GUISplitter#1", - "pinName": "O3" + "compName": "WireCrossPoint#18", + "pinName": "" }, - "name": "unnamedWire#52", + "name": "unnamedWire#161", "path": [] }, { "pin1": { - "compName": "GUISplitter#4", - "pinName": "O3" + "compName": "GUISplitter#13", + "pinName": "O1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_4" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "S1" }, - "name": "unnamedWire#105", + "name": "unnamedWire#190", "path": [] }, { "pin1": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "MC_MUX" + "compName": "GUISplitter#12", + "pinName": "O1" }, "pin2": { - "compName": "GUISplitter#15", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "S0" }, - "name": "unnamedWire#226", + "name": "unnamedWire#174", "path": [] }, { "pin1": { - "compName": "GUISplitter#1", + "compName": "GUISplitter#0", "pinName": "O2" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "YN" + "compName": "GUIMerger#0", + "pinName": "I2" }, - "name": "unnamedWire#51", + "name": "unnamedWire#6", "path": [] }, { "pin1": { - "compName": "GUISplitter#4", + "compName": "GUISplitter#1", "pinName": "I" }, "pin2": { - "compName": "WireCrossPoint#2", + "compName": "WireCrossPoint#5", "pinName": "" }, - "name": "unnamedWire#106", + "name": "unnamedWire#53", "path": [] }, { "pin1": { - "compName": "GUISplitter#15", - "pinName": "O0" + "compName": "GUINandGate#2", + "pinName": "B" }, "pin2": { - "compName": "DeserializedSubmodelComponent#18", - "pinName": "S0" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_WEN" }, - "name": "unnamedWire#227", + "name": "unnamedWire#58", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#5", + "compName": "WireCrossPoint#15", + "pinName": "" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#1", + "pinName": "I" + }, + "name": "unnamedWire#132", + "path": [] + }, + { + "pin1": { + "compName": "_submodelinterface", + "pinName": "QIOn" + }, + "pin2": { + "compName": "WireCrossPoint#18", "pinName": "" }, + "name": "unnamedWire#157", + "path": [] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#0", + "pinName": "_EN" + }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", + "compName": "GUINandGate#7", "pinName": "Y" }, - "name": "unnamedWire#54", + "name": "unnamedWire#67", "path": [] }, { "pin1": { - "compName": "GUISplitter#1", - "pinName": "I" + "compName": "GUINandGate#4", + "pinName": "B" }, "pin2": { - "compName": "WireCrossPoint#5", - "pinName": "" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_WEZ" }, - "name": "unnamedWire#53", + "name": "unnamedWire#47", "path": [] }, { "pin1": { - "compName": "GUINandGate#1", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y3" }, "pin2": { - "compName": "WireCrossPoint#6", - "pinName": "" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I1_3" }, - "name": "unnamedWire#56", + "name": "unnamedWire#87", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_3" + "compName": "DeserializedSubmodelComponent#10", + "pinName": "Y" }, "pin2": { - "compName": "GUISplitter#5", - "pinName": "O2" + "compName": "DeserializedSubmodelComponent#9", + "pinName": "I1" }, - "name": "unnamedWire#109", + "name": "unnamedWire#131", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#6", + "compName": "WireCrossPoint#17", "pinName": "" }, "pin2": { - "compName": "GUINandGate#1", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#13", + "pinName": "S0" }, - "name": "unnamedWire#55", + "name": "unnamedWire#150", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O10" + "compName": "GUISplitter#13", + "pinName": "O2" }, "pin2": { - "compName": "GUIMerger#1", - "pinName": "I4" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "S2" }, - "name": "unnamedWire#14", + "name": "unnamedWire#189", "path": [] }, { "pin1": { - "compName": "GUIMerger#1", - "pinName": "I3" + "compName": "WireCrossPoint#23", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O9" + "compName": "DeserializedSubmodelComponent#16", + "pinName": "I11" }, - "name": "unnamedWire#13", + "name": "unnamedWire#181", "path": [] }, { "pin1": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#14", + "pinName": "Y" }, "pin2": { - "compName": "GUIMerger#1", - "pinName": "O" + "compName": "_submodelinterface", + "pinName": "C0" }, - "name": "unnamedWire#16", - "path": [ - { - "x": 40.0, - "y": 395.0 - }, - { - "x": 40.0, - "y": 325.0 - } - ] + "name": "unnamedWire#156", + "path": [] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "O" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_MUX" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "I5-0" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "MUX" }, - "name": "unnamedWire#15", + "name": "unnamedWire#1", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "IN" + "compName": "GUISplitter#0", + "pinName": "O6" }, "pin2": { - "compName": "GUIMerger#2", - "pinName": "I2" + "compName": "GUIMerger#1", + "pinName": "I0" }, - "name": "unnamedWire#18", - "path": [ - { - "x": 5.0, - "y": 100.0 - }, - { - "x": 5.0, - "y": 85.0 - } - ] + "name": "unnamedWire#10", + "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "IOVR" + "compName": "DeserializedSubmodelComponent#17", + "pinName": "Y" }, "pin2": { - "compName": "GUIMerger#2", - "pinName": "I3" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "COVD_V" }, - "name": "unnamedWire#17", - "path": [ - { - "x": 10.0, - "y": 125.0 - }, - { - "x": 10.0, - "y": 95.0 - } - ] + "name": "unnamedWire#222", + "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "IC" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "Y_MUX" }, "pin2": { - "compName": "GUIMerger#2", - "pinName": "I1" + "compName": "GUISplitter#2", + "pinName": "I" }, - "name": "unnamedWire#19", + "name": "unnamedWire#94", "path": [] }, { "pin1": { - "compName": "GUISplitter#14", - "pinName": "I" + "compName": "_submodelinterface", + "pinName": "_EOVR" }, "pin2": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "QIOn_MUX" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "A4" }, - "name": "unnamedWire#210", + "name": "unnamedWire#78", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#29", + "compName": "WireCrossPoint#3", "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#31", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "mu" }, - "name": "unnamedWire#213", + "name": "unnamedWire#28", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#3", - "pinName": "EN" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I1_2" }, "pin2": { - "compName": "WireCrossPoint#30", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y2" }, - "name": "unnamedWire#214", + "name": "unnamedWire#86", "path": [] }, { "pin1": { - "compName": "GUISplitter#14", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#11", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "I00" + "compName": "DeserializedSubmodelComponent#12", + "pinName": "B" }, - "name": "unnamedWire#211", + "name": "unnamedWire#147", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#2", - "pinName": "IN" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I010" }, "pin2": { - "compName": "DeserializedSubmodelComponent#23", - "pinName": "Y" + "compName": "WireCrossPoint#20", + "pinName": "" }, - "name": "unnamedWire#212", + "name": "unnamedWire#191", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#31", + "compName": "WireCrossPoint#33", "pinName": "" }, "pin2": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "LSHIFT" + "compName": "GUINandGate#12", + "pinName": "A" }, - "name": "unnamedWire#217", + "name": "unnamedWire#233", "path": [] }, { "pin1": { - "compName": "GUITriStateBuffer#2", - "pinName": "EN" + "compName": "_submodelinterface", + "pinName": "_CEM" }, "pin2": { - "compName": "WireCrossPoint#32", + "compName": "WireCrossPoint#6", "pinName": "" }, - "name": "unnamedWire#218", + "name": "unnamedWire#57", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#30", - "pinName": "" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "A3" }, "pin2": { - "compName": "GUITriStateBuffer#4", - "pinName": "EN" + "compName": "_submodelinterface", + "pinName": "_EN" }, - "name": "unnamedWire#215", + "name": "unnamedWire#77", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#31", - "pinName": "" + "compName": "GUINandGate#7", + "pinName": "A" }, "pin2": { - "compName": "WireCrossPoint#30", + "compName": "WireCrossPoint#10", "pinName": "" }, - "name": "unnamedWire#216", + "name": "unnamedWire#61", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_CINV" + "compName": "WireCrossPoint#1", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "CINV" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I" }, - "name": "unnamedWire#21", + "name": "unnamedWire#23", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "IZ" + "compName": "WireCrossPoint#21", + "pinName": "" }, "pin2": { - "compName": "GUIMerger#2", - "pinName": "I0" + "compName": "DeserializedSubmodelComponent#18", + "pinName": "I1" }, - "name": "unnamedWire#20", - "path": [ - { - "x": 5.0, - "y": 50.0 - }, - { - "x": 5.0, - "y": 65.0 - } - ] + "name": "unnamedWire#225", + "path": [] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y1" + }, + "pin2": { + "compName": "GUINandGate#9", + "pinName": "B" + }, + "name": "unnamedWire#71", + "path": [] }, { "pin1": { - "compName": "WireCrossPoint#1", + "compName": "WireCrossPoint#28", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#21", + "pinName": "A" }, - "name": "unnamedWire#23", + "name": "unnamedWire#205", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#32", - "pinName": "" + "compName": "GUISplitter#1", + "pinName": "O0" }, "pin2": { - "compName": "GUITriStateBuffer#1", - "pinName": "EN" + "compName": "_submodelinterface", + "pinName": "YZ" }, - "name": "unnamedWire#219", + "name": "unnamedWire#49", "path": [] }, { "pin1": { - "compName": "GUIMerger#2", - "pinName": "O" + "compName": "GUISplitter#4", + "pinName": "I" }, "pin2": { - "compName": "WireCrossPoint#1", + "compName": "WireCrossPoint#2", "pinName": "" }, - "name": "unnamedWire#22", + "name": "unnamedWire#106", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "Q" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y3" }, "pin2": { - "compName": "WireCrossPoint#2", - "pinName": "" + "compName": "GUINandGate#7", + "pinName": "B" }, - "name": "unnamedWire#25", + "name": "unnamedWire#73", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "GUISplitter#0", + "pinName": "O11" }, "pin2": { - "compName": "WireCrossPoint#1", - "pinName": "" + "compName": "GUIMerger#4", + "pinName": "I0" }, - "name": "unnamedWire#24", + "name": "unnamedWire#139", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "Q" + "compName": "DeserializedSubmodelComponent#11", + "pinName": "I1" }, "pin2": { - "compName": "WireCrossPoint#3", + "compName": "WireCrossPoint#22", "pinName": "" }, - "name": "unnamedWire#27", + "name": "unnamedWire#143", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#2", + "compName": "WireCrossPoint#15", "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#16", + "compName": "WireCrossPoint#1", "pinName": "" }, - "name": "unnamedWire#26", + "name": "unnamedWire#24", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#0", - "pinName": "" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "muSR_OVRRET" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "C" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "OVRRET" }, - "name": "unnamedWire#29", + "name": "unnamedWire#2", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#3", + "compName": "WireCrossPoint#14", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "mu" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I" }, - "name": "unnamedWire#28", + "name": "unnamedWire#113", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#29", - "pinName": "" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "OEN" }, "pin2": { - "compName": "GUINandGate#11", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "B" }, - "name": "unnamedWire#202", + "name": "unnamedWire#138", "path": [] }, { "pin1": { - "compName": "GUINandGate#11", - "pinName": "B" + "compName": "GUINandGate#8", + "pinName": "Y" }, "pin2": { - "compName": "WireCrossPoint#29", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "_EC" }, - "name": "unnamedWire#203", + "name": "unnamedWire#68", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#27", + "compName": "WireCrossPoint#12", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#10", - "pinName": "B" + "compName": "WireCrossPoint#10", + "pinName": "" }, - "name": "unnamedWire#200", + "name": "unnamedWire#65", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#26", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "IC" }, "pin2": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "I11" + "compName": "GUIMerger#2", + "pinName": "I1" }, - "name": "unnamedWire#201", + "name": "unnamedWire#19", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#21", - "pinName": "B" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "OE0" }, "pin2": { - "compName": "GUISplitter#7", - "pinName": "O3" + "compName": "WireCrossPoint#30", + "pinName": "" }, - "name": "unnamedWire#206", + "name": "unnamedWire#203", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "Y" + "compName": "WireCrossPoint#22", + "pinName": "" }, "pin2": { - "compName": "GUITriStateBuffer#1", - "pinName": "IN" + "compName": "WireCrossPoint#23", + "pinName": "" }, - "name": "unnamedWire#207", + "name": "unnamedWire#173", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#0", - "pinName": "" + "compName": "DeserializedSubmodelComponent#15", + "pinName": "I11" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "C" + "compName": "WireCrossPoint#23", + "pinName": "" }, - "name": "unnamedWire#30", + "name": "unnamedWire#182", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#28", - "pinName": "" + "compName": "GUITriStateBuffer#3", + "pinName": "IN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#10", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#15", + "pinName": "Y" }, - "name": "unnamedWire#204", + "name": "unnamedWire#165", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#28", + "compName": "WireCrossPoint#4", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#21", - "pinName": "A" + "compName": "GUINandGate#0", + "pinName": "B" }, - "name": "unnamedWire#205", + "name": "unnamedWire#34", "path": [] }, { "pin1": { - "compName": "GUIAm2904ShiftInstrDecode#0", - "pinName": "MC_EN" + "compName": "DeserializedSubmodelComponent#8", + "pinName": "A" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "COVD_EN" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "CT_INV" }, - "name": "unnamedWire#32", + "name": "unnamedWire#130", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "MSR_MUX" + "compName": "GUITriStateBuffer#4", + "pinName": "OUT" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "MUX" + "compName": "WireCrossPoint#21", + "pinName": "" }, - "name": "unnamedWire#31", + "name": "unnamedWire#164", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#4", - "pinName": "" + "compName": "GUIMerger#1", + "pinName": "I3" }, "pin2": { - "compName": "GUINandGate#0", - "pinName": "B" + "compName": "GUISplitter#0", + "pinName": "O9" }, - "name": "unnamedWire#34", + "name": "unnamedWire#13", "path": [] }, { "pin1": { - "compName": "GUISplitter#14", - "pinName": "O2" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "MC_EN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "S1" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "COVD_EN" }, - "name": "unnamedWire#208", + "name": "unnamedWire#32", "path": [] }, { "pin1": { - "compName": "GUINandGate#0", - "pinName": "A" + "compName": "WireCrossPoint#15", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#4", - "pinName": "" + "compName": "GUISplitter#7", + "pinName": "I" }, - "name": "unnamedWire#33", + "name": "unnamedWire#133", "path": [] }, { "pin1": { - "compName": "GUISplitter#14", - "pinName": "O1" + "compName": "WireCrossPoint#16", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#22", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "M" }, - "name": "unnamedWire#209", + "name": "unnamedWire#136", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#17", - "pinName": "" + "compName": "GUISplitter#3", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#13", - "pinName": "S0" + "compName": "WireCrossPoint#3", + "pinName": "" }, - "name": "unnamedWire#150", + "name": "unnamedWire#101", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#12", - "pinName": "Y" + "compName": "_submodelinterface", + "pinName": "C" }, "pin2": { - "compName": "DeserializedSubmodelComponent#13", - "pinName": "I1" + "compName": "WireCrossPoint#0", + "pinName": "" }, - "name": "unnamedWire#151", - "path": [] + "name": "unnamedWire#0", + "path": [ + { + "x": 5.0, + "y": 25.0 + }, + { + "x": 5.0, + "y": 10.0 + } + ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#14", - "pinName": "I0" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_3" }, "pin2": { - "compName": "WireCrossPoint#17", - "pinName": "" + "compName": "GUISplitter#5", + "pinName": "O2" }, - "name": "unnamedWire#154", + "name": "unnamedWire#109", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#14", - "pinName": "S0" + "compName": "GUISplitter#3", + "pinName": "O0" }, "pin2": { - "compName": "GUISplitter#9", - "pinName": "O3" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I0_1" }, - "name": "unnamedWire#155", + "name": "unnamedWire#97", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#13", - "pinName": "I0" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y011" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "Cx" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I011" }, - "name": "unnamedWire#152", + "name": "unnamedWire#118", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#13", - "pinName": "Y" + "compName": "GUISplitter#6", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#14", - "pinName": "I1" + "compName": "GUIAm2904RegCTInstrDecode#0", + "pinName": "CT_MUX" }, - "name": "unnamedWire#153", + "name": "unnamedWire#124", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#19", - "pinName": "" + "compName": "GUISplitter#7", + "pinName": "O2" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "SIOn" + "compName": "WireCrossPoint#28", + "pinName": "" }, - "name": "unnamedWire#158", + "name": "unnamedWire#134", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#20", - "pinName": "" + "compName": "GUIMerger#3", + "pinName": "I3" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "SIO0" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y4" }, - "name": "unnamedWire#159", + "name": "unnamedWire#92", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#14", - "pinName": "Y" + "compName": "GUISplitter#5", + "pinName": "O3" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "C0" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_4" }, - "name": "unnamedWire#156", + "name": "unnamedWire#110", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "QIOn" + "compName": "GUINandGate#3", + "pinName": "A" }, "pin2": { - "compName": "WireCrossPoint#18", + "compName": "WireCrossPoint#9", "pinName": "" }, - "name": "unnamedWire#157", + "name": "unnamedWire#42", "path": [] }, { "pin1": { - "compName": "GUIMerger#4", - "pinName": "I1" + "compName": "WireCrossPoint#25", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O12" + "compName": "WireCrossPoint#24", + "pinName": "" }, - "name": "unnamedWire#140", + "name": "unnamedWire#185", "path": [] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "I5" + "compName": "WireCrossPoint#8", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O5" + "compName": "GUINandGate#4", + "pinName": "A" }, - "name": "unnamedWire#9", + "name": "unnamedWire#37", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#11", - "pinName": "I1" + "compName": "DeserializedSubmodelComponent#12", + "pinName": "A" }, "pin2": { - "compName": "WireCrossPoint#22", - "pinName": "" + "compName": "GUISplitter#9", + "pinName": "O0" }, - "name": "unnamedWire#143", + "name": "unnamedWire#148", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O4" + "compName": "GUIMerger#0", + "pinName": "I5" }, "pin2": { - "compName": "GUIMerger#0", - "pinName": "I4" + "compName": "GUISplitter#0", + "pinName": "O5" }, - "name": "unnamedWire#8", + "name": "unnamedWire#9", "path": [] }, { "pin1": { - "compName": "GUISplitter#10", - "pinName": "I" + "compName": "GUISplitter#9", + "pinName": "O2" }, "pin2": { - "compName": "WireCrossPoint#3", + "compName": "WireCrossPoint#17", "pinName": "" }, - "name": "unnamedWire#144", + "name": "unnamedWire#149", "path": [] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "I3" + "compName": "GUISplitter#14", + "pinName": "I" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O3" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "QIOn_MUX" }, - "name": "unnamedWire#7", + "name": "unnamedWire#210", "path": [] }, { "pin1": { - "compName": "GUIMerger#4", - "pinName": "O" + "compName": "GUINandGate#0", + "pinName": "A" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "I12-11" + "compName": "WireCrossPoint#4", + "pinName": "" }, - "name": "unnamedWire#141", + "name": "unnamedWire#33", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O2" + "compName": "WireCrossPoint#14", + "pinName": "" }, "pin2": { - "compName": "GUIMerger#0", - "pinName": "I2" + "compName": "GUITriStateBuffer#0", + "pinName": "IN" }, - "name": "unnamedWire#6", + "name": "unnamedWire#112", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "C0_MUX" + "compName": "_submodelinterface", + "pinName": "IOVR" }, "pin2": { - "compName": "GUISplitter#9", - "pinName": "I" + "compName": "GUIMerger#2", + "pinName": "I3" }, - "name": "unnamedWire#142", - "path": [] + "name": "unnamedWire#17", + "path": [ + { + "x": 10.0, + "y": 125.0 + }, + { + "x": 10.0, + "y": 95.0 + } + ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#11", - "pinName": "Y" + "compName": "_submodelinterface", + "pinName": "_EC" }, "pin2": { - "compName": "DeserializedSubmodelComponent#12", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "A2" }, - "name": "unnamedWire#147", + "name": "unnamedWire#76", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#12", - "pinName": "A" + "compName": "WireCrossPoint#28", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#9", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#10", + "pinName": "A" }, - "name": "unnamedWire#148", + "name": "unnamedWire#204", "path": [] }, { "pin1": { - "compName": "GUISplitter#10", - "pinName": "O1" + "compName": "GUITriStateBuffer#3", + "pinName": "OUT" }, "pin2": { - "compName": "DeserializedSubmodelComponent#11", - "pinName": "I0" + "compName": "WireCrossPoint#20", + "pinName": "" }, - "name": "unnamedWire#145", + "name": "unnamedWire#163", "path": [] }, { "pin1": { - "compName": "GUISplitter#9", - "pinName": "O1" + "compName": "GUINandGate#9", + "pinName": "A" }, "pin2": { - "compName": "DeserializedSubmodelComponent#11", - "pinName": "S0" + "compName": "WireCrossPoint#11", + "pinName": "" }, - "name": "unnamedWire#146", + "name": "unnamedWire#63", "path": [] }, { "pin1": { "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_MUX" + "pinName": "muSR_CINV" }, "pin2": { "compName": "DeserializedSubmodelComponent#1", - "pinName": "MUX" + "pinName": "CINV" }, - "name": "unnamedWire#1", + "name": "unnamedWire#21", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "C" - }, - "pin2": { - "compName": "WireCrossPoint#0", - "pinName": "" - }, - "name": "unnamedWire#0", - "path": [ - { - "x": 5.0, - "y": 25.0 - }, - { - "x": 5.0, - "y": 10.0 - } - ] - }, - { - "pin1": { - "compName": "GUISplitter#9", - "pinName": "O2" + "compName": "GUINandGate#10", + "pinName": "Y" }, "pin2": { - "compName": "WireCrossPoint#17", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "A" }, - "name": "unnamedWire#149", + "name": "unnamedWire#83", "path": [] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "I1" + "compName": "GUISplitter#11", + "pinName": "O2" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#15", + "pinName": "S1" }, - "name": "unnamedWire#5", + "name": "unnamedWire#168", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O6" + "compName": "DeserializedSubmodelComponent#14", + "pinName": "I0" }, "pin2": { - "compName": "GUIMerger#1", - "pinName": "I0" + "compName": "WireCrossPoint#17", + "pinName": "" }, - "name": "unnamedWire#10", + "name": "unnamedWire#154", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#18", + "pinName": "Y" }, "pin2": { - "compName": "GUIMerger#0", + "compName": "DeserializedSubmodelComponent#17", "pinName": "I0" }, - "name": "unnamedWire#4", + "name": "unnamedWire#221", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I" + "compName": "WireCrossPoint#21", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#23", + "pinName": "I011" }, - "name": "unnamedWire#3", + "name": "unnamedWire#192", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O8" + "compName": "GUISplitter#11", + "pinName": "O0" }, "pin2": { - "compName": "GUIMerger#1", - "pinName": "I2" + "compName": "DeserializedSubmodelComponent#15", + "pinName": "I00" }, - "name": "unnamedWire#12", + "name": "unnamedWire#167", "path": [] }, { "pin1": { - "compName": "GUIMerger#1", - "pinName": "I1" + "compName": "GUISplitter#2", + "pinName": "O1" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O7" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "S0" }, - "name": "unnamedWire#11", + "name": "unnamedWire#96", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "muSR_OVRRET" + "compName": "GUISplitter#5", + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "OVRRET" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_1" }, - "name": "unnamedWire#2", + "name": "unnamedWire#107", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "GUISplitter#1", + "pinName": "O2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "I" + "compName": "_submodelinterface", + "pinName": "YN" }, - "name": "unnamedWire#132", + "name": "unnamedWire#51", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y1" }, "pin2": { - "compName": "GUISplitter#7", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I1_1" }, - "name": "unnamedWire#133", + "name": "unnamedWire#85", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#8", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I1_4" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "CT_INV" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y4" }, - "name": "unnamedWire#130", + "name": "unnamedWire#88", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#10", + "compName": "DeserializedSubmodelComponent#12", "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#9", + "compName": "DeserializedSubmodelComponent#13", "pinName": "I1" }, - "name": "unnamedWire#131", + "name": "unnamedWire#151", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#16", - "pinName": "" + "compName": "GUIMerger#1", + "pinName": "I1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "M" + "compName": "GUISplitter#0", + "pinName": "O7" }, - "name": "unnamedWire#136", + "name": "unnamedWire#11", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#16", - "pinName": "" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "SIO0_MUX" }, "pin2": { - "compName": "GUISplitter#8", + "compName": "GUISplitter#11", "pinName": "I" }, - "name": "unnamedWire#137", + "name": "unnamedWire#166", "path": [] }, { "pin1": { - "compName": "GUISplitter#7", - "pinName": "O2" - }, - "pin2": { - "compName": "WireCrossPoint#28", + "compName": "WireCrossPoint#13", "pinName": "" }, - "name": "unnamedWire#134", - "path": [] - }, - { - "pin1": { - "compName": "GUISplitter#8", - "pinName": "O2" - }, "pin2": { - "compName": "WireCrossPoint#27", - "pinName": "" + "compName": "GUINandGate#10", + "pinName": "A" }, - "name": "unnamedWire#135", + "name": "unnamedWire#80", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "OEN" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "I0_3" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "B" + "compName": "GUISplitter#3", + "pinName": "O2" }, - "name": "unnamedWire#138", + "name": "unnamedWire#99", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O11" + "compName": "WireCrossPoint#11", + "pinName": "" }, "pin2": { - "compName": "GUIMerger#4", - "pinName": "I0" + "compName": "WireCrossPoint#12", + "pinName": "" }, - "name": "unnamedWire#139", + "name": "unnamedWire#64", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y000" + "compName": "GUITriStateBuffer#2", + "pinName": "OUT" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I000" + "compName": "WireCrossPoint#19", + "pinName": "" }, - "name": "unnamedWire#121", + "name": "unnamedWire#162", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#8", - "pinName": "Y" + "compName": "GUISplitter#13", + "pinName": "I" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "CT" + "compName": "GUIAm2904ShiftInstrDecode#0", + "pinName": "SIOn_MUX" }, - "name": "unnamedWire#122", + "name": "unnamedWire#188", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I001" + "compName": "GUISplitter#5", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y001" + "compName": "WireCrossPoint#1", + "pinName": "" }, - "name": "unnamedWire#120", + "name": "unnamedWire#111", "path": [] }, { "pin1": { - "compName": "GUISplitter#6", - "pinName": "O0" + "compName": "GUISplitter#15", + "pinName": "O1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", + "compName": "DeserializedSubmodelComponent#17", "pinName": "S0" }, - "name": "unnamedWire#125", + "name": "unnamedWire#228", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "S1" + "compName": "WireCrossPoint#26", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#6", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#22", + "pinName": "I11" }, - "name": "unnamedWire#126", + "name": "unnamedWire#201", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#9", + "compName": "GUINandGate#4", "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#8", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "_EZ" }, - "name": "unnamedWire#123", + "name": "unnamedWire#46", "path": [] }, { "pin1": { - "compName": "GUISplitter#6", - "pinName": "I" + "compName": "WireCrossPoint#16", + "pinName": "" }, "pin2": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "CT_MUX" + "compName": "GUISplitter#8", + "pinName": "I" }, - "name": "unnamedWire#124", + "name": "unnamedWire#137", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "Y" + "compName": "GUISplitter#10", + "pinName": "O1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#9", + "compName": "DeserializedSubmodelComponent#11", "pinName": "I0" }, - "name": "unnamedWire#129", - "path": [] - }, - { - "pin1": { - "compName": "GUISplitter#6", - "pinName": "O2" - }, - "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "S2" - }, - "name": "unnamedWire#127", + "name": "unnamedWire#145", "path": [] }, { "pin1": { - "compName": "GUIAm2904RegCTInstrDecode#0", - "pinName": "CT_EXP" + "compName": "WireCrossPoint#13", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#9", - "pinName": "S0" + "compName": "_submodelinterface", + "pinName": "_OEY" }, - "name": "unnamedWire#128", + "name": "unnamedWire#82", "path": [] } - ] + ], + "version": "0.1.1" }, "symbolRendererSnippetID": "simpleRectangularLike", "symbolRendererParams": { @@ -3855,5 +3982,6 @@ mograsim version: 0.1.3 "highLevelStateHandlerParams": { "subcomponentHighLevelStates": {}, "atomicHighLevelStates": {} - } + }, + "version": "0.1.4" } \ No newline at end of file diff --git a/net.mograsim.logic.model.editor/components/am2904/GUIAm2904MSR.json b/net.mograsim.logic.model.editor/components/am2904/GUIAm2904MSR.json index 3296f39c..4a244645 100644 --- a/net.mograsim.logic.model.editor/components/am2904/GUIAm2904MSR.json +++ b/net.mograsim.logic.model.editor/components/am2904/GUIAm2904MSR.json @@ -1,4 +1,3 @@ -mograsim version: 0.1.3 { "width": 45.0, "height": 46.0, @@ -100,62 +99,78 @@ mograsim version: 0.1.3 "logicWidth": 1 } ], + "innerScale": 0.1, "submodel": { - "innerScale": 0.1, - "subComps": [ + "components": [ { "id": "WireCrossPoint", - "name": "WireCrossPoint#14", + "name": "WireCrossPoint#2", "pos": { - "x": 89.0, - "y": 104.0 + "x": 419.0, + "y": 184.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#13", + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#0", "pos": { - "x": 194.0, - "y": 234.0 - }, - "params": 1 + "x": 55.0, + "y": 110.0 + } }, { - "id": "GUINandGate", - "name": "GUINandGate#0", + "id": "GUIMerger", + "name": "GUIMerger#0", "pos": { - "x": 325.0, - "y": 90.0 + "x": 435.0, + "y": 175.0 }, - "params": 1 + "params": 4 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#16", + "name": "WireCrossPoint#5", "pos": { - "x": 319.0, - "y": 104.0 + "x": 84.0, + "y": 344.0 }, "params": 1 }, + { + "id": "GUISplitter", + "name": "GUISplitter#0", + "pos": { + "x": 5.0, + "y": 35.0 + }, + "params": 4 + }, + { + "id": "GUIdff4_finewe", + "name": "GUIdff4_finewe#0", + "pos": { + "x": 375.0, + "y": 170.0 + } + }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#15", + "name": "WireCrossPoint#8", "pos": { - "x": 319.0, - "y": 294.0 + "x": 74.0, + "y": 314.0 }, "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#3", + "id": "WireCrossPoint", + "name": "WireCrossPoint#3", "pos": { - "x": 5.0, - "y": 295.0 + "x": 424.0, + "y": 194.0 }, - "params": 4 + "params": 1 }, { "id": "GUISplitter", @@ -177,64 +192,103 @@ mograsim version: 0.1.3 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#1", + "name": "WireCrossPoint#4", "pos": { - "x": 414.0, - "y": 174.0 + "x": 429.0, + "y": 204.0 }, "params": 1 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#0", + "name": "WireCrossPoint#11", "pos": { - "x": 29.0, - "y": 284.0 + "x": 89.0, + "y": 94.0 }, "params": 1 }, { - "id": "GUISplitter", - "name": "GUISplitter#0", + "id": "WireCrossPoint", + "name": "WireCrossPoint#12", "pos": { - "x": 5.0, - "y": 35.0 + "x": 19.0, + "y": 294.0 }, - "params": 4 + "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#3", + "id": "GUINandGate", + "name": "GUINandGate#0", "pos": { - "x": 424.0, - "y": 194.0 + "x": 325.0, + "y": 90.0 }, "params": 1 }, { - "id": "WireCrossPoint", - "name": "WireCrossPoint#2", + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#5", "pos": { - "x": 419.0, - "y": 184.0 - }, - "params": 1 + "x": 200.0, + "y": 230.0 + } + }, + { + "id": "GUImux1", + "name": "DeserializedSubmodelComponent#7", + "pos": { + "x": 325.0, + "y": 290.0 + } + }, + { + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#2", + "pos": { + "x": 150.0, + "y": 280.0 + } }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#5", + "name": "WireCrossPoint#0", "pos": { - "x": 84.0, - "y": 344.0 + "x": 29.0, + "y": 284.0 }, "params": 1 }, + { + "id": "GUIxor", + "name": "DeserializedSubmodelComponent#1", + "pos": { + "x": 35.0, + "y": 250.0 + } + }, + { + "id": "GUInot4", + "name": "DeserializedSubmodelComponent#3", + "pos": { + "x": 100.0, + "y": 330.0 + } + }, + { + "id": "GUImux1_4", + "name": "DeserializedSubmodelComponent#4", + "pos": { + "x": 110.0, + "y": 60.0 + } + }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#4", + "name": "WireCrossPoint#1", "pos": { - "x": 429.0, - "y": 204.0 + "x": 414.0, + "y": 174.0 }, "params": 1 }, @@ -258,38 +312,13 @@ mograsim version: 0.1.3 }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#9", - "pos": { - "x": 49.0, - "y": 114.0 - }, - "params": 1 - }, - { - "id": "WireCrossPoint", - "name": "WireCrossPoint#8", + "name": "WireCrossPoint#14", "pos": { - "x": 74.0, - "y": 314.0 + "x": 89.0, + "y": 104.0 }, "params": 1 }, - { - "id": "GUIdff4_finewe", - "name": "GUIdff4_finewe#0", - "pos": { - "x": 375.0, - "y": 170.0 - } - }, - { - "id": "GUIxor", - "name": "DeserializedSubmodelComponent#1", - "pos": { - "x": 35.0, - "y": 250.0 - } - }, { "id": "WireCrossPoint", "name": "WireCrossPoint#10", @@ -299,70 +328,48 @@ mograsim version: 0.1.3 }, "params": 1 }, - { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#0", - "pos": { - "x": 55.0, - "y": 110.0 - } - }, - { - "id": "GUInot4", - "name": "DeserializedSubmodelComponent#3", - "pos": { - "x": 100.0, - "y": 330.0 - } - }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#12", + "name": "WireCrossPoint#15", "pos": { - "x": 19.0, + "x": 319.0, "y": 294.0 }, "params": 1 }, - { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#2", - "pos": { - "x": 150.0, - "y": 280.0 - } - }, { "id": "WireCrossPoint", - "name": "WireCrossPoint#11", + "name": "WireCrossPoint#9", "pos": { - "x": 89.0, - "y": 94.0 + "x": 49.0, + "y": 114.0 }, "params": 1 }, { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#5", + "id": "WireCrossPoint", + "name": "WireCrossPoint#16", "pos": { - "x": 200.0, - "y": 230.0 - } + "x": 319.0, + "y": 104.0 + }, + "params": 1 }, { - "id": "GUImux1_4", - "name": "DeserializedSubmodelComponent#4", + "id": "WireCrossPoint", + "name": "WireCrossPoint#13", "pos": { - "x": 110.0, - "y": 60.0 - } + "x": 194.0, + "y": 234.0 + }, + "params": 1 }, { - "id": "GUImux1", - "name": "DeserializedSubmodelComponent#7", + "id": "GUIand", + "name": "DeserializedSubmodelComponent#8", "pos": { - "x": 325.0, - "y": 290.0 + "x": 380.0, + "y": 85.0 } }, { @@ -374,367 +381,347 @@ mograsim version: 0.1.3 } }, { - "id": "GUIMerger", - "name": "GUIMerger#0", + "id": "GUISplitter", + "name": "GUISplitter#3", "pos": { - "x": 435.0, - "y": 175.0 + "x": 5.0, + "y": 295.0 }, "params": 4 - }, - { - "id": "GUIand", - "name": "DeserializedSubmodelComponent#8", - "pos": { - "x": 380.0, - "y": 85.0 - } } ], - "innerWires": [ + "wires": [ { "pin1": { - "compName": "WireCrossPoint#3", - "pinName": "" + "compName": "GUISplitter#0", + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "A3" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I0_1" }, - "name": "unnamedWire#36", + "name": "unnamedWire#12", "path": [ { - "x": 425.0, - "y": 390.0 - }, - { - "x": 90.0, - "y": 390.0 + "x": 35.0, + "y": 35.0 }, { - "x": 90.0, - "y": 355.0 + "x": 35.0, + "y": 125.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#2", + "compName": "WireCrossPoint#13", "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#5", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "S0" }, - "name": "unnamedWire#35", - "path": [ - { - "x": 420.0, - "y": 385.0 - }, - { - "x": 85.0, - "y": 385.0 - } - ] + "name": "unnamedWire#68", + "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y3" + "compName": "_submodelinterface", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", + "compName": "GUISplitter#1", + "pinName": "I" + }, + "name": "unnamedWire#11", + "path": [] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#5", "pinName": "I0_3" }, - "name": "unnamedWire#79", + "pin2": { + "compName": "WireCrossPoint#8", + "pinName": "" + }, + "name": "unnamedWire#61", "path": [ { - "x": 205.0, - "y": 85.0 - }, - { - "x": 205.0, - "y": 215.0 + "x": 75.0, + "y": 265.0 } ] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "A" }, "pin2": { - "compName": "WireCrossPoint#12", + "compName": "WireCrossPoint#7", "pinName": "" }, - "name": "unnamedWire#38", + "name": "unnamedWire#25", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#4", - "pinName": "" + "compName": "GUISplitter#2", + "pinName": "O2" }, "pin2": { - "compName": "WireCrossPoint#6", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "S0" }, - "name": "unnamedWire#37", + "name": "unnamedWire#82", "path": [ { - "x": 430.0, - "y": 395.0 + "x": 245.0, + "y": 445.0 }, { - "x": 95.0, - "y": 395.0 + "x": 245.0, + "y": 185.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I0_4" + "compName": "WireCrossPoint#0", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#5", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "S0" }, - "name": "unnamedWire#39", - "path": [ - { - "x": 85.0, - "y": 325.0 - } - ] + "name": "unnamedWire#43", + "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y1" + "compName": "WireCrossPoint#0", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I0_1" + "compName": "WireCrossPoint#7", + "pinName": "" }, - "name": "unnamedWire#81", - "path": [ - { - "x": 215.0, - "y": 65.0 - }, - { - "x": 215.0, - "y": 195.0 - } - ] + "name": "unnamedWire#21", + "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I0_2" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I1_2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", + "compName": "DeserializedSubmodelComponent#0", "pinName": "Y2" }, - "name": "unnamedWire#80", - "path": [ - { - "x": 210.0, - "y": 205.0 - }, - { - "x": 210.0, - "y": 75.0 - } - ] + "name": "unnamedWire#46", + "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "GUISplitter#2", + "pinName": "O1" }, "pin2": { - "compName": "WireCrossPoint#15", + "compName": "WireCrossPoint#13", "pinName": "" }, - "name": "unnamedWire#83", - "path": [] + "name": "unnamedWire#67", + "path": [ + { + "x": 195.0, + "y": 435.0 + } + ] }, { "pin1": { - "compName": "GUISplitter#2", - "pinName": "O2" + "compName": "WireCrossPoint#3", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "A3" }, - "name": "unnamedWire#82", + "name": "unnamedWire#36", "path": [ { - "x": 245.0, - "y": 445.0 + "x": 425.0, + "y": 390.0 }, { - "x": 245.0, - "y": 185.0 + "x": 90.0, + "y": 390.0 + }, + { + "x": 90.0, + "y": 355.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I0_3" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I1_2" }, "pin2": { - "compName": "WireCrossPoint#8", - "pinName": "" + "compName": "GUISplitter#1", + "pinName": "O1" }, - "name": "unnamedWire#41", + "name": "unnamedWire#17", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I1_4" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "Y4" }, - "name": "unnamedWire#85", + "name": "unnamedWire#48", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#6", + "compName": "WireCrossPoint#10", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", + "compName": "DeserializedSubmodelComponent#4", "pinName": "I0_2" }, - "name": "unnamedWire#40", - "path": [ - { - "x": 95.0, - "y": 305.0 - } - ] + "name": "unnamedWire#53", + "path": [] }, { "pin1": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "C" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "COVD_EN" + "compName": "GUIdff4_finewe#0", + "pinName": "C" }, - "name": "unnamedWire#84", + "name": "unnamedWire#0", "path": [ { - "x": 275.0, - "y": 295.0 + "x": 140.0, + "y": 415.0 + }, + { + "x": 255.0, + "y": 415.0 + }, + { + "x": 255.0, + "y": 280.0 + }, + { + "x": 340.0, + "y": 280.0 + }, + { + "x": 340.0, + "y": 175.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#0", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I1_2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "S0" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y2" }, - "name": "unnamedWire#43", + "name": "unnamedWire#31", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y2" + "compName": "WireCrossPoint#2", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I0" + "compName": "WireCrossPoint#5", + "pinName": "" }, - "name": "unnamedWire#87", + "name": "unnamedWire#35", "path": [ { - "x": 305.0, - "y": 195.0 + "x": 420.0, + "y": 385.0 }, { - "x": 305.0, - "y": 305.0 + "x": 85.0, + "y": 385.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#7", + "compName": "WireCrossPoint#15", "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#9", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "COVD_EN" }, - "name": "unnamedWire#42", + "name": "unnamedWire#84", "path": [ { - "x": 30.0, - "y": 230.0 - }, - { - "x": 50.0, - "y": 230.0 + "x": 275.0, + "y": 295.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "COVD_V" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y3" }, "pin2": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "I1" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I0_3" }, - "name": "unnamedWire#86", + "name": "unnamedWire#79", "path": [ { - "x": 375.0, - "y": 325.0 - }, - { - "x": 320.0, - "y": 325.0 + "x": 205.0, + "y": 85.0 }, { - "x": 320.0, - "y": 315.0 + "x": 205.0, + "y": 215.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#9", - "pinName": "" + "compName": "GUISplitter#3", + "pinName": "O1" }, "pin2": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "DeserializedSubmodelComponent#1", + "pinName": "B" }, - "name": "unnamedWire#45", + "name": "unnamedWire#23", "path": [ { - "x": 50.0, - "y": 105.0 + "x": 25.0, + "y": 305.0 + }, + { + "x": 25.0, + "y": 265.0 } ] }, @@ -752,275 +739,281 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", + "compName": "DeserializedSubmodelComponent#5", "pinName": "Y1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", + "compName": "DeserializedSubmodelComponent#6", "pinName": "I1_1" }, - "name": "unnamedWire#44", + "name": "unnamedWire#77", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#7", - "pinName": "Y" - }, - "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "D2" - }, - "name": "unnamedWire#88", - "path": [ - { - "x": 365.0, - "y": 295.0 - }, - { - "x": 365.0, - "y": 235.0 - } - ] - }, - { - "pin1": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "Y3" + "compName": "WireCrossPoint#12", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I1_3" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I0_1" }, - "name": "unnamedWire#47", + "name": "unnamedWire#57", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I1_2" + "compName": "_submodelinterface", + "pinName": "I" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "Y2" + "compName": "GUISplitter#3", + "pinName": "I" }, - "name": "unnamedWire#46", + "name": "unnamedWire#22", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "GUISplitter#0", + "pinName": "O2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I0_4" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I0_3" }, - "name": "unnamedWire#49", - "path": [] + "name": "unnamedWire#14", + "path": [ + { + "x": 25.0, + "y": 55.0 + }, + { + "x": 25.0, + "y": 145.0 + } + ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I1_4" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "Y1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "Y4" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_1" }, - "name": "unnamedWire#48", + "name": "unnamedWire#63", "path": [] }, { "pin1": { - "compName": "GUIdff4_finewe#0", - "pinName": "Q2" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I0_2" }, "pin2": { - "compName": "WireCrossPoint#2", - "pinName": "" + "compName": "GUISplitter#0", + "pinName": "O1" }, - "name": "unnamedWire#9", - "path": [] + "name": "unnamedWire#13", + "path": [ + { + "x": 30.0, + "y": 135.0 + }, + { + "x": 30.0, + "y": 45.0 + } + ] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "I1" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "Y1" }, "pin2": { - "compName": "WireCrossPoint#2", - "pinName": "" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I1_1" }, - "name": "unnamedWire#8", + "name": "unnamedWire#44", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#1", + "compName": "WireCrossPoint#14", "pinName": "" }, "pin2": { - "compName": "GUIMerger#0", - "pinName": "I0" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I0_4" }, - "name": "unnamedWire#7", + "name": "unnamedWire#49", "path": [] }, { "pin1": { - "compName": "GUIdff4_finewe#0", - "pinName": "Q1" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I0_4" }, "pin2": { - "compName": "WireCrossPoint#1", - "pinName": "" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y4" }, - "name": "unnamedWire#6", - "path": [] + "name": "unnamedWire#78", + "path": [ + { + "x": 200.0, + "y": 225.0 + }, + { + "x": 200.0, + "y": 95.0 + } + ] }, { "pin1": { - "compName": "WireCrossPoint#16", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "Y3" }, "pin2": { - "compName": "WireCrossPoint#15", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I1_3" }, - "name": "unnamedWire#90", + "name": "unnamedWire#65", "path": [] }, { "pin1": { - "compName": "GUINandGate#0", - "pinName": "A" + "compName": "_submodelinterface", + "pinName": "MUX" }, "pin2": { - "compName": "WireCrossPoint#16", - "pinName": "" + "compName": "GUISplitter#2", + "pinName": "I" }, - "name": "unnamedWire#92", + "name": "unnamedWire#20", "path": [ { - "x": 320.0, - "y": 95.0 + "x": 40.0, + "y": 435.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#16", + "compName": "GUIMerger#0", + "pinName": "I3" + }, + "pin2": { + "compName": "WireCrossPoint#4", "pinName": "" }, + "name": "unnamedWire#28", + "path": [] + }, + { + "pin1": { + "compName": "GUISplitter#1", + "pinName": "O2" + }, "pin2": { - "compName": "GUINandGate#0", - "pinName": "B" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I1_3" }, - "name": "unnamedWire#91", + "name": "unnamedWire#18", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EOVR" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I0_1" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "_WE4" + "compName": "WireCrossPoint#10", + "pinName": "" }, - "name": "unnamedWire#1", + "name": "unnamedWire#54", "path": [ { - "x": 355.0, - "y": 30.0 - }, - { - "x": 355.0, - "y": 215.0 + "x": 90.0, + "y": 75.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#10", - "pinName": "" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y3" }, "pin2": { - "compName": "WireCrossPoint#11", - "pinName": "" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I1_3" }, - "name": "unnamedWire#50", + "name": "unnamedWire#32", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "C" + "compName": "WireCrossPoint#4", + "pinName": "" }, "pin2": { "compName": "GUIdff4_finewe#0", - "pinName": "C" + "pinName": "Q4" }, - "name": "unnamedWire#0", - "path": [ - { - "x": 140.0, - "y": 415.0 - }, - { - "x": 255.0, - "y": 415.0 - }, - { - "x": 255.0, - "y": 280.0 - }, - { - "x": 340.0, - "y": 280.0 - }, - { - "x": 340.0, - "y": 175.0 - } - ] + "name": "unnamedWire#29", + "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", + "compName": "DeserializedSubmodelComponent#2", "pinName": "I0_3" }, "pin2": { - "compName": "WireCrossPoint#11", + "compName": "WireCrossPoint#8", "pinName": "" }, - "name": "unnamedWire#52", + "name": "unnamedWire#41", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#11", - "pinName": "" + "compName": "GUISplitter#1", + "pinName": "O3" }, "pin2": { - "compName": "WireCrossPoint#14", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I1_4" }, - "name": "unnamedWire#51", + "name": "unnamedWire#19", "path": [] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "O" + "compName": "WireCrossPoint#1", + "pinName": "" }, "pin2": { - "compName": "_submodelinterface", - "pinName": "Q" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "A1" }, - "name": "unnamedWire#5", - "path": [] + "name": "unnamedWire#34", + "path": [ + { + "x": 415.0, + "y": 380.0 + }, + { + "x": 80.0, + "y": 380.0 + }, + { + "x": 80.0, + "y": 335.0 + } + ] }, { "pin1": { @@ -1036,331 +1029,306 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I0_1" + "compName": "GUISplitter#3", + "pinName": "O0" }, "pin2": { - "compName": "WireCrossPoint#10", + "compName": "WireCrossPoint#12", "pinName": "" }, - "name": "unnamedWire#54", - "path": [ - { - "x": 90.0, - "y": 75.0 - } - ] + "name": "unnamedWire#38", + "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EZ" + "compName": "WireCrossPoint#9", + "pinName": "" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "_WE1" + "compName": "WireCrossPoint#14", + "pinName": "" }, - "name": "unnamedWire#4", + "name": "unnamedWire#45", "path": [ { - "x": 55.0, - "y": 15.0 - }, - { - "x": 370.0, - "y": 15.0 - }, - { - "x": 370.0, - "y": 185.0 + "x": 50.0, + "y": 105.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#10", - "pinName": "" - }, - "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "I0_2" - }, - "name": "unnamedWire#53", - "path": [] - }, - { - "pin1": { - "compName": "GUISplitter#0", - "pinName": "O0" + "compName": "GUINandGate#0", + "pinName": "A" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I0_1" + "compName": "WireCrossPoint#16", + "pinName": "" }, - "name": "unnamedWire#12", + "name": "unnamedWire#92", "path": [ { - "x": 35.0, - "y": 35.0 - }, - { - "x": 35.0, - "y": 125.0 + "x": 320.0, + "y": 95.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "A2" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I0_3" }, "pin2": { - "compName": "WireCrossPoint#5", + "compName": "WireCrossPoint#11", "pinName": "" }, - "name": "unnamedWire#56", + "name": "unnamedWire#52", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EC" + "compName": "GUISplitter#2", + "pinName": "O0" }, "pin2": { - "compName": "DeserializedSubmodelComponent#8", - "pinName": "A" + "compName": "WireCrossPoint#0", + "pinName": "" }, - "name": "unnamedWire#3", + "name": "unnamedWire#24", "path": [ { - "x": 155.0, - "y": 20.0 + "x": 60.0, + "y": 425.0 }, { - "x": 365.0, - "y": 20.0 + "x": 60.0, + "y": 415.0 }, { - "x": 365.0, - "y": 90.0 + "x": 30.0, + "y": 415.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "_EN" + "compName": "WireCrossPoint#4", + "pinName": "" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "_WE3" + "compName": "WireCrossPoint#6", + "pinName": "" }, - "name": "unnamedWire#2", + "name": "unnamedWire#37", "path": [ { - "x": 255.0, - "y": 25.0 - }, - { - "x": 360.0, - "y": 25.0 + "x": 430.0, + "y": 395.0 }, { - "x": 360.0, - "y": 205.0 + "x": 95.0, + "y": 395.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "Y" - }, - "pin2": { "compName": "GUISplitter#1", - "pinName": "I" - }, - "name": "unnamedWire#11", - "path": [] - }, - { - "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "A4" + "pinName": "O0" }, "pin2": { - "compName": "WireCrossPoint#6", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I1_1" }, - "name": "unnamedWire#55", + "name": "unnamedWire#16", "path": [] }, { "pin1": { - "compName": "GUISplitter#0", - "pinName": "O2" + "compName": "_submodelinterface", + "pinName": "_EOVR" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I0_3" + "compName": "GUIdff4_finewe#0", + "pinName": "_WE4" }, - "name": "unnamedWire#14", + "name": "unnamedWire#1", "path": [ { - "x": 25.0, - "y": 55.0 + "x": 355.0, + "y": 30.0 }, { - "x": 25.0, - "y": 145.0 + "x": 355.0, + "y": 215.0 } ] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O2" + "compName": "WireCrossPoint#9", + "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#8", - "pinName": "" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "S0" }, - "name": "unnamedWire#58", + "name": "unnamedWire#93", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I0_2" + "compName": "GUIMerger#0", + "pinName": "O" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O1" + "compName": "_submodelinterface", + "pinName": "Q" }, - "name": "unnamedWire#13", - "path": [ - { - "x": 30.0, - "y": 135.0 - }, - { - "x": 30.0, - "y": 45.0 - } - ] + "name": "unnamedWire#5", + "path": [] }, { "pin1": { - "compName": "WireCrossPoint#12", - "pinName": "" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y3" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I0_1" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I1_3" }, - "name": "unnamedWire#57", + "name": "unnamedWire#75", "path": [] }, { "pin1": { - "compName": "GUISplitter#1", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "A2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I1_1" + "compName": "WireCrossPoint#5", + "pinName": "" }, - "name": "unnamedWire#16", + "name": "unnamedWire#56", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I0_4" + "compName": "_submodelinterface", + "pinName": "COVD_V" }, "pin2": { - "compName": "GUISplitter#0", - "pinName": "O3" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I1" }, - "name": "unnamedWire#15", + "name": "unnamedWire#86", "path": [ { - "x": 20.0, - "y": 155.0 + "x": 375.0, + "y": 325.0 }, { - "x": 20.0, - "y": 65.0 + "x": 320.0, + "y": 325.0 + }, + { + "x": 320.0, + "y": 315.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#12", + "compName": "WireCrossPoint#13", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_1" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "S0" }, - "name": "unnamedWire#59", + "name": "unnamedWire#69", "path": [ { - "x": 20.0, - "y": 245.0 + "x": 105.0, + "y": 235.0 + }, + { + "x": 105.0, + "y": 65.0 } ] }, { "pin1": { - "compName": "GUISplitter#1", - "pinName": "O2" + "compName": "GUIdff4_finewe#0", + "pinName": "Q2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I1_3" + "compName": "WireCrossPoint#2", + "pinName": "" }, - "name": "unnamedWire#18", + "name": "unnamedWire#9", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#0", + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y4" + }, + "pin2": { + "compName": "GUIdff4_finewe#0", + "pinName": "D4" + }, + "name": "unnamedWire#70", + "path": [ + { + "x": 295.0, + "y": 215.0 + }, + { + "x": 295.0, + "y": 255.0 + } + ] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#5", "pinName": "I1_2" }, "pin2": { - "compName": "GUISplitter#1", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "Y2" }, - "name": "unnamedWire#17", + "name": "unnamedWire#64", "path": [] }, { "pin1": { - "compName": "GUISplitter#1", - "pinName": "O3" + "compName": "WireCrossPoint#1", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#0", - "pinName": "I1_4" + "compName": "GUIMerger#0", + "pinName": "I0" }, - "name": "unnamedWire#19", + "name": "unnamedWire#7", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_3" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I0_4" }, "pin2": { - "compName": "WireCrossPoint#8", + "compName": "WireCrossPoint#5", "pinName": "" }, - "name": "unnamedWire#61", + "name": "unnamedWire#39", "path": [ - { - "x": 75.0, - "y": 265.0 + { + "x": 85.0, + "y": 325.0 } ] }, @@ -1378,139 +1346,144 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "Y1" + "compName": "WireCrossPoint#15", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_1" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "S0" }, - "name": "unnamedWire#63", + "name": "unnamedWire#85", "path": [] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O3" - }, - "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I0_4" - }, - "name": "unnamedWire#62", - "path": [ - { - "x": 80.0, - "y": 325.0 - }, - { - "x": 80.0, - "y": 275.0 - } - ] - }, - { - "pin1": { - "compName": "WireCrossPoint#0", + "compName": "WireCrossPoint#3", "pinName": "" }, "pin2": { - "compName": "WireCrossPoint#7", - "pinName": "" + "compName": "GUIMerger#0", + "pinName": "I2" }, - "name": "unnamedWire#21", + "name": "unnamedWire#27", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "Y3" + "compName": "WireCrossPoint#16", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_3" + "compName": "GUINandGate#0", + "pinName": "B" }, - "name": "unnamedWire#65", + "name": "unnamedWire#91", "path": [] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "MUX" + "compName": "WireCrossPoint#6", + "pinName": "" }, "pin2": { - "compName": "GUISplitter#2", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I0_2" }, - "name": "unnamedWire#20", + "name": "unnamedWire#40", "path": [ { - "x": 40.0, - "y": 435.0 + "x": 95.0, + "y": 305.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "I1_2" + "compName": "WireCrossPoint#7", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "Y2" + "compName": "WireCrossPoint#9", + "pinName": "" }, - "name": "unnamedWire#64", - "path": [] + "name": "unnamedWire#42", + "path": [ + { + "x": 30.0, + "y": 230.0 + }, + { + "x": 50.0, + "y": 230.0 + } + ] }, { "pin1": { - "compName": "GUISplitter#2", - "pinName": "O1" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y1" }, "pin2": { - "compName": "WireCrossPoint#13", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I0_1" }, - "name": "unnamedWire#67", + "name": "unnamedWire#81", "path": [ { - "x": 195.0, - "y": 435.0 + "x": 215.0, + "y": 65.0 + }, + { + "x": 215.0, + "y": 195.0 } ] }, { "pin1": { - "compName": "GUISplitter#3", - "pinName": "O1" + "compName": "_submodelinterface", + "pinName": "_EZ" }, "pin2": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "B" + "compName": "GUIdff4_finewe#0", + "pinName": "_WE1" }, - "name": "unnamedWire#23", + "name": "unnamedWire#4", "path": [ { - "x": 25.0, - "y": 305.0 + "x": 55.0, + "y": 15.0 }, { - "x": 25.0, - "y": 265.0 + "x": 370.0, + "y": 15.0 + }, + { + "x": 370.0, + "y": 185.0 } ] }, { "pin1": { - "compName": "_submodelinterface", - "pinName": "I" + "compName": "GUIdff4_finewe#0", + "pinName": "D1" }, "pin2": { - "compName": "GUISplitter#3", - "pinName": "I" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y1" }, - "name": "unnamedWire#22", - "path": [] + "name": "unnamedWire#73", + "path": [ + { + "x": 310.0, + "y": 225.0 + }, + { + "x": 310.0, + "y": 185.0 + } + ] }, { "pin1": { @@ -1526,84 +1499,128 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "WireCrossPoint#13", - "pinName": "" + "compName": "_submodelinterface", + "pinName": "_EN" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "S0" + "compName": "GUIdff4_finewe#0", + "pinName": "_WE3" }, - "name": "unnamedWire#69", + "name": "unnamedWire#2", "path": [ { - "x": 105.0, - "y": 235.0 + "x": 255.0, + "y": 25.0 }, { - "x": 105.0, - "y": 65.0 + "x": 360.0, + "y": 25.0 + }, + { + "x": 360.0, + "y": 205.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#1", - "pinName": "A" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "A4" }, "pin2": { - "compName": "WireCrossPoint#7", + "compName": "WireCrossPoint#6", "pinName": "" }, - "name": "unnamedWire#25", + "name": "unnamedWire#55", "path": [] }, { "pin1": { - "compName": "GUISplitter#2", - "pinName": "O0" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I1_4" }, "pin2": { - "compName": "WireCrossPoint#0", - "pinName": "" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y4" }, - "name": "unnamedWire#24", + "name": "unnamedWire#33", + "path": [] + }, + { + "pin1": { + "compName": "DeserializedSubmodelComponent#8", + "pinName": "Y" + }, + "pin2": { + "compName": "GUIdff4_finewe#0", + "pinName": "_WE2" + }, + "name": "unnamedWire#72", "path": [ { - "x": 60.0, - "y": 425.0 + "x": 420.0, + "y": 90.0 }, { - "x": 60.0, - "y": 415.0 + "x": 420.0, + "y": 110.0 }, { - "x": 30.0, - "y": 415.0 + "x": 365.0, + "y": 110.0 + }, + { + "x": 365.0, + "y": 195.0 } ] }, { "pin1": { - "compName": "WireCrossPoint#13", + "compName": "WireCrossPoint#11", "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "S0" + "compName": "WireCrossPoint#14", + "pinName": "" }, - "name": "unnamedWire#68", + "name": "unnamedWire#51", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#3", + "compName": "DeserializedSubmodelComponent#0", + "pinName": "Y3" + }, + "pin2": { + "compName": "DeserializedSubmodelComponent#4", + "pinName": "I1_3" + }, + "name": "unnamedWire#47", + "path": [] + }, + { + "pin1": { + "compName": "WireCrossPoint#15", "pinName": "" }, "pin2": { - "compName": "GUIMerger#0", - "pinName": "I2" + "compName": "WireCrossPoint#15", + "pinName": "" }, - "name": "unnamedWire#27", + "name": "unnamedWire#83", + "path": [] + }, + { + "pin1": { + "compName": "GUISplitter#3", + "pinName": "O2" + }, + "pin2": { + "compName": "WireCrossPoint#8", + "pinName": "" + }, + "name": "unnamedWire#58", "path": [] }, { @@ -1620,263 +1637,258 @@ mograsim version: 0.1.3 }, { "pin1": { - "compName": "WireCrossPoint#4", - "pinName": "" + "compName": "GUIdff4_finewe#0", + "pinName": "D3" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "Q4" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y3" }, - "name": "unnamedWire#29", - "path": [] + "name": "unnamedWire#71", + "path": [ + { + "x": 300.0, + "y": 245.0 + }, + { + "x": 300.0, + "y": 205.0 + } + ] }, { "pin1": { - "compName": "GUIMerger#0", - "pinName": "I3" + "compName": "GUIdff4_finewe#0", + "pinName": "Q1" }, "pin2": { - "compName": "WireCrossPoint#4", + "compName": "WireCrossPoint#1", "pinName": "" }, - "name": "unnamedWire#28", + "name": "unnamedWire#6", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y4" + "compName": "WireCrossPoint#12", + "pinName": "" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "D4" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "I0_1" }, - "name": "unnamedWire#70", + "name": "unnamedWire#59", "path": [ { - "x": 295.0, - "y": 215.0 - }, - { - "x": 295.0, - "y": 255.0 + "x": 20.0, + "y": 245.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#8", - "pinName": "Y" + "compName": "DeserializedSubmodelComponent#0", + "pinName": "I0_4" }, "pin2": { - "compName": "GUIdff4_finewe#0", - "pinName": "_WE2" + "compName": "GUISplitter#0", + "pinName": "O3" }, - "name": "unnamedWire#72", + "name": "unnamedWire#15", "path": [ { - "x": 420.0, - "y": 90.0 - }, - { - "x": 420.0, - "y": 110.0 - }, - { - "x": 365.0, - "y": 110.0 + "x": 20.0, + "y": 155.0 }, { - "x": 365.0, - "y": 195.0 + "x": 20.0, + "y": 65.0 } ] }, { "pin1": { - "compName": "GUIdff4_finewe#0", - "pinName": "D3" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I0_2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y3" + "compName": "DeserializedSubmodelComponent#4", + "pinName": "Y2" }, - "name": "unnamedWire#71", + "name": "unnamedWire#80", "path": [ { - "x": 300.0, - "y": 245.0 + "x": 210.0, + "y": 205.0 }, { - "x": 300.0, - "y": 205.0 + "x": 210.0, + "y": 75.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y1" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "Y" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I1_1" + "compName": "GUIdff4_finewe#0", + "pinName": "D2" }, - "name": "unnamedWire#30", - "path": [] + "name": "unnamedWire#88", + "path": [ + { + "x": 365.0, + "y": 295.0 + }, + { + "x": 365.0, + "y": 235.0 + } + ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I1_4" + "compName": "GUISplitter#3", + "pinName": "O3" }, "pin2": { "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y4" + "pinName": "I0_4" }, - "name": "unnamedWire#74", - "path": [] + "name": "unnamedWire#62", + "path": [ + { + "x": 80.0, + "y": 325.0 + }, + { + "x": 80.0, + "y": 275.0 + } + ] }, { "pin1": { - "compName": "GUIdff4_finewe#0", - "pinName": "D1" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "Y2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "Y1" + "compName": "DeserializedSubmodelComponent#7", + "pinName": "I0" }, - "name": "unnamedWire#73", + "name": "unnamedWire#87", "path": [ { - "x": 310.0, - "y": 225.0 + "x": 305.0, + "y": 195.0 }, { - "x": 310.0, - "y": 185.0 + "x": 305.0, + "y": 305.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y3" + "compName": "WireCrossPoint#16", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I1_3" + "compName": "WireCrossPoint#15", + "pinName": "" }, - "name": "unnamedWire#32", + "name": "unnamedWire#90", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I1_2" + "compName": "WireCrossPoint#10", + "pinName": "" }, "pin2": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y2" + "compName": "WireCrossPoint#11", + "pinName": "" }, - "name": "unnamedWire#76", + "name": "unnamedWire#50", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", + "compName": "DeserializedSubmodelComponent#6", "pinName": "I1_2" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", + "compName": "DeserializedSubmodelComponent#5", "pinName": "Y2" }, - "name": "unnamedWire#31", + "name": "unnamedWire#76", "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y3" + "compName": "DeserializedSubmodelComponent#3", + "pinName": "Y1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I1_3" + "compName": "DeserializedSubmodelComponent#2", + "pinName": "I1_1" }, - "name": "unnamedWire#75", + "name": "unnamedWire#30", "path": [] }, { "pin1": { - "compName": "WireCrossPoint#1", - "pinName": "" + "compName": "DeserializedSubmodelComponent#6", + "pinName": "I1_4" }, "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "A1" + "compName": "DeserializedSubmodelComponent#5", + "pinName": "Y4" }, - "name": "unnamedWire#34", - "path": [ - { - "x": 415.0, - "y": 380.0 - }, - { - "x": 80.0, - "y": 380.0 - }, - { - "x": 80.0, - "y": 335.0 - } - ] + "name": "unnamedWire#74", + "path": [] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I0_4" + "compName": "_submodelinterface", + "pinName": "_EC" }, "pin2": { - "compName": "DeserializedSubmodelComponent#4", - "pinName": "Y4" + "compName": "DeserializedSubmodelComponent#8", + "pinName": "A" }, - "name": "unnamedWire#78", + "name": "unnamedWire#3", "path": [ { - "x": 200.0, - "y": 225.0 + "x": 155.0, + "y": 20.0 }, { - "x": 200.0, - "y": 95.0 + "x": 365.0, + "y": 20.0 + }, + { + "x": 365.0, + "y": 90.0 } ] }, { "pin1": { - "compName": "DeserializedSubmodelComponent#2", - "pinName": "I1_4" - }, - "pin2": { - "compName": "DeserializedSubmodelComponent#3", - "pinName": "Y4" - }, - "name": "unnamedWire#33", - "path": [] - }, - { - "pin1": { - "compName": "DeserializedSubmodelComponent#5", - "pinName": "Y1" + "compName": "GUIMerger#0", + "pinName": "I1" }, "pin2": { - "compName": "DeserializedSubmodelComponent#6", - "pinName": "I1_1" + "compName": "WireCrossPoint#2", + "pinName": "" }, - "name": "unnamedWire#77", + "name": "unnamedWire#8", "path": [] } - ] + ], + "version": "0.1.1" }, "symbolRendererSnippetID": "simpleRectangularLike", "symbolRendererParams": { @@ -1891,5 +1903,6 @@ mograsim version: 0.1.3 "highLevelStateHandlerParams": { "subcomponentHighLevelStates": {}, "atomicHighLevelStates": {} - } + }, + "version": "0.1.4" } \ No newline at end of file diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/SimpleLogicUIStandalone.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/SimpleLogicUIStandalone.java index 23252d4b..2b945b11 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/SimpleLogicUIStandalone.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/SimpleLogicUIStandalone.java @@ -10,14 +10,25 @@ import net.mograsim.logic.model.modeladapter.ViewLogicModelAdapter; public class SimpleLogicUIStandalone { public static void executeVisualisation(Consumer setupViewModel) + { + executeVisualisation(setupViewModel, (Consumer) null); + } + + public static void executeVisualisation(Consumer setupViewModel, Consumer beforeRun) { LogicModelParameters params = new LogicModelParameters(); params.gateProcessTime = 50; params.wireTravelTime = 10; - executeVisualisation(setupViewModel, params); + executeVisualisation(setupViewModel, params, beforeRun); } public static void executeVisualisation(Consumer setupViewModel, LogicModelParameters params) + { + executeVisualisation(setupViewModel, params, null); + } + + public static void executeVisualisation(Consumer setupViewModel, LogicModelParameters params, + Consumer beforeRun) { // setup view model ViewModelModifiable viewModel = new ViewModelModifiable(); @@ -30,12 +41,31 @@ public class SimpleLogicUIStandalone LogicUIStandaloneGUI ui = new LogicUIStandaloneGUI(viewModel); LogicExecuter exec = new LogicExecuter(timeline); + if (beforeRun != null) + beforeRun.accept(new VisualisationObjects(viewModel, timeline, ui, exec)); + // run it exec.startLiveExecution(); ui.run(); exec.stopLiveExecution(); } + public static class VisualisationObjects + { + public final ViewModelModifiable model; + public final Timeline timeline; + public final LogicUIStandaloneGUI gui; + public final LogicExecuter executer; + + public VisualisationObjects(ViewModelModifiable model, Timeline timeline, LogicUIStandaloneGUI gui, LogicExecuter executer) + { + this.model = model; + this.timeline = timeline; + this.gui = gui; + this.executer = executer; + } + } + private SimpleLogicUIStandalone() { throw new UnsupportedOperationException("No SimpleLogicUIStandalone instances"); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIBitDisplay.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIBitDisplay.java index 5574d32f..9d6b57e5 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIBitDisplay.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIBitDisplay.java @@ -27,6 +27,7 @@ public class GUIBitDisplay extends GUIComponent private static final double height = 15; private static final double fontHeight = 5; + public final int logicWidth; private final Pin inputPin; private final LogicObserver logicObs; @@ -40,6 +41,7 @@ public class GUIBitDisplay extends GUIComponent public GUIBitDisplay(ViewModelModifiable model, int logicWidth, String name) { super(model, name); + this.logicWidth = logicWidth; logicObs = (i) -> model.requestRedraw(); setSize(width, height); @@ -93,7 +95,7 @@ public class GUIBitDisplay extends GUIComponent @Override public JsonElement getParamsForSerializing(IdentifierGetter idGetter) { - return new JsonPrimitive(inputPin.logicWidth); + return new JsonPrimitive(logicWidth); } static diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIManualSwitch.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIManualSwitch.java index ab6e379b..b9a09e3c 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIManualSwitch.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIManualSwitch.java @@ -30,6 +30,7 @@ public class GUIManualSwitch extends GUIComponent private static final double height = 15; private static final double fontHeight = 5; + public final int logicWidth; private final Pin outputPin; private final LogicObserver logicObs; @@ -44,6 +45,7 @@ public class GUIManualSwitch extends GUIComponent public GUIManualSwitch(ViewModelModifiable model, int logicWidth, String name) { super(model, name); + this.logicWidth = logicWidth; logicObs = (i) -> model.requestRedraw(); setSize(width, height); @@ -147,7 +149,7 @@ public class GUIManualSwitch extends GUIComponent @Override public JsonElement getParamsForSerializing(IdentifierGetter idGetter) { - return new JsonPrimitive(outputPin.logicWidth); + return new JsonPrimitive(logicWidth); } static diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java index d1eac5e6..e72cf8a6 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java @@ -26,10 +26,16 @@ public class GUIMerger extends GUIComponent private static final double heightPerPin = 10; public final int logicWidth; + private final Pin outputPin; private final ReadEnd[] inputEnds; private ReadEnd outputEnd; + public GUIMerger(ViewModelModifiable model, int logicWidth) + { + this(model, logicWidth, null); + } + public GUIMerger(ViewModelModifiable model, int logicWidth, String name) { super(model, name); @@ -38,7 +44,7 @@ public class GUIMerger extends GUIComponent double inputHeight = 0; for (int i = 0; i < logicWidth; i++, inputHeight += 10) addPin(new Pin(this, "I" + i, 1, 0, inputHeight)); - addPin(new Pin(this, "O", logicWidth, width, (logicWidth - 1) * heightPerPin / 2)); + addPin(this.outputPin = new Pin(this, "O", logicWidth, width, (logicWidth - 1) * heightPerPin / 2)); inputEnds = new ReadEnd[logicWidth]; } @@ -82,6 +88,11 @@ public class GUIMerger extends GUIComponent this.outputEnd = outputEnd; } + public Pin getOutputPin() + { + return outputPin; + } + static { ViewLogicModelAdapter.addComponentAdapter(new MergerAdapter()); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java index 6ddc276f..0ca71c77 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java @@ -26,16 +26,22 @@ public class GUISplitter extends GUIComponent private static final double heightPerPin = 10; public final int logicWidth; + private final Pin inputPin; private ReadEnd inputEnd; private final ReadEnd[] outputEnds; + public GUISplitter(ViewModelModifiable model, int logicWidth) + { + this(model, logicWidth, null); + } + public GUISplitter(ViewModelModifiable model, int logicWidth, String name) { super(model, name); this.logicWidth = logicWidth; setSize(width, logicWidth * heightPerPin); - addPin(new Pin(this, "I", logicWidth, 0, (logicWidth - 1) * heightPerPin / 2)); + addPin(this.inputPin = new Pin(this, "I", logicWidth, 0, (logicWidth - 1) * heightPerPin / 2)); double outputHeight = 0; for (int i = 0; i < logicWidth; i++, outputHeight += 10) addPin(new Pin(this, "O" + i, 1, width, outputHeight)); @@ -82,6 +88,11 @@ public class GUISplitter extends GUIComponent System.arraycopy(outputEnds, 0, this.outputEnds, 0, logicWidth); } + public Pin getInputPin() + { + return inputPin; + } + static { ViewLogicModelAdapter.addComponentAdapter(new SplitterAdapter()); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/WireCrossPoint.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/WireCrossPoint.java index ddd34934..c3f625c8 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/WireCrossPoint.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/WireCrossPoint.java @@ -29,6 +29,10 @@ public class WireCrossPoint extends GUIComponent private static final int CIRCLE_RADIUS = 1; private static final int CIRCLE_DIAM = CIRCLE_RADIUS * 2; + /** + * The logical width of this cross point. + */ + public final int logicWidth; /** * The (single) pin of this cross point. */ @@ -53,6 +57,7 @@ public class WireCrossPoint extends GUIComponent public WireCrossPoint(ViewModelModifiable model, int logicWidth, String name) { super(model, name); + this.logicWidth = logicWidth; logicObs = (i) -> model.requestRedraw(); setSize(CIRCLE_DIAM, CIRCLE_DIAM); @@ -118,7 +123,7 @@ public class WireCrossPoint extends GUIComponent @Override public JsonElement getParamsForSerializing(IdentifierGetter idGetter) { - return new JsonPrimitive(pin.logicWidth); + return new JsonPrimitive(logicWidth); } static diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/standardComponentIDMapping.json b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/standardComponentIDMapping.json index c0462d86..1913f726 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/standardComponentIDMapping.json +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/standardComponentIDMapping.json @@ -55,7 +55,8 @@ mograsim version: 0.1.3 "GUIsel3_4": "file:components/GUIsel3_4.json", "GUIsel4_12": "class:net.mograsim.logic.model.am2900.components.GUIsel4_12", "GUISplitter": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter", + "GUITriStateBuffer": "class:net.mograsim.logic.model.model.components.atomic.GUITriStateBuffer", "GUIxor": "file:components/GUIxor.json", - "WireCrossPoint": "class:net.mograsim.logic.model.model.wires.WireCrossPoint", - "GUITriStateBuffer": "class:net.mograsim.logic.model.model.components.atomic.GUITriStateBuffer" + "TextComponent": "class:net.mograsim.logic.model.model.components.atomic.TextComponent", + "WireCrossPoint": "class:net.mograsim.logic.model.model.wires.WireCrossPoint" } \ No newline at end of file