digsim-logic-simulator 0.10.0__tar.gz → 0.12.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.

Files changed (121) hide show
  1. {digsim_logic_simulator-0.10.0/src/digsim_logic_simulator.egg-info → digsim_logic_simulator-0.12.0}/PKG-INFO +1 -1
  2. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/pyproject.toml +1 -1
  3. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_buzzer_object.py +1 -6
  4. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/model/_model_settings.py +1 -1
  5. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/synth/_synthesis.py +22 -0
  6. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0/src/digsim_logic_simulator.egg-info}/PKG-INFO +1 -1
  7. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/LICENSE.md +0 -0
  8. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/MANIFEST.in +0 -0
  9. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/README.md +0 -0
  10. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/setup.cfg +0 -0
  11. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/__init__.py +0 -0
  12. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/__main__.py +0 -0
  13. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui/__init__.py +0 -0
  14. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui/_circuit_area.py +0 -0
  15. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui/_component_selection.py +0 -0
  16. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui/_main_window.py +0 -0
  17. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui/_top_bar.py +0 -0
  18. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui/_utils.py +0 -0
  19. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui/_warning_dialog.py +0 -0
  20. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/__init__.py +0 -0
  21. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_bus_bit_object.py +0 -0
  22. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_component_context_menu.py +0 -0
  23. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_component_object.py +0 -0
  24. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_component_port_item.py +0 -0
  25. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_dip_switch_object.py +0 -0
  26. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_gui_note_object.py +0 -0
  27. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_gui_object_factory.py +0 -0
  28. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_hexdigit_object.py +0 -0
  29. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_image_objects.py +0 -0
  30. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_label_object.py +0 -0
  31. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_logic_analyzer_object.py +0 -0
  32. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_seven_segment_object.py +0 -0
  33. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_shortcut_objects.py +0 -0
  34. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/_yosys_object.py +0 -0
  35. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/AND.png +0 -0
  36. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/Analyzer.png +0 -0
  37. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/BUF.png +0 -0
  38. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/Buzzer.png +0 -0
  39. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/Clock.png +0 -0
  40. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/DFF.png +0 -0
  41. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/DIP_SWITCH.png +0 -0
  42. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/FlipFlop.png +0 -0
  43. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/IC.png +0 -0
  44. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/LED_OFF.png +0 -0
  45. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/LED_ON.png +0 -0
  46. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/MUX.png +0 -0
  47. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/NAND.png +0 -0
  48. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/NOR.png +0 -0
  49. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/NOT.png +0 -0
  50. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/ONE.png +0 -0
  51. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/OR.png +0 -0
  52. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/PB.png +0 -0
  53. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/Switch_OFF.png +0 -0
  54. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/Switch_ON.png +0 -0
  55. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/XNOR.png +0 -0
  56. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/XOR.png +0 -0
  57. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/YOSYS.png +0 -0
  58. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/gui_objects/images/ZERO.png +0 -0
  59. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/images/app_icon.png +0 -0
  60. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/model/__init__.py +0 -0
  61. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/model/_model.py +0 -0
  62. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/model/_model_components.py +0 -0
  63. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/model/_model_new_wire.py +0 -0
  64. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/model/_model_objects.py +0 -0
  65. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/model/_model_shortcuts.py +0 -0
  66. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/settings/__init__.py +0 -0
  67. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/settings/_component_settings.py +0 -0
  68. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/settings/_gui_settings.py +0 -0
  69. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/app/settings/_shortcut_dialog.py +0 -0
  70. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/__init__.py +0 -0
  71. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/_circuit.py +0 -0
  72. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/_waves_writer.py +0 -0
  73. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/__init__.py +0 -0
  74. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_bus_bits.py +0 -0
  75. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_button.py +0 -0
  76. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_buzzer.py +0 -0
  77. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_clock.py +0 -0
  78. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_dip_switch.py +0 -0
  79. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_flip_flops.py +0 -0
  80. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_gates.py +0 -0
  81. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_hexdigit.py +0 -0
  82. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_ic.py +0 -0
  83. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_label_wire.py +0 -0
  84. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_led.py +0 -0
  85. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_logic_analyzer.py +0 -0
  86. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_mem64kbyte.py +0 -0
  87. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_memstdout.py +0 -0
  88. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_note.py +0 -0
  89. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_on_off_switch.py +0 -0
  90. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_seven_segment.py +0 -0
  91. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_static_level.py +0 -0
  92. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_static_value.py +0 -0
  93. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_yosys_atoms.py +0 -0
  94. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/_yosys_component.py +0 -0
  95. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/atoms/__init__.py +0 -0
  96. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/atoms/_component.py +0 -0
  97. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/atoms/_digsim_exception.py +0 -0
  98. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/atoms/_port.py +0 -0
  99. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/ic/74162.json +0 -0
  100. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/circuit/components/ic/7448.json +0 -0
  101. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/storage_model/__init__.py +0 -0
  102. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/storage_model/_app.py +0 -0
  103. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/storage_model/_circuit.py +0 -0
  104. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/synth/__init__.py +0 -0
  105. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/synth/__main__.py +0 -0
  106. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/utils/__init__.py +0 -0
  107. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim/utils/_yosys_netlist.py +0 -0
  108. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim_logic_simulator.egg-info/SOURCES.txt +0 -0
  109. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim_logic_simulator.egg-info/dependency_links.txt +0 -0
  110. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim_logic_simulator.egg-info/requires.txt +0 -0
  111. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/src/digsim_logic_simulator.egg-info/top_level.txt +0 -0
  112. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/tests/test_gates.py +0 -0
  113. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/tests/test_yosys_aldff.py +0 -0
  114. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/tests/test_yosys_dff.py +0 -0
  115. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/tests/test_yosys_dlatch.py +0 -0
  116. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/tests/test_yosys_gates.py +0 -0
  117. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/tests/test_yosys_latch.py +0 -0
  118. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/tests/test_yosys_netlist.py +0 -0
  119. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/tests/test_yosys_sdff.py +0 -0
  120. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/tests/test_yosys_sr.py +0 -0
  121. {digsim_logic_simulator-0.10.0 → digsim_logic_simulator-0.12.0}/tests/test_yosys_synth.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: digsim-logic-simulator
3
- Version: 0.10.0
3
+ Version: 0.12.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>
@@ -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.10.0"
8
+ version = "0.12.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"
@@ -66,12 +66,7 @@ class BuzzerObject(ImageObjectWithActiveRect):
66
66
  self.audio_sink = None
67
67
  self._app_model.sig_audio_start.connect(self._audio_start)
68
68
  self._app_model.sig_audio_notify.connect(self._audio_notify)
69
- self.device = None
70
- devices = QMediaDevices.audioOutputs()
71
- if len(devices) == 0:
72
- return
73
- self.device = devices[0]
74
-
69
+ self.device = QMediaDevices.defaultAudioOutput()
75
70
  self.audio_format = QAudioFormat()
76
71
  self.audio_format.setSampleRate(self.DATA_SAMPLE_RATE_HZ)
77
72
  self.audio_format.setChannelCount(1)
@@ -27,7 +27,7 @@ class ModelSettings:
27
27
 
28
28
  def from_dict(self, circuit_dict):
29
29
  """Get settings from circuit dict"""
30
- for key, data in circuit_dict.get("settings", {}).items():
30
+ for key, data in circuit_dict.items():
31
31
  self._settings[key] = data
32
32
 
33
33
  def get(self, key):
@@ -4,7 +4,9 @@
4
4
  """Helper module for yosys synthesis"""
5
5
 
6
6
  import json
7
+ import pathlib
7
8
  import shutil
9
+ import site
8
10
  import sys
9
11
 
10
12
  import pexpect
@@ -43,10 +45,30 @@ class Synthesis:
43
45
  out_lines.append(line)
44
46
  return out_lines
45
47
 
48
+ @staticmethod
49
+ def _find_win_yowasp_yosys_binary():
50
+ try:
51
+ # Use getusersitepackages if this is present, as it ensures that the
52
+ # value is initialised properly.
53
+ user_site = site.getusersitepackages()
54
+ except AttributeError:
55
+ user_site = site.USER_SITE
56
+ scripts_path = pathlib.Path(user_site).parent / "Scripts"
57
+ yowasp_yosys_path = scripts_path / "yowasp-yosys.exe"
58
+ if yowasp_yosys_path.is_file():
59
+ return str(yowasp_yosys_path)
60
+ return None
61
+
46
62
  @classmethod
47
63
  def _pexpect_spawn_yosys(cls):
64
+ # Find linux binary
48
65
  yosys_exe = shutil.which("yosys") or shutil.which("yowasp-yosys")
49
66
 
67
+ # No binary found
68
+ if yosys_exe is None:
69
+ # Try to find windows binary
70
+ yosys_exe = cls._find_win_yowasp_yosys_binary()
71
+
50
72
  if yosys_exe is None:
51
73
  raise SynthesisException("Yosys executable not found")
52
74
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: digsim-logic-simulator
3
- Version: 0.10.0
3
+ Version: 0.12.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>