digsim-logic-simulator 0.14.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.

Files changed (121) hide show
  1. {digsim_logic_simulator-0.14.0/src/digsim_logic_simulator.egg-info → digsim_logic_simulator-0.15.0}/PKG-INFO +1 -1
  2. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/pyproject.toml +1 -1
  3. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_main_window.py +11 -4
  4. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_component_port_item.py +2 -0
  5. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model.py +6 -0
  6. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0/src/digsim_logic_simulator.egg-info}/PKG-INFO +1 -1
  7. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/LICENSE.md +0 -0
  8. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/MANIFEST.in +0 -0
  9. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/README.md +0 -0
  10. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/setup.cfg +0 -0
  11. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/__init__.py +0 -0
  12. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/__main__.py +0 -0
  13. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/__init__.py +0 -0
  14. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_circuit_area.py +0 -0
  15. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_component_selection.py +0 -0
  16. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_top_bar.py +0 -0
  17. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_utils.py +0 -0
  18. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui/_warning_dialog.py +0 -0
  19. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/__init__.py +0 -0
  20. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_bus_bit_object.py +0 -0
  21. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_buzzer_object.py +0 -0
  22. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_component_context_menu.py +0 -0
  23. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_component_object.py +0 -0
  24. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_dip_switch_object.py +0 -0
  25. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_gui_note_object.py +0 -0
  26. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_gui_object_factory.py +0 -0
  27. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_hexdigit_object.py +0 -0
  28. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_image_objects.py +0 -0
  29. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_label_object.py +0 -0
  30. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_logic_analyzer_object.py +0 -0
  31. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_seven_segment_object.py +0 -0
  32. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_shortcut_objects.py +0 -0
  33. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/_yosys_object.py +0 -0
  34. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/AND.png +0 -0
  35. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/Analyzer.png +0 -0
  36. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/BUF.png +0 -0
  37. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/Buzzer.png +0 -0
  38. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/Clock.png +0 -0
  39. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/DFF.png +0 -0
  40. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/DIP_SWITCH.png +0 -0
  41. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/FlipFlop.png +0 -0
  42. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/IC.png +0 -0
  43. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/LED_OFF.png +0 -0
  44. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/LED_ON.png +0 -0
  45. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/MUX.png +0 -0
  46. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/NAND.png +0 -0
  47. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/NOR.png +0 -0
  48. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/NOT.png +0 -0
  49. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/ONE.png +0 -0
  50. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/OR.png +0 -0
  51. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/PB.png +0 -0
  52. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/Switch_OFF.png +0 -0
  53. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/Switch_ON.png +0 -0
  54. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/XNOR.png +0 -0
  55. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/XOR.png +0 -0
  56. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/YOSYS.png +0 -0
  57. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/gui_objects/images/ZERO.png +0 -0
  58. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/images/app_icon.png +0 -0
  59. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/__init__.py +0 -0
  60. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model_components.py +0 -0
  61. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model_new_wire.py +0 -0
  62. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model_objects.py +0 -0
  63. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model_settings.py +0 -0
  64. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/model/_model_shortcuts.py +0 -0
  65. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/settings/__init__.py +0 -0
  66. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/settings/_component_settings.py +0 -0
  67. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/settings/_gui_settings.py +0 -0
  68. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/app/settings/_shortcut_dialog.py +0 -0
  69. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/__init__.py +0 -0
  70. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/_circuit.py +0 -0
  71. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/_waves_writer.py +0 -0
  72. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/__init__.py +0 -0
  73. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_bus_bits.py +0 -0
  74. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_button.py +0 -0
  75. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_buzzer.py +0 -0
  76. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_clock.py +0 -0
  77. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_dip_switch.py +0 -0
  78. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_flip_flops.py +0 -0
  79. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_gates.py +0 -0
  80. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_hexdigit.py +0 -0
  81. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_ic.py +0 -0
  82. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_label_wire.py +0 -0
  83. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_led.py +0 -0
  84. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_logic_analyzer.py +0 -0
  85. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_mem64kbyte.py +0 -0
  86. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_memstdout.py +0 -0
  87. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_note.py +0 -0
  88. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_on_off_switch.py +0 -0
  89. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_seven_segment.py +0 -0
  90. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_static_level.py +0 -0
  91. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_static_value.py +0 -0
  92. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_yosys_atoms.py +0 -0
  93. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/_yosys_component.py +0 -0
  94. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/atoms/__init__.py +0 -0
  95. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/atoms/_component.py +0 -0
  96. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/atoms/_digsim_exception.py +0 -0
  97. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/atoms/_port.py +0 -0
  98. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/ic/74162.json +0 -0
  99. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/circuit/components/ic/7448.json +0 -0
  100. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/storage_model/__init__.py +0 -0
  101. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/storage_model/_app.py +0 -0
  102. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/storage_model/_circuit.py +0 -0
  103. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/synth/__init__.py +0 -0
  104. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/synth/__main__.py +0 -0
  105. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/synth/_synthesis.py +0 -0
  106. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/utils/__init__.py +0 -0
  107. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim/utils/_yosys_netlist.py +0 -0
  108. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim_logic_simulator.egg-info/SOURCES.txt +0 -0
  109. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim_logic_simulator.egg-info/dependency_links.txt +0 -0
  110. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim_logic_simulator.egg-info/requires.txt +0 -0
  111. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/src/digsim_logic_simulator.egg-info/top_level.txt +0 -0
  112. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/tests/test_gates.py +0 -0
  113. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_aldff.py +0 -0
  114. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_dff.py +0 -0
  115. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_dlatch.py +0 -0
  116. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_gates.py +0 -0
  117. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_latch.py +0 -0
  118. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_netlist.py +0 -0
  119. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_sdff.py +0 -0
  120. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.0}/tests/test_yosys_sr.py +0 -0
  121. {digsim_logic_simulator-0.14.0 → digsim_logic_simulator-0.15.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.14.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>
@@ -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.14.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"
@@ -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
- if self._app_model.objects.new_wire.ongoing():
121
- self._app_model.objects.new_wire.abort()
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"""
@@ -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())
@@ -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()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: digsim-logic-simulator
3
- Version: 0.14.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>