digsim-logic-simulator 0.13.0__tar.gz → 0.15.0__tar.gz
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.
- {digsim_logic_simulator-0.13.0/src/digsim_logic_simulator.egg-info → digsim_logic_simulator-0.15.0}/PKG-INFO +4 -5
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/pyproject.toml +5 -6
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/__init__.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/__main__.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/__init__.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_component_selection.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_main_window.py +12 -5
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_top_bar.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_utils.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/__init__.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_bus_bit_object.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_buzzer_object.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_component_context_menu.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_component_object.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_component_port_item.py +3 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_dip_switch_object.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_gui_note_object.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_gui_object_factory.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_hexdigit_object.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_image_objects.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_label_object.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_logic_analyzer_object.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_seven_segment_object.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_shortcut_objects.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_yosys_object.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/__init__.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model.py +7 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model_components.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model_new_wire.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model_objects.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model_settings.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model_shortcuts.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/settings/__init__.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/settings/_component_settings.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/settings/_gui_settings.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/settings/_shortcut_dialog.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/__init__.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/__init__.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_bus_bits.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_button.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_buzzer.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_clock.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_dip_switch.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_flip_flops.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_hexdigit.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_ic.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_label_wire.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_led.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_logic_analyzer.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_mem64kbyte.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_memstdout.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_note.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_on_off_switch.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_seven_segment.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_static_level.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_static_value.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_yosys_component.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/atoms/_digsim_exception.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/storage_model/_app.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/storage_model/_circuit.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/synth/__init__.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/synth/__main__.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/synth/_synthesis.py +2 -2
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/utils/__init__.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/utils/_yosys_netlist.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0/src/digsim_logic_simulator.egg-info}/PKG-INFO +4 -5
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim_logic_simulator.egg-info/requires.txt +2 -2
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/tests/test_gates.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_aldff.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_dff.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_dlatch.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_gates.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_latch.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_netlist.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_sdff.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_synth.py +1 -1
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/LICENSE.md +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/MANIFEST.in +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/README.md +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/setup.cfg +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_circuit_area.py +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_warning_dialog.py +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/AND.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/Analyzer.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/BUF.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/Buzzer.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/Clock.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/DFF.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/DIP_SWITCH.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/FlipFlop.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/IC.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/LED_OFF.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/LED_ON.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/MUX.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/NAND.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/NOR.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/NOT.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/ONE.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/OR.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/PB.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/Switch_OFF.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/Switch_ON.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/XNOR.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/XOR.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/YOSYS.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/ZERO.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/images/app_icon.png +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/_circuit.py +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/_waves_writer.py +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_gates.py +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_yosys_atoms.py +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/atoms/__init__.py +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/atoms/_component.py +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/atoms/_port.py +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/ic/74162.json +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/ic/7448.json +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/storage_model/__init__.py +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim_logic_simulator.egg-info/SOURCES.txt +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim_logic_simulator.egg-info/dependency_links.txt +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim_logic_simulator.egg-info/top_level.txt +0 -0
- {digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_sr.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: digsim-logic-simulator
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.15.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>
|
|
@@ -8,21 +8,20 @@ Project-URL: homepage, https://github.com/freand76/digsim
|
|
|
8
8
|
Keywords: educational,simulation,digital
|
|
9
9
|
Classifier: Development Status :: 5 - Production/Stable
|
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
|
11
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
12
11
|
Classifier: Programming Language :: Python :: 3.10
|
|
13
12
|
Classifier: Programming Language :: Python :: 3.11
|
|
14
13
|
Classifier: Programming Language :: Python :: 3.12
|
|
15
14
|
Classifier: Programming Language :: Python :: 3.13
|
|
16
15
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
17
|
-
Requires-Python: >=3.
|
|
16
|
+
Requires-Python: >=3.10
|
|
18
17
|
Description-Content-Type: text/markdown
|
|
19
18
|
License-File: LICENSE.md
|
|
20
19
|
Requires-Dist: pyvcd==0.4.1
|
|
21
20
|
Requires-Dist: pyside6==6.9.1
|
|
22
21
|
Requires-Dist: pexpect==4.9.0
|
|
23
|
-
Requires-Dist: pydantic==2.
|
|
22
|
+
Requires-Dist: pydantic==2.12.3
|
|
24
23
|
Requires-Dist: qtawesome==1.4.0
|
|
25
|
-
Requires-Dist: yowasp-yosys==0.
|
|
24
|
+
Requires-Dist: yowasp-yosys==0.58.0.0.post1010
|
|
26
25
|
Dynamic: license-file
|
|
27
26
|
|
|
28
27
|
# DigSim - Interactive Digital Logic Simulator
|
|
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "digsim-logic-simulator"
|
|
7
7
|
description = "Interactive Digital Logic Simulator"
|
|
8
|
-
version = "0.
|
|
8
|
+
version = "0.15.0"
|
|
9
9
|
authors = [{name = "Fredrik Andersson", email = "freand@gmail.com"}]
|
|
10
10
|
maintainers = [{name = "Fredrik Andersson", email = "freand@gmail.com"}]
|
|
11
11
|
readme = "README.md"
|
|
@@ -15,7 +15,6 @@ urls = { homepage = "https://github.com/freand76/digsim" }
|
|
|
15
15
|
classifiers = [
|
|
16
16
|
"Development Status :: 5 - Production/Stable",
|
|
17
17
|
"Programming Language :: Python :: 3",
|
|
18
|
-
"Programming Language :: Python :: 3.9",
|
|
19
18
|
"Programming Language :: Python :: 3.10",
|
|
20
19
|
"Programming Language :: Python :: 3.11",
|
|
21
20
|
"Programming Language :: Python :: 3.12",
|
|
@@ -23,21 +22,21 @@ classifiers = [
|
|
|
23
22
|
"Programming Language :: Python :: 3 :: Only",
|
|
24
23
|
]
|
|
25
24
|
|
|
26
|
-
requires-python = ">=3.
|
|
25
|
+
requires-python = ">=3.10"
|
|
27
26
|
dependencies = [
|
|
28
27
|
"pyvcd==0.4.1",
|
|
29
28
|
"pyside6==6.9.1",
|
|
30
29
|
"pexpect==4.9.0",
|
|
31
|
-
"pydantic==2.
|
|
30
|
+
"pydantic==2.12.3",
|
|
32
31
|
"qtawesome==1.4.0",
|
|
33
|
-
"yowasp-yosys==0.
|
|
32
|
+
"yowasp-yosys==0.58.0.0.post1010",
|
|
34
33
|
]
|
|
35
34
|
|
|
36
35
|
keywords = ["educational", "simulation", "digital"]
|
|
37
36
|
|
|
38
37
|
[tool.ruff]
|
|
39
38
|
line-length = 99
|
|
40
|
-
target-version = "
|
|
39
|
+
target-version = "py310"
|
|
41
40
|
|
|
42
41
|
show-fixes = true
|
|
43
42
|
output-format = "full"
|
{digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_main_window.py
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) Fredrik Andersson, 2023-
|
|
1
|
+
# Copyright (c) Fredrik Andersson, 2023-2025
|
|
2
2
|
# All rights reserved
|
|
3
3
|
|
|
4
4
|
"""The main window and widgets of the digsim gui application"""
|
|
@@ -111,16 +111,23 @@ class MainWindow(QMainWindow):
|
|
|
111
111
|
if event.isAutoRepeat():
|
|
112
112
|
event.accept()
|
|
113
113
|
return
|
|
114
|
+
|
|
115
|
+
if event.key() == Qt.Key_Space:
|
|
116
|
+
if self._app_model.is_running:
|
|
117
|
+
self._app_model.model_stop()
|
|
118
|
+
else:
|
|
119
|
+
self._app_model.model_start()
|
|
120
|
+
event.accept()
|
|
121
|
+
return
|
|
122
|
+
|
|
114
123
|
if self._app_model.is_running:
|
|
115
124
|
self._app_model.shortcuts.press(event.key())
|
|
116
125
|
event.accept()
|
|
117
126
|
return
|
|
118
127
|
|
|
119
128
|
if event.key() == Qt.Key_Escape:
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
self._app_model.sig_repaint.emit()
|
|
123
|
-
event.accept()
|
|
129
|
+
self._app_model.model_abort_wire()
|
|
130
|
+
event.accept()
|
|
124
131
|
|
|
125
132
|
def keyReleaseEvent(self, event):
|
|
126
133
|
"""QT event callback function"""
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) Fredrik Andersson, 2023
|
|
1
|
+
# Copyright (c) Fredrik Andersson, 2023-2025
|
|
2
2
|
# All rights reserved
|
|
3
3
|
|
|
4
4
|
"""A component port graphics item"""
|
|
@@ -28,6 +28,8 @@ class PortGraphicsItem(QGraphicsRectItem):
|
|
|
28
28
|
|
|
29
29
|
def mousePressEvent(self, _):
|
|
30
30
|
"""QT event callback function"""
|
|
31
|
+
if self._app_model.is_running:
|
|
32
|
+
return
|
|
31
33
|
if self._app_model.objects.new_wire.ongoing():
|
|
32
34
|
try:
|
|
33
35
|
self._app_model.objects.new_wire.end(self._port.parent(), self._port.name())
|
{digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model.py
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) Fredrik Andersson, 2023-
|
|
1
|
+
# Copyright (c) Fredrik Andersson, 2023-2025
|
|
2
2
|
# All rights reserved
|
|
3
3
|
|
|
4
4
|
"""An application model for a GUI simulated circuit"""
|
|
@@ -88,6 +88,7 @@ class AppModel(QThread):
|
|
|
88
88
|
|
|
89
89
|
def model_start(self):
|
|
90
90
|
"""Start model simulation thread"""
|
|
91
|
+
self.model_abort_wire()
|
|
91
92
|
self._started = True
|
|
92
93
|
self._single_step = False
|
|
93
94
|
self.start()
|
|
@@ -119,6 +120,11 @@ class AppModel(QThread):
|
|
|
119
120
|
"""Add medel events (functions) from the GUI"""
|
|
120
121
|
self._gui_event_queue.put(func)
|
|
121
122
|
|
|
123
|
+
def model_abort_wire(self):
|
|
124
|
+
if self._model_objects.new_wire.ongoing():
|
|
125
|
+
self._model_objects.new_wire.abort()
|
|
126
|
+
self.sig_repaint.emit()
|
|
127
|
+
|
|
122
128
|
def run(self):
|
|
123
129
|
"""Simulation thread run function"""
|
|
124
130
|
start_time = time.perf_counter()
|
{digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/synth/_synthesis.py
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) Fredrik Andersson, 2023
|
|
1
|
+
# Copyright (c) Fredrik Andersson, 2023-2025
|
|
2
2
|
# All rights reserved
|
|
3
3
|
|
|
4
4
|
"""Helper module for yosys synthesis"""
|
|
@@ -116,7 +116,7 @@ class Synthesis:
|
|
|
116
116
|
script += "proc; flatten; "
|
|
117
117
|
script += "memory_dff; "
|
|
118
118
|
script += "proc; opt; techmap; opt; "
|
|
119
|
-
script += f"synth -top {self._verilog_top_module}; "
|
|
119
|
+
script += f"synth -noabc -top {self._verilog_top_module}; "
|
|
120
120
|
|
|
121
121
|
pexp = self._pexpect_spawn_yosys()
|
|
122
122
|
self._pexpect_wait_for_prompt(pexp)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: digsim-logic-simulator
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.15.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>
|
|
@@ -8,21 +8,20 @@ Project-URL: homepage, https://github.com/freand76/digsim
|
|
|
8
8
|
Keywords: educational,simulation,digital
|
|
9
9
|
Classifier: Development Status :: 5 - Production/Stable
|
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
|
11
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
12
11
|
Classifier: Programming Language :: Python :: 3.10
|
|
13
12
|
Classifier: Programming Language :: Python :: 3.11
|
|
14
13
|
Classifier: Programming Language :: Python :: 3.12
|
|
15
14
|
Classifier: Programming Language :: Python :: 3.13
|
|
16
15
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
17
|
-
Requires-Python: >=3.
|
|
16
|
+
Requires-Python: >=3.10
|
|
18
17
|
Description-Content-Type: text/markdown
|
|
19
18
|
License-File: LICENSE.md
|
|
20
19
|
Requires-Dist: pyvcd==0.4.1
|
|
21
20
|
Requires-Dist: pyside6==6.9.1
|
|
22
21
|
Requires-Dist: pexpect==4.9.0
|
|
23
|
-
Requires-Dist: pydantic==2.
|
|
22
|
+
Requires-Dist: pydantic==2.12.3
|
|
24
23
|
Requires-Dist: qtawesome==1.4.0
|
|
25
|
-
Requires-Dist: yowasp-yosys==0.
|
|
24
|
+
Requires-Dist: yowasp-yosys==0.58.0.0.post1010
|
|
26
25
|
Dynamic: license-file
|
|
27
26
|
|
|
28
27
|
# DigSim - Interactive Digital Logic Simulator
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_circuit_area.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/images/app_icon.png
RENAMED
|
File without changes
|
{digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/_circuit.py
RENAMED
|
File without changes
|
{digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/_waves_writer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{digsim_logic_simulator-0.13.0 → digsim_logic_simulator-0.15.0}/src/digsim/storage_model/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|