digsim-logic-simulator 0.3.0__py3-none-any.whl → 0.5.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of digsim-logic-simulator might be problematic. Click here for more details.

Files changed (72) hide show
  1. digsim/__init__.py +1 -1
  2. digsim/app/__main__.py +1 -1
  3. digsim/app/gui/__init__.py +1 -1
  4. digsim/app/gui/_circuit_area.py +1 -6
  5. digsim/app/gui/_component_selection.py +1 -3
  6. digsim/app/gui/_main_window.py +1 -3
  7. digsim/app/gui/_top_bar.py +1 -4
  8. digsim/app/gui/_warning_dialog.py +1 -3
  9. digsim/app/gui_objects/__init__.py +1 -1
  10. digsim/app/gui_objects/_bus_bit_object.py +2 -5
  11. digsim/app/gui_objects/_buzzer_object.py +1 -1
  12. digsim/app/gui_objects/_component_context_menu.py +2 -2
  13. digsim/app/gui_objects/_component_object.py +8 -10
  14. digsim/app/gui_objects/_component_port_item.py +1 -1
  15. digsim/app/gui_objects/_dip_switch_object.py +2 -5
  16. digsim/app/gui_objects/_gui_note_object.py +1 -1
  17. digsim/app/gui_objects/_gui_object_factory.py +1 -1
  18. digsim/app/gui_objects/_hexdigit_object.py +1 -1
  19. digsim/app/gui_objects/_image_objects.py +2 -4
  20. digsim/app/gui_objects/_label_object.py +1 -1
  21. digsim/app/gui_objects/_logic_analyzer_object.py +1 -2
  22. digsim/app/gui_objects/_seven_segment_object.py +2 -4
  23. digsim/app/gui_objects/_shortcut_objects.py +2 -4
  24. digsim/app/gui_objects/_yosys_object.py +1 -1
  25. digsim/app/model/__init__.py +1 -1
  26. digsim/app/model/_model.py +15 -18
  27. digsim/app/model/_model_components.py +12 -15
  28. digsim/app/model/_model_objects.py +30 -26
  29. digsim/app/model/_model_settings.py +1 -5
  30. digsim/app/model/_model_shortcuts.py +3 -3
  31. digsim/app/settings/__init__.py +1 -1
  32. digsim/app/settings/_component_settings.py +5 -7
  33. digsim/app/settings/_gui_settings.py +1 -3
  34. digsim/app/settings/_shortcut_dialog.py +1 -3
  35. digsim/circuit/__init__.py +1 -1
  36. digsim/circuit/_circuit.py +21 -64
  37. digsim/circuit/_waves_writer.py +1 -4
  38. digsim/circuit/components/__init__.py +1 -1
  39. digsim/circuit/components/_bus_bits.py +2 -2
  40. digsim/circuit/components/_button.py +1 -1
  41. digsim/circuit/components/_buzzer.py +2 -2
  42. digsim/circuit/components/_clock.py +2 -2
  43. digsim/circuit/components/_dip_switch.py +2 -2
  44. digsim/circuit/components/_gates.py +7 -9
  45. digsim/circuit/components/_hexdigit.py +3 -3
  46. digsim/circuit/components/_ic.py +1 -0
  47. digsim/circuit/components/_label_wire.py +4 -4
  48. digsim/circuit/components/_led.py +1 -1
  49. digsim/circuit/components/_logic_analyzer.py +2 -2
  50. digsim/circuit/components/_note.py +1 -1
  51. digsim/circuit/components/_on_off_switch.py +1 -1
  52. digsim/circuit/components/_seven_segment.py +2 -1
  53. digsim/circuit/components/_static_level.py +1 -1
  54. digsim/circuit/components/_static_value.py +2 -2
  55. digsim/circuit/components/_yosys_atoms.py +1 -6
  56. digsim/circuit/components/_yosys_component.py +1 -4
  57. digsim/circuit/components/atoms/__init__.py +1 -1
  58. digsim/circuit/components/atoms/_component.py +2 -44
  59. digsim/circuit/components/atoms/_port.py +7 -18
  60. digsim/storage_model/__init__.py +7 -0
  61. digsim/storage_model/_app.py +53 -0
  62. digsim/storage_model/_circuit.py +118 -0
  63. digsim/synth/__init__.py +1 -1
  64. digsim/synth/__main__.py +1 -1
  65. digsim/synth/_synthesis.py +10 -2
  66. digsim/utils/__init__.py +1 -1
  67. {digsim_logic_simulator-0.3.0.dist-info → digsim_logic_simulator-0.5.0.dist-info}/METADATA +12 -7
  68. digsim_logic_simulator-0.5.0.dist-info/RECORD +105 -0
  69. {digsim_logic_simulator-0.3.0.dist-info → digsim_logic_simulator-0.5.0.dist-info}/WHEEL +1 -1
  70. digsim_logic_simulator-0.3.0.dist-info/RECORD +0 -102
  71. {digsim_logic_simulator-0.3.0.dist-info → digsim_logic_simulator-0.5.0.dist-info}/LICENSE.md +0 -0
  72. {digsim_logic_simulator-0.3.0.dist-info → digsim_logic_simulator-0.5.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,53 @@
1
+ # Copyright (c) Fredrik Andersson, 2023-2024
2
+ # All rights reserved
3
+
4
+ """
5
+ Module that handles the dataclasses for application
6
+ """
7
+
8
+ from __future__ import annotations
9
+
10
+ import json
11
+ from dataclasses import asdict
12
+ from typing import Any
13
+
14
+ from pydantic import Field
15
+ from pydantic.dataclasses import dataclass
16
+
17
+ from ._circuit import CircuitDataClass
18
+
19
+
20
+ @dataclass
21
+ class GuiPositionDataClass:
22
+ x: int = 100
23
+ y: int = 100
24
+ z: int = 0
25
+
26
+
27
+ @dataclass
28
+ class AppFileDataClass:
29
+ circuit: CircuitDataClass
30
+ gui: dict[str, GuiPositionDataClass] = Field(default_factory=dict)
31
+ shortcuts: dict[str, str] = Field(default_factory=dict)
32
+ settings: dict[str, Any] = Field(default_factory=dict)
33
+
34
+ @staticmethod
35
+ def load(filename):
36
+ with open(filename, mode="r", encoding="utf-8") as json_file:
37
+ app_filedata_class = AppFileDataClass(**json.load(json_file))
38
+ return app_filedata_class
39
+
40
+ def save(self, filename):
41
+ json_object = json.dumps(asdict(self), indent=4)
42
+ with open(filename, mode="w", encoding="utf-8") as json_file:
43
+ json_file.write(json_object)
44
+
45
+
46
+ @dataclass
47
+ class ModelDataClass:
48
+ circuit: CircuitDataClass
49
+ gui: dict[str, GuiPositionDataClass]
50
+
51
+ @staticmethod
52
+ def from_app_file_dc(app_file_dc):
53
+ return ModelDataClass(circuit=app_file_dc.circuit, gui=app_file_dc.gui)
@@ -0,0 +1,118 @@
1
+ # Copyright (c) Fredrik Andersson, 2023-2024
2
+ # All rights reserved
3
+
4
+ """
5
+ Module that handles the dataclasses for circuit load/save
6
+ """
7
+
8
+ from __future__ import annotations
9
+
10
+ import importlib
11
+ import json
12
+ from dataclasses import asdict
13
+
14
+ from pydantic import Field
15
+ from pydantic.dataclasses import dataclass
16
+
17
+
18
+ @dataclass
19
+ class WireDataClass:
20
+ src: str
21
+ dst: str
22
+
23
+ def connect(self, circuit):
24
+ src_comp = circuit.get_component(self.src.split(".")[0])
25
+ dst_comp = circuit.get_component(self.dst.split(".")[0])
26
+ src_comp.port(self.src.split(".")[1]).wire = dst_comp.port(self.dst.split(".")[1])
27
+
28
+ @classmethod
29
+ def list_from_port(cls, src_port):
30
+ wires = []
31
+ for port in src_port.wired_ports:
32
+ # Only add port on top-level components
33
+ if port.parent().is_toplevel():
34
+ wires.append(
35
+ WireDataClass(
36
+ src=f"{src_port.parent().name()}.{src_port.name()}",
37
+ dst=f"{port.parent().name()}.{port.name()}",
38
+ )
39
+ )
40
+ return wires
41
+
42
+
43
+ @dataclass
44
+ class ComponentDataClass:
45
+ """Component data class"""
46
+
47
+ name: str
48
+ type: str
49
+ display_name: str = Field(default="")
50
+ settings: dict = Field(default_factory=dict)
51
+
52
+ def create(self, circuit):
53
+ """Factory: Create a component from a dict"""
54
+ if "path" in self.settings:
55
+ self.settings["path"] = circuit.load_path(self.settings["path"])
56
+
57
+ py_module_name = ".".join(self.type.split(".")[0:-1])
58
+ py_class_name = self.type.split(".")[-1]
59
+
60
+ module = importlib.import_module(py_module_name)
61
+ class_ = getattr(module, py_class_name)
62
+ component = class_(circuit=circuit, **self.settings)
63
+ component.set_name(self.name)
64
+ if self.display_name is not None:
65
+ component.set_display_name(self.display_name)
66
+ return component
67
+
68
+ @staticmethod
69
+ def from_component(component):
70
+ """Return the component information as a dict, used when storing a circuit"""
71
+ module_split = type(component).__module__.split(".")
72
+ type_str = ""
73
+ for module in module_split:
74
+ if not module.startswith("_"):
75
+ type_str += f"{module}."
76
+ type_str += type(component).__name__
77
+
78
+ return ComponentDataClass(
79
+ name=component.name(),
80
+ display_name=component.display_name(),
81
+ type=type_str,
82
+ settings=component.settings_to_dict(),
83
+ )
84
+
85
+
86
+ @dataclass
87
+ class CircuitDataClass:
88
+ name: str = "unnamed"
89
+ components: list[ComponentDataClass] = Field(default_factory=list)
90
+ wires: list[WireDataClass] = Field(default_factory=list)
91
+
92
+ @staticmethod
93
+ def from_circuit(circuit):
94
+ dc = CircuitDataClass(name=circuit.name)
95
+ for comp in circuit.get_toplevel_components():
96
+ dc.components.append(ComponentDataClass.from_component(comp))
97
+
98
+ for comp in circuit.get_toplevel_components():
99
+ for port in comp.ports:
100
+ dc.wires.extend(WireDataClass.list_from_port(port))
101
+
102
+ return dc
103
+
104
+
105
+ @dataclass
106
+ class CircuitFileDataClass:
107
+ circuit: CircuitDataClass
108
+
109
+ @staticmethod
110
+ def load(filename):
111
+ with open(filename, mode="r", encoding="utf-8") as json_file:
112
+ dc = CircuitFileDataClass(**json.load(json_file))
113
+ return dc
114
+
115
+ def save(self, filename):
116
+ json_object = json.dumps(asdict(self), indent=4)
117
+ with open(filename, mode="w", encoding="utf-8") as json_file:
118
+ json_file.write(json_object)
digsim/synth/__init__.py CHANGED
@@ -1,6 +1,6 @@
1
1
  # Copyright (c) Fredrik Andersson, 2023
2
2
  # All rights reserved
3
3
 
4
- """ All classes within digsim.synth namespace """
4
+ """All classes within digsim.synth namespace"""
5
5
 
6
6
  from ._synthesis import Synthesis, SynthesisException # noqa: F401
digsim/synth/__main__.py CHANGED
@@ -1,7 +1,7 @@
1
1
  # Copyright (c) Fredrik Andersson, 2023
2
2
  # All rights reserved
3
3
 
4
- """ The main class module of the digsim.synth namespace """
4
+ """The main class module of the digsim.synth namespace"""
5
5
 
6
6
  import argparse
7
7
  import sys
@@ -9,6 +9,7 @@ import sys
9
9
 
10
10
  import pexpect
11
11
  import pexpect.popen_spawn
12
+
12
13
  from digsim.circuit.components.atoms import DigsimException
13
14
 
14
15
 
@@ -33,11 +34,18 @@ class Synthesis:
33
34
  errorline = line
34
35
  break
35
36
  raise SynthesisException(errorline)
36
- return before_lines
37
+
38
+ # Remove escape sequence in output
39
+ out_lines = []
40
+ for line in before_lines:
41
+ if line.startswith("\x1b"):
42
+ continue
43
+ out_lines.append(line)
44
+ return out_lines
37
45
 
38
46
  @classmethod
39
47
  def _pexpect_spawn_yosys(cls):
40
- yosys_exe = shutil.which("yowasp-yosys")
48
+ yosys_exe = shutil.which("yosys") or shutil.which("yowasp-yosys")
41
49
 
42
50
  if yosys_exe is None:
43
51
  raise SynthesisException("Yosys executable not found")
digsim/utils/__init__.py CHANGED
@@ -1,6 +1,6 @@
1
1
  # Copyright (c) Fredrik Andersson, 2023
2
2
  # All rights reserved
3
3
 
4
- """ All classes within digsim.utils namespace """
4
+ """All classes within digsim.utils namespace"""
5
5
 
6
6
  from ._yosys_netlist import YosysNetlist # noqa: F401
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: digsim-logic-simulator
3
- Version: 0.3.0
3
+ Version: 0.5.0
4
4
  Summary: Interactive Digital Logic Simulator
5
5
  Author-email: Fredrik Andersson <freand@gmail.com>
6
6
  Maintainer-email: Fredrik Andersson <freand@gmail.com>
@@ -41,20 +41,20 @@ Project-URL: homepage, https://github.com/freand76/digsim
41
41
  Keywords: educational,simulation,digital
42
42
  Classifier: Development Status :: 5 - Production/Stable
43
43
  Classifier: Programming Language :: Python :: 3
44
- Classifier: Programming Language :: Python :: 3.8
45
44
  Classifier: Programming Language :: Python :: 3.9
46
45
  Classifier: Programming Language :: Python :: 3.10
47
46
  Classifier: Programming Language :: Python :: 3.11
48
47
  Classifier: Programming Language :: Python :: 3.12
49
48
  Classifier: Programming Language :: Python :: 3 :: Only
50
- Requires-Python: >=3.8
49
+ Requires-Python: >=3.9
51
50
  Description-Content-Type: text/markdown
52
51
  License-File: LICENSE.md
53
- Requires-Dist: pyvcd >=0.3.0
54
- Requires-Dist: pyside6 >=6.6.0
55
- Requires-Dist: pexpect ==4.8.0
52
+ Requires-Dist: pyvcd >=0.4.0
53
+ Requires-Dist: pyside6 >=6.7.3
54
+ Requires-Dist: pexpect ==4.9.0
55
+ Requires-Dist: pydantic ==2.9.2
56
56
  Requires-Dist: qtawesome
57
- Requires-Dist: yowasp-yosys ==0.36.0.8.post620
57
+ Requires-Dist: yowasp-yosys ==0.45.0.0.post775
58
58
 
59
59
  # DigSim - Interactive Digital Logic Simulator
60
60
 
@@ -135,6 +135,11 @@ Then the following package must be installed:
135
135
  > gtkwave sr.vcd
136
136
  ```
137
137
 
138
+ ### Examples of writing pytest/python test benches for synthesized verilog code
139
+ ```
140
+ > pytest examples/pytest_tb
141
+ ```
142
+
138
143
  ## Yosys synthesis helper tool
139
144
 
140
145
  ```
@@ -0,0 +1,105 @@
1
+ digsim/__init__.py,sha256=UB-i1HtNR6rIX4_SClZp-lM4njGa7_1sbMvd14NuyAs,149
2
+ digsim/app/__main__.py,sha256=iECz0kvEQ0R4fGzH6KAOxyDfoyvwrRLo7JmT0jMx39s,1368
3
+ digsim/app/gui/__init__.py,sha256=-HnN8a-AcDcovbCHf1a_R-sQtW2_tQXnPJ3izyKLOjw,165
4
+ digsim/app/gui/_circuit_area.py,sha256=w2K0n3ubbLvwiZHs2NyErUoNly0_TWFTf-XXsCtxpVY,16366
5
+ digsim/app/gui/_component_selection.py,sha256=C-TeBruf8sGdEnGATtLm6jTesIqf-0AnKRBRLrtL_18,6388
6
+ digsim/app/gui/_main_window.py,sha256=X0AIh3m1ySaldgYr3MHddRSqVkNdWl_qNJOIdnv2mNA,5275
7
+ digsim/app/gui/_top_bar.py,sha256=Q27uJUtMd3pytBFDe8nQdJQJUkYYGV9wK6d344Wkq4A,13066
8
+ digsim/app/gui/_utils.py,sha256=SSbe4B-trgZpaerPZilAaZYeqMOlFZMuufTth8KyOAg,660
9
+ digsim/app/gui/_warning_dialog.py,sha256=N9G2wyQTyiqMnTtbExMzHgdbCBA0epfhNWY4GVF6xH8,1496
10
+ digsim/app/gui_objects/__init__.py,sha256=DV7hnqz4Xcwk_-BiKrPxB31c7k-R4Oemmo_KOUjoQrQ,264
11
+ digsim/app/gui_objects/_bus_bit_object.py,sha256=Q8oW-bAGLRAvR2-8PxyHL4M68FLKFgNpDiL4E7BPUOQ,3059
12
+ digsim/app/gui_objects/_buzzer_object.py,sha256=p_7O361t98K6BIUxK6gHdfcSn2wUVXTRfnf7oQXSIK4,3352
13
+ digsim/app/gui_objects/_component_context_menu.py,sha256=57M23M8Xb4t8eN8l9GQQ4AUBYZlEBjE0_a4d71yCDos,2821
14
+ digsim/app/gui_objects/_component_object.py,sha256=7fIvnMfew7cwyfk9m6nMnha6df5NEH67bc2-K5lg7lE,13142
15
+ digsim/app/gui_objects/_component_port_item.py,sha256=Rxl952_3BCqM2H7TJDfbSTlalfFicDStrjqMUKEtdns,2089
16
+ digsim/app/gui_objects/_dip_switch_object.py,sha256=6SmqoyF3MuUphLJA4tlyff4JXJBxJLWmt3ZEferFtf4,3576
17
+ digsim/app/gui_objects/_gui_note_object.py,sha256=sMakGjdR0truGBzaR2GaFZZoDg99v76Bs5DD6ea3cjA,2604
18
+ digsim/app/gui_objects/_gui_object_factory.py,sha256=wfe0M4ZNSd5mK_0fi6ZhzHddFxkm_t4tku3OZir2VzU,2465
19
+ digsim/app/gui_objects/_hexdigit_object.py,sha256=vx540hsTezJW_qwQsPtSqkeH8GMrOBXU24QPaZd021U,1926
20
+ digsim/app/gui_objects/_image_objects.py,sha256=KQgWaiEoqbtqWib-pCoo-qs-J3GvRlVQFzjLNEBx-JQ,7553
21
+ digsim/app/gui_objects/_label_object.py,sha256=6CnISeYEmmef28T6yBYJ1z-a_3nTtyl4p-EU-pEzVK0,3570
22
+ digsim/app/gui_objects/_logic_analyzer_object.py,sha256=B3WpFrTu9LDF0S_ol0VVS4vOIDqw_e08wmEX7fBjD98,2671
23
+ digsim/app/gui_objects/_seven_segment_object.py,sha256=EaNRxmM_IA-JkLHVVHXwSCd8jV9JAXTmdXMuXOidio4,4227
24
+ digsim/app/gui_objects/_shortcut_objects.py,sha256=XaTbjT-udJZ--O1uhBIrw8EHIHKbly6PGH-7tTTnPVQ,2724
25
+ digsim/app/gui_objects/_yosys_object.py,sha256=1LQ6nR_67lfWWNE56bdPJYkpEXhEi_9Z5UbiY0SGJIE,953
26
+ digsim/app/gui_objects/images/AND.png,sha256=d53gEcxIlfqmW-Q4Za3n5i_NmSEcjJqlbh8XxoSdR3o,12062
27
+ digsim/app/gui_objects/images/Analyzer.png,sha256=1OrkKsL6ktxKI12KzNJT7rgEi2X-jAqp6vrVuVthErY,1591
28
+ digsim/app/gui_objects/images/BUF.png,sha256=fd8DqEM3aht4cjoWuqsbHlTiQaFa9ddibe3iel1WYLo,12819
29
+ digsim/app/gui_objects/images/Buzzer.png,sha256=sdAQehr03pEpQXrm2RTqUqDpUI15WU1ohFf4fB90uvI,5856
30
+ digsim/app/gui_objects/images/Clock.png,sha256=NAsu1IKb2tiZ_oFs3C7t7Wzc3xzq-1PBLVm7NcT9whQ,3117
31
+ digsim/app/gui_objects/images/DFF.png,sha256=OalrTM4XbMouEeB0xXg8nPy3gZzMxwnvgtF149XsTl0,9038
32
+ digsim/app/gui_objects/images/DIP_SWITCH.png,sha256=8t2gdexuHn9Z3lUi7B7hNM71IxRMulgAn8T5TlFPqPM,16899
33
+ digsim/app/gui_objects/images/FlipFlop.png,sha256=PLCMrH0CBXU6jgDTPpGsgEAqmgNN3c5hvU1sjZzOU40,4452
34
+ digsim/app/gui_objects/images/IC.png,sha256=7YoAkD_5CrTIdmArjD_HjZyT9odAYuCwufDDpVC3Jsw,5493
35
+ digsim/app/gui_objects/images/LED_OFF.png,sha256=bk-X-R-l8CvdD-xat0zI5pc9S1t6j0Ewx4G_vMt1sRE,7075
36
+ digsim/app/gui_objects/images/LED_ON.png,sha256=YSYDNx8zjFoqEy9kuognaL8eL0acuVHV7b4ArlK_ol4,9389
37
+ digsim/app/gui_objects/images/MUX.png,sha256=d8Q0qUJIRCdFQbxAg_sc4MJG3F6QRTbCT4ysgkCm6DE,1912
38
+ digsim/app/gui_objects/images/NAND.png,sha256=W-dZPNg2Qh0M-FkA8Gbblh42EvMKtBI37IenZKDIbLE,11718
39
+ digsim/app/gui_objects/images/NOR.png,sha256=eFaignMSIiUPJnc8VkIQ9Yg1iF6qVjrM9sA50EGqp9g,15091
40
+ digsim/app/gui_objects/images/NOT.png,sha256=V1QoUHpBbEX2Tish4DIe_wImAVj-M9DL5QrNIKNo-nQ,12593
41
+ digsim/app/gui_objects/images/ONE.png,sha256=ftnpl7_gMTLc08k08Ka_QfnLv5H1u5AhPitZNPe_42E,1212
42
+ digsim/app/gui_objects/images/OR.png,sha256=54lsnUphLRwY9ioOOqAsRW0KRVTNOHZOPBKosXUTAOc,14870
43
+ digsim/app/gui_objects/images/PB.png,sha256=bhnhD-Ood9hSBFr-aia2iCPT_Q7VYBaEq076sqU3DBY,8468
44
+ digsim/app/gui_objects/images/Switch_OFF.png,sha256=ta11PvVIajT2gugj_SPK3mLn9_WaluqAK3t4aks9a-8,4752
45
+ digsim/app/gui_objects/images/Switch_ON.png,sha256=fVo6Vi89-Fv32SsyWcRL9N7eDwDrTe1_hX6_602BR5A,4819
46
+ digsim/app/gui_objects/images/XNOR.png,sha256=yoDcf5vn_OtcUnQQ3qSTLRqVTNBF_fmaGlpvXpWw_HE,14610
47
+ digsim/app/gui_objects/images/XOR.png,sha256=yHfL2LnWVeepTunrgUF3Z5m3dVpQ1iuNL6EGKI1TAKs,16118
48
+ digsim/app/gui_objects/images/YOSYS.png,sha256=etTO9jadU0amxQG7ySRjD6fME4HjrEEqXttM4XWDzxU,3117
49
+ digsim/app/gui_objects/images/ZERO.png,sha256=hXnZgEVO3T_zN5CiFhu6cIXr19LAu6SdvX-sIOq06E4,3459
50
+ digsim/app/images/app_icon.png,sha256=OfPoYA4o4Af79DTqQxSNLca0FdXRHEYteBK-xCQFEAw,16041
51
+ digsim/app/model/__init__.py,sha256=atbReJBH_qTVZqsKLvF3p9eZWxkglFi6cvt7fEGo0bo,159
52
+ digsim/app/model/_model.py,sha256=JE9-iJMxzgcY0r-4s708gDtA-aadw_hFSuERjKNZlfE,6421
53
+ digsim/app/model/_model_components.py,sha256=Q2iztl7MlWv_7vaa7me-dp-gOx6-7Tg3LZmTUQNBPrw,6371
54
+ digsim/app/model/_model_new_wire.py,sha256=5HnF5-gtKtB1Tp6ZIF7QuNo5zEHmsUpnBEmj6ZllLiA,1810
55
+ digsim/app/model/_model_objects.py,sha256=lqOjNIygIHT6Dq_PPa-D0B5elC49dB0KshF0ATzJZ0s,5217
56
+ digsim/app/model/_model_settings.py,sha256=FewI3hm1iwbjPwdN3IeixuINPtamDORrTh1ANGRNwX8,1035
57
+ digsim/app/model/_model_shortcuts.py,sha256=TT4osN7-dMEgKXWHW9cJ0XILIIkUfRqBBfx6rvYT2JI,2488
58
+ digsim/app/settings/__init__.py,sha256=0tkoBSYeJFFiUI8c_FqvqqyM4-_SU9Xq7mXCwiew5Oo,308
59
+ digsim/app/settings/_component_settings.py,sha256=88D9OuEcFIlaqZozomWHSYrl7opz4jZW2e8xGuUyTpg,16287
60
+ digsim/app/settings/_gui_settings.py,sha256=sDi2POUsHvS7_4SO5qsTu_nN48HsTN4UfGPzdmECs9w,2764
61
+ digsim/app/settings/_shortcut_dialog.py,sha256=JTm7aawG2ar_DvWhBT8ZzgWsq9gLEJ6pJ_-eHUMPh-c,1524
62
+ digsim/circuit/__init__.py,sha256=yGyhcdnlcpht_hyR2az_A4c7-bO_NkT2lBIDFvtI010,216
63
+ digsim/circuit/_circuit.py,sha256=UNJBM2MyTXPWWEPXe4T4Z9Qc6vsm9We_Rk7mEfV9yIA,10023
64
+ digsim/circuit/_waves_writer.py,sha256=hh-hwNrT9c0jDLLxYw0anvwomJXVJK5iIbGVjcQddG0,1645
65
+ digsim/circuit/components/__init__.py,sha256=j-xNFbXJ15rSJLhDg7E-SlKvxn6Uy7Zl42YDUkZBFZo,1267
66
+ digsim/circuit/components/_bus_bits.py,sha256=mHWkwAHtkEq88pOEQ0b5ndFZvum794j7kUkTAWHUCdc,1916
67
+ digsim/circuit/components/_button.py,sha256=Q8drjQ2kNFCfgK-7UzlmNHP47bOpGa9_t16pDtjhL4s,1028
68
+ digsim/circuit/components/_buzzer.py,sha256=vArzQVe0yFjtqMxIx2BIvjRA-m-aipPUHVlgwbwpCXM,1125
69
+ digsim/circuit/components/_clock.py,sha256=Kks82_Ni_XJYvrgLFvPsAagbUnmH9QutGuwm1puM0B0,1487
70
+ digsim/circuit/components/_dip_switch.py,sha256=6f5EXVr3P-OXRB_FY5UOMTkBcJtUR2HHeeD38V7Wfmk,1807
71
+ digsim/circuit/components/_flip_flops.py,sha256=eOB1hpSfK7vlpcOQzHqILpAzfwsqQPobC-_ebDxGVLw,2942
72
+ digsim/circuit/components/_gates.py,sha256=K_aFT4GTo4JF_zoaNYiCRZfZEx4vEibMHZSCDImfPHQ,7167
73
+ digsim/circuit/components/_hexdigit.py,sha256=MQlmEnQkQnuH6rGc-FB68mOctjVY8QyAR5FCOHYNCns,2259
74
+ digsim/circuit/components/_ic.py,sha256=Rs8Z_PuhKo3peK9pwdbvlGNK8_w6evSdXYNdrjWB3-8,917
75
+ digsim/circuit/components/_label_wire.py,sha256=5xcPNWt8GtQEUk_BDJXWHQ3RfH62bAFQpiyeJlppOpA,5116
76
+ digsim/circuit/components/_led.py,sha256=hR_iclDWZua8duNy9BQcTBuhKkIh3g5ahpfkHQ1LYSA,452
77
+ digsim/circuit/components/_logic_analyzer.py,sha256=K6sUfN23lUfQ5GHQFrxvR8fgfWKLy29Cj0K7dZzW_cE,1809
78
+ digsim/circuit/components/_mem64kbyte.py,sha256=tqex3qFxa7jk841f87inNB4UIY9E5z1SleqAL82eCUY,1482
79
+ digsim/circuit/components/_memstdout.py,sha256=sCYkKH8XuWhB7-14VQOy7TkTgq-g0UDbhiI1HmM4HW8,1255
80
+ digsim/circuit/components/_note.py,sha256=ZpFPxKzJKbyOmd5YzLxfFllT49xqG3q9fGP1VBk3fW0,604
81
+ digsim/circuit/components/_on_off_switch.py,sha256=b2h_EClKRbOQTBpQYrOLRXzdps8da64lO9Nd7fp1RSY,1200
82
+ digsim/circuit/components/_seven_segment.py,sha256=UxxjGLuIirVB2Px09XlL8_zjgE7F89cY6z2SMS5FcPU,797
83
+ digsim/circuit/components/_static_level.py,sha256=2Assm1cmAfryVZ3KTQ1uGY8Q6eRrBipdwLITewXfIHg,677
84
+ digsim/circuit/components/_static_value.py,sha256=vfRPS_F9mKOXpHJxzs0JQKXqcj0o6d-090zbyZaECA4,1236
85
+ digsim/circuit/components/_yosys_atoms.py,sha256=NeH8XjjpoACHBfQRqR5RJxWorZhSjGk0t73cJOviSZw,37599
86
+ digsim/circuit/components/_yosys_component.py,sha256=XDNSAfM6Qvhe6G0-M1uiY2NQ-A6oPSQX4kcB_ccvSWg,8810
87
+ digsim/circuit/components/atoms/__init__.py,sha256=kPr-ZKYPiW8NgEvKooMyLYc4DpfMurkALqWcKLhuK28,483
88
+ digsim/circuit/components/atoms/_component.py,sha256=pnPzWmJYvgcdYt0TFTq12M88mz-esZBg1E7VtlZ5WK8,8287
89
+ digsim/circuit/components/atoms/_digsim_exception.py,sha256=Y5mBve15zZbduqNNAyf7WzqDk4NtvUL_g2vYy5kBQ3U,173
90
+ digsim/circuit/components/atoms/_port.py,sha256=BzfCBSQT34AMH10PyAj-eg0UqQpvFJz01fd3HmCwHhE,11688
91
+ digsim/circuit/components/ic/74162.json,sha256=BtLDDhNP4jYQD2EZ2nBHfUMRbuPztR54luLEpWl7j-o,26632
92
+ digsim/circuit/components/ic/7448.json,sha256=7p9l6l_QSw6DtphZcGgBMMP0PyMB5DYglciMhqCKp04,21211
93
+ digsim/storage_model/__init__.py,sha256=lubmO9_BCUtEahyW1yE7f3aGHngEevGIwf_0LeOB7Y8,289
94
+ digsim/storage_model/_app.py,sha256=Aer9s_mUBKSydsyeWYvVPHX2XF5ZGPuXq8z4PoXu8lA,1353
95
+ digsim/storage_model/_circuit.py,sha256=NnaHLwqb9gAhqAxeZ1RkHHvoS_YJwixlz0xs-zmIrQU,3596
96
+ digsim/synth/__init__.py,sha256=jhBHLOHf-vNa94Zg5q5dGcf0fgQTModfjUKtmUSffiw,180
97
+ digsim/synth/__main__.py,sha256=wZWAzWsisoxA7hfqkKtu3H066uWyFajgPro2MEGlKbs,2173
98
+ digsim/synth/_synthesis.py,sha256=ug9vSeTyZrvRCboNLL7dDIFVpGqH_ibr5fhOZJHpqUs,4271
99
+ digsim/utils/__init__.py,sha256=Az_zmbORYMzmptuA2_xfn5jDxbCPRSMlVuntr0sYexU,167
100
+ digsim/utils/_yosys_netlist.py,sha256=g-7hkVgGOYJUQbKv8wBqHMHqj44utuGHGbtaRb-qG60,8562
101
+ digsim_logic_simulator-0.5.0.dist-info/LICENSE.md,sha256=nx2x6ryeruncSHeHtF33WLjt5JARcm5rLdZuK_c8hL0,1688
102
+ digsim_logic_simulator-0.5.0.dist-info/METADATA,sha256=LoWTS8XNCoOspxCLDf0BnCxlhFfimj5ZP2b3n9yrl8U,6435
103
+ digsim_logic_simulator-0.5.0.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
104
+ digsim_logic_simulator-0.5.0.dist-info/top_level.txt,sha256=qpCMzQKADZHVqZIoQgFrv3qJ3u7PPU73gTCXQglqLa8,7
105
+ digsim_logic_simulator-0.5.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.42.0)
2
+ Generator: setuptools (75.1.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,102 +0,0 @@
1
- digsim/__init__.py,sha256=FDN6JCbGIBP21Zdf_ZNRryiJ6zQLIlTGTZk-Zj4zwpI,151
2
- digsim/app/__main__.py,sha256=EYeDrLJR6XC-fRNOhnrDSCDqv60LcO7wY638w3pdHPk,1370
3
- digsim/app/gui/__init__.py,sha256=UXHtaunKWrrd4QTIna6DAF4rCMqFsBFmodDBj4YB6EI,167
4
- digsim/app/gui/_circuit_area.py,sha256=iEGINxE-IwmqwVsFMJvqZ2cmauEqf4vo8W83JxIMI_k,16482
5
- digsim/app/gui/_component_selection.py,sha256=BKBAp46pajiqQo1efpdIB7tczHSUkTiL6aMXfYTlzms,6425
6
- digsim/app/gui/_main_window.py,sha256=E4pX-5g6ZBLIZv-MpB92wHP2_QSOVcQvjL6ug2X2dHg,5312
7
- digsim/app/gui/_top_bar.py,sha256=YEKJ-ucDDHH4fcHL9GS6jJ8teDhEKuTRaCAN1qTO8Rc,13150
8
- digsim/app/gui/_utils.py,sha256=SSbe4B-trgZpaerPZilAaZYeqMOlFZMuufTth8KyOAg,660
9
- digsim/app/gui/_warning_dialog.py,sha256=XINQRNeLtWDFueYXMjTJU6UvIwQ1W1F3lbigp7aPH1Y,1533
10
- digsim/app/gui_objects/__init__.py,sha256=qNA190htBAVOQr01oxE7NnAo_A6gtPGuKD3yuNfy8hk,266
11
- digsim/app/gui_objects/_bus_bit_object.py,sha256=7Sz9WwlKHEGPkWsFw7DBEvURKtPYFrOVi0c5_D-SlBo,3095
12
- digsim/app/gui_objects/_buzzer_object.py,sha256=Abzg68c77nV_dhlFiZmWsRKdTNZdGE0cp10cHqv3UkM,3354
13
- digsim/app/gui_objects/_component_context_menu.py,sha256=lQSx2YtSMIAqg8KF8Lh-8AzqltEJV0fFCSc4o2-R6so,2818
14
- digsim/app/gui_objects/_component_object.py,sha256=wdy5XszGldQYfjPUaSSrr7Qi4x3eFwSZMZ2xHIplzQw,13236
15
- digsim/app/gui_objects/_component_port_item.py,sha256=VX5MfoQgLnzZ5aT5eU_3J50Ireh0uQf7xI0N4dLIqXY,2091
16
- digsim/app/gui_objects/_dip_switch_object.py,sha256=_4zkRzEWtv0NwTpjol0nqZhbmgVr5GMW6h0EnHqfByM,3612
17
- digsim/app/gui_objects/_gui_note_object.py,sha256=RAlsH1BBi8XQhEWbAW-mDPSQJpOtPuM6SEkw3Nyekdg,2606
18
- digsim/app/gui_objects/_gui_object_factory.py,sha256=90G_X8FOa-U05iqUFV4M5q6pe9r7_QDcQ5W8sXwTkQQ,2467
19
- digsim/app/gui_objects/_hexdigit_object.py,sha256=fLoqpfmmFWelMYosVGdcUZhXEsPCIIURJ07SJvRVIR4,1928
20
- digsim/app/gui_objects/_image_objects.py,sha256=M7s-lgKD7A7FaX3_O2BZroWpR_ooKlXIITxDAfI0z0s,7588
21
- digsim/app/gui_objects/_label_object.py,sha256=uRgTkLHpIddtnDSyOPZrbjVZKduodPHDGA8WxpnxZE4,3572
22
- digsim/app/gui_objects/_logic_analyzer_object.py,sha256=b-Q9V7fDvA411-m0HZGYx4fUnUv6Pyf9ZuXCzIUaeZU,2674
23
- digsim/app/gui_objects/_seven_segment_object.py,sha256=qPR2tBbbjzwcH6pr5Yg6BrWHXcTzI5vQwCrF5l9lqm0,4262
24
- digsim/app/gui_objects/_shortcut_objects.py,sha256=Ze3kayeBV7lweurSEsj98_-ChBjB6OwZESp4M6Zgljs,2763
25
- digsim/app/gui_objects/_yosys_object.py,sha256=OucYqfEKQMLyj0Kma7BP0_6pM_3HUBMRKLs07V6l54M,955
26
- digsim/app/gui_objects/images/AND.png,sha256=d53gEcxIlfqmW-Q4Za3n5i_NmSEcjJqlbh8XxoSdR3o,12062
27
- digsim/app/gui_objects/images/Analyzer.png,sha256=1OrkKsL6ktxKI12KzNJT7rgEi2X-jAqp6vrVuVthErY,1591
28
- digsim/app/gui_objects/images/BUF.png,sha256=fd8DqEM3aht4cjoWuqsbHlTiQaFa9ddibe3iel1WYLo,12819
29
- digsim/app/gui_objects/images/Buzzer.png,sha256=sdAQehr03pEpQXrm2RTqUqDpUI15WU1ohFf4fB90uvI,5856
30
- digsim/app/gui_objects/images/Clock.png,sha256=NAsu1IKb2tiZ_oFs3C7t7Wzc3xzq-1PBLVm7NcT9whQ,3117
31
- digsim/app/gui_objects/images/DFF.png,sha256=OalrTM4XbMouEeB0xXg8nPy3gZzMxwnvgtF149XsTl0,9038
32
- digsim/app/gui_objects/images/DIP_SWITCH.png,sha256=8t2gdexuHn9Z3lUi7B7hNM71IxRMulgAn8T5TlFPqPM,16899
33
- digsim/app/gui_objects/images/FlipFlop.png,sha256=PLCMrH0CBXU6jgDTPpGsgEAqmgNN3c5hvU1sjZzOU40,4452
34
- digsim/app/gui_objects/images/IC.png,sha256=7YoAkD_5CrTIdmArjD_HjZyT9odAYuCwufDDpVC3Jsw,5493
35
- digsim/app/gui_objects/images/LED_OFF.png,sha256=bk-X-R-l8CvdD-xat0zI5pc9S1t6j0Ewx4G_vMt1sRE,7075
36
- digsim/app/gui_objects/images/LED_ON.png,sha256=YSYDNx8zjFoqEy9kuognaL8eL0acuVHV7b4ArlK_ol4,9389
37
- digsim/app/gui_objects/images/MUX.png,sha256=d8Q0qUJIRCdFQbxAg_sc4MJG3F6QRTbCT4ysgkCm6DE,1912
38
- digsim/app/gui_objects/images/NAND.png,sha256=W-dZPNg2Qh0M-FkA8Gbblh42EvMKtBI37IenZKDIbLE,11718
39
- digsim/app/gui_objects/images/NOR.png,sha256=eFaignMSIiUPJnc8VkIQ9Yg1iF6qVjrM9sA50EGqp9g,15091
40
- digsim/app/gui_objects/images/NOT.png,sha256=V1QoUHpBbEX2Tish4DIe_wImAVj-M9DL5QrNIKNo-nQ,12593
41
- digsim/app/gui_objects/images/ONE.png,sha256=ftnpl7_gMTLc08k08Ka_QfnLv5H1u5AhPitZNPe_42E,1212
42
- digsim/app/gui_objects/images/OR.png,sha256=54lsnUphLRwY9ioOOqAsRW0KRVTNOHZOPBKosXUTAOc,14870
43
- digsim/app/gui_objects/images/PB.png,sha256=bhnhD-Ood9hSBFr-aia2iCPT_Q7VYBaEq076sqU3DBY,8468
44
- digsim/app/gui_objects/images/Switch_OFF.png,sha256=ta11PvVIajT2gugj_SPK3mLn9_WaluqAK3t4aks9a-8,4752
45
- digsim/app/gui_objects/images/Switch_ON.png,sha256=fVo6Vi89-Fv32SsyWcRL9N7eDwDrTe1_hX6_602BR5A,4819
46
- digsim/app/gui_objects/images/XNOR.png,sha256=yoDcf5vn_OtcUnQQ3qSTLRqVTNBF_fmaGlpvXpWw_HE,14610
47
- digsim/app/gui_objects/images/XOR.png,sha256=yHfL2LnWVeepTunrgUF3Z5m3dVpQ1iuNL6EGKI1TAKs,16118
48
- digsim/app/gui_objects/images/YOSYS.png,sha256=etTO9jadU0amxQG7ySRjD6fME4HjrEEqXttM4XWDzxU,3117
49
- digsim/app/gui_objects/images/ZERO.png,sha256=hXnZgEVO3T_zN5CiFhu6cIXr19LAu6SdvX-sIOq06E4,3459
50
- digsim/app/images/app_icon.png,sha256=OfPoYA4o4Af79DTqQxSNLca0FdXRHEYteBK-xCQFEAw,16041
51
- digsim/app/model/__init__.py,sha256=djkoPeT3QoWyjzHdxTTAo7lpu9XbnXDvBBkffCAewms,161
52
- digsim/app/model/_model.py,sha256=MVrsIv8CZnITsVn79OyjJ9dMqajO5beEzhj7yJ_FCpE,6551
53
- digsim/app/model/_model_components.py,sha256=8x96YmkeHEaBYaB5i88G_Zf9MHcc05g8Go_YEBJ3R_o,6500
54
- digsim/app/model/_model_new_wire.py,sha256=5HnF5-gtKtB1Tp6ZIF7QuNo5zEHmsUpnBEmj6ZllLiA,1810
55
- digsim/app/model/_model_objects.py,sha256=mX7xMmLFYLZjwvG7CjpkWcKOfB5FPR1FgAe4mDSW1Vw,5078
56
- digsim/app/model/_model_settings.py,sha256=3nKzdhaSwYogC10-IFyNzbCsvXbmy9lrZ7hb_yRCyLg,1141
57
- digsim/app/model/_model_shortcuts.py,sha256=ovZ2uJC0rRYaLgf6UStPd4P33CiphvRmIOYx6c7M89M,2511
58
- digsim/app/settings/__init__.py,sha256=IAlekN6CEcw6G35sBfyCursMNs6G84HQNGuU1nEJ3gg,310
59
- digsim/app/settings/_component_settings.py,sha256=O5PL9NPNN63wzhECeA44SRx2nyYDXst6ODhFtv0hx-E,16311
60
- digsim/app/settings/_gui_settings.py,sha256=t1V9zCmiUUt8S_Edtayk79hzzjXvQKHwDT19w1XFVb0,2801
61
- digsim/app/settings/_shortcut_dialog.py,sha256=3lWNP6XKFcj1vW74XK0zv74qgU7Mp4xPSxVEvHuGGGM,1561
62
- digsim/circuit/__init__.py,sha256=WRm-UM1zVUvvIxzgSXapqKXGRqVwDKOq_TNXvJ-wkFI,218
63
- digsim/circuit/_circuit.py,sha256=YM3Rj2_DtxrP3oaWfAaFJkQGUopTmXQtOITZhszu8ZA,11823
64
- digsim/circuit/_waves_writer.py,sha256=tdh8Na_JoaC2gRHCPAK-UXEAgTC_ZcGHPBCAO7aekWA,1710
65
- digsim/circuit/components/__init__.py,sha256=YlrIUxtpi0K2ne3pEeMM0Z9s2h7y7ezOUbKNDQfT06Q,1269
66
- digsim/circuit/components/_bus_bits.py,sha256=0AvvteRnG4SpW_l-0e-cgBG85VxYlbfdVQFvQVSp88Y,1912
67
- digsim/circuit/components/_button.py,sha256=JK0yi48Putaf5RWJoPfD7kh9D4Gu5Nq2ZQKN3nnGOx0,1030
68
- digsim/circuit/components/_buzzer.py,sha256=zRvPhY8hdahDxfNTBzoGXJReQ_8iO3ot02Gz68szq2s,1125
69
- digsim/circuit/components/_clock.py,sha256=E6cINzY7_YXpHpr23Fn_V2_QhYLnPIZe0elxWozBUrY,1487
70
- digsim/circuit/components/_dip_switch.py,sha256=SX8vjNC2Nf0KZtXIRjBxz42fKJmp1qGHo4K0MJpg4N4,1807
71
- digsim/circuit/components/_flip_flops.py,sha256=eOB1hpSfK7vlpcOQzHqILpAzfwsqQPobC-_ebDxGVLw,2942
72
- digsim/circuit/components/_gates.py,sha256=_eQXmDCDnaE2QPjxoRa4QB0RB2YInPXW6JV1bPxiE0Q,7192
73
- digsim/circuit/components/_hexdigit.py,sha256=899_4hc02vWgpNVm7Ts7-PBHJc7Dc5hZFSJFayJuLQk,2257
74
- digsim/circuit/components/_ic.py,sha256=ppr6i7BpMiTdk889-TlFdANo0e-P4uDFeFA-666D1QQ,916
75
- digsim/circuit/components/_label_wire.py,sha256=NNlxwWCBGYGjQLiliqXRLGIkd3eOoCAVYW8tnPEI-sk,5112
76
- digsim/circuit/components/_led.py,sha256=djFGARGE1-DlTI7Xqd9eksqk6U1Cq8l51hLrzd_ut68,454
77
- digsim/circuit/components/_logic_analyzer.py,sha256=14iKsEifXXLIoZtm7ZOukHbFm7Y8TTTVO36Dplg-2hU,1809
78
- digsim/circuit/components/_mem64kbyte.py,sha256=tqex3qFxa7jk841f87inNB4UIY9E5z1SleqAL82eCUY,1482
79
- digsim/circuit/components/_memstdout.py,sha256=sCYkKH8XuWhB7-14VQOy7TkTgq-g0UDbhiI1HmM4HW8,1255
80
- digsim/circuit/components/_note.py,sha256=4o4bRw_7smKc_FGrVkhPwwIqC_500Vj_w8TrNtK1A8s,602
81
- digsim/circuit/components/_on_off_switch.py,sha256=bVLRJhBEdkNteSwW3v6ncloq6p8qWdqwx1I9azbRRjw,1202
82
- digsim/circuit/components/_seven_segment.py,sha256=8_qLkO6HVxDQuFGvg5ZxjziGMbMczydpPIbcHfpzTRg,798
83
- digsim/circuit/components/_static_level.py,sha256=bUzLf6Q0ASWFVhq5w2-PEm07yJO0reIF50SK0alJZjE,679
84
- digsim/circuit/components/_static_value.py,sha256=ZnrL2_x5HvXKc7kYJiv6-qGr6cHBI7M0pdk7y7YTzpI,1236
85
- digsim/circuit/components/_yosys_atoms.py,sha256=VYk2t0vWUAmvKSAkIQh6aEmZJ8oBo930-uUU5FrkK-s,37737
86
- digsim/circuit/components/_yosys_component.py,sha256=8wonCReHV3YSsV1a54v0MEMu0n-N7v3BhtEAZIkHkuM,8888
87
- digsim/circuit/components/atoms/__init__.py,sha256=1WJXjodu8Mkkmexn8wuHCfwXUI1OGRJMDAzeJccmGes,485
88
- digsim/circuit/components/atoms/_component.py,sha256=wzImlksBIup9vTmjoWZYx7ZdZsLzrleKAokn0EM0xaI,9865
89
- digsim/circuit/components/atoms/_digsim_exception.py,sha256=Y5mBve15zZbduqNNAyf7WzqDk4NtvUL_g2vYy5kBQ3U,173
90
- digsim/circuit/components/atoms/_port.py,sha256=AFsKnGcfOHCjy9P3W24-e15wRiIvSESc4Yk_JLL4q7I,12159
91
- digsim/circuit/components/ic/74162.json,sha256=BtLDDhNP4jYQD2EZ2nBHfUMRbuPztR54luLEpWl7j-o,26632
92
- digsim/circuit/components/ic/7448.json,sha256=7p9l6l_QSw6DtphZcGgBMMP0PyMB5DYglciMhqCKp04,21211
93
- digsim/synth/__init__.py,sha256=HMnCufXXuxr7ZevbrI5ugpAfpxjjiyjOnOtH94FCKXw,182
94
- digsim/synth/__main__.py,sha256=atk0KFpRg4ClaPhpQ-2PaP9ljrUKoCczc6mDKk18xFA,2175
95
- digsim/synth/_synthesis.py,sha256=LGTxedV-QWZBLAfFdCrpYhFQ0SSrneuletVQl4vkpiw,4047
96
- digsim/utils/__init__.py,sha256=1WW4WR61YIrehXvHp_fSTBkAUBb9G5v3npGQLYY_CvA,169
97
- digsim/utils/_yosys_netlist.py,sha256=g-7hkVgGOYJUQbKv8wBqHMHqj44utuGHGbtaRb-qG60,8562
98
- digsim_logic_simulator-0.3.0.dist-info/LICENSE.md,sha256=nx2x6ryeruncSHeHtF33WLjt5JARcm5rLdZuK_c8hL0,1688
99
- digsim_logic_simulator-0.3.0.dist-info/METADATA,sha256=Ni1snl7tdQhD6DpbbvPNMce3H3SBNz2D-ZrxKeBYhBE,6336
100
- digsim_logic_simulator-0.3.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
101
- digsim_logic_simulator-0.3.0.dist-info/top_level.txt,sha256=qpCMzQKADZHVqZIoQgFrv3qJ3u7PPU73gTCXQglqLa8,7
102
- digsim_logic_simulator-0.3.0.dist-info/RECORD,,