diff --git a/architecture_simulator/gui/toy_svg_directives.py b/architecture_simulator/gui/toy_svg_directives.py
index dea12505..2eb8ad91 100644
--- a/architecture_simulator/gui/toy_svg_directives.py
+++ b/architecture_simulator/gui/toy_svg_directives.py
@@ -40,29 +40,51 @@ def __init__(self):
self.text_alu_out = SvgWriteDirective()
# Control unit signal paths and texts to highlight.
self.path_control_unit_write_ram = SvgFillDirectiveControlUnit()
+ self.path_control_unit_write_ram_2 = SvgFillDirectiveControlUnit()
self.text_write_ram = SvgFillDirectiveControlUnit()
+ self.text_write_ram_2 = SvgFillDirectiveControlUnit()
self.path_control_unit_inc_pc = SvgFillDirectiveControlUnit()
+ self.path_control_unit_inc_pc_2 = SvgFillDirectiveControlUnit()
self.text_inc_pc = SvgFillDirectiveControlUnit()
self.path_control_unit_set_pc = SvgFillDirectiveControlUnit()
+ self.path_control_unit_set_pc_2 = SvgFillDirectiveControlUnit()
self.text_set_pc = SvgFillDirectiveControlUnit()
self.path_control_unit_addr_ir = SvgFillDirectiveControlUnit()
+ self.path_control_unit_addr_ir_2 = SvgFillDirectiveControlUnit()
self.text_addr_ir = SvgFillDirectiveControlUnit()
+ self.text_addr_ir_2 = SvgFillDirectiveControlUnit()
self.path_control_unit_set_ir = SvgFillDirectiveControlUnit()
+ self.path_control_unit_set_ir_2 = SvgFillDirectiveControlUnit()
self.text_set_ir = SvgFillDirectiveControlUnit()
+ self.text_set_ir_2 = SvgFillDirectiveControlUnit()
self.path_control_unit_set_accu = SvgFillDirectiveControlUnit()
+ self.path_control_unit_set_accu_2 = SvgFillDirectiveControlUnit()
self.text_set_accu = SvgFillDirectiveControlUnit()
+ self.text_set_accu_2 = SvgFillDirectiveControlUnit()
self.path_control_unit_alucin = SvgFillDirectiveControlUnit()
+ self.path_control_unit_alucin_2 = SvgFillDirectiveControlUnit()
self.text_alucin = SvgFillDirectiveControlUnit()
+ self.text_alucin_2 = SvgFillDirectiveControlUnit()
self.path_control_unit_alumode = SvgFillDirectiveControlUnit()
+ self.path_control_unit_alumode_2 = SvgFillDirectiveControlUnit()
self.text_alumode = SvgFillDirectiveControlUnit()
+ self.text_alumode_2 = SvgFillDirectiveControlUnit()
self.path_control_unit_alu3 = SvgFillDirectiveControlUnit()
+ self.path_control_unit_alu3_2 = SvgFillDirectiveControlUnit()
self.text_alu3 = SvgFillDirectiveControlUnit()
+ self.text_alu3_2 = SvgFillDirectiveControlUnit()
self.path_control_unit_alu2 = SvgFillDirectiveControlUnit()
+ self.path_control_unit_alu2_2 = SvgFillDirectiveControlUnit()
self.text_alu2 = SvgFillDirectiveControlUnit()
+ self.text_alu2_2 = SvgFillDirectiveControlUnit()
self.path_control_unit_alu1 = SvgFillDirectiveControlUnit()
+ self.path_control_unit_alu1_2 = SvgFillDirectiveControlUnit()
self.text_alu1 = SvgFillDirectiveControlUnit()
+ self.text_alu1_2 = SvgFillDirectiveControlUnit()
self.path_control_unit_alu0 = SvgFillDirectiveControlUnit()
+ self.path_control_unit_alu0_2 = SvgFillDirectiveControlUnit()
self.text_alu0 = SvgFillDirectiveControlUnit()
+ self.text_alu0_2 = SvgFillDirectiveControlUnit()
def export(self) -> list[tuple[str, str, Any]]:
"""Exports all SvgDirectives into a format that the front end understands.
@@ -174,4 +196,4 @@ class SvgFillDirectiveControlUnit(SvgFillDirective):
"""SVG Fill Directive for the control unit signals."""
def __init__(self):
- super().__init__(color_on="#ED6B03", color_off="#000000")
+ super().__init__(color_on="#ed0202", color_off="#000000")
diff --git a/architecture_simulator/gui/webgui.py b/architecture_simulator/gui/webgui.py
index 256171a9..d4cf20b3 100644
--- a/architecture_simulator/gui/webgui.py
+++ b/architecture_simulator/gui/webgui.py
@@ -740,6 +740,23 @@ def get_toy_svg_update_values(sim: ToySimulation) -> list[tuple[str, str, Any]]:
assert isinstance(control_unit_text, SvgFillDirectiveControlUnit)
control_unit_path.do_highlight = value
control_unit_text.do_highlight = value
+
+ try:
+ control_unit_path_2 = getattr(
+ result, "path_control_unit_" + name + "_2"
+ )
+ except AttributeError:
+ pass
+ else:
+ control_unit_path_2.do_highlight = value
+
+ try:
+ control_unit_text_2 = getattr(result, "text_" + name + "_2")
+ except AttributeError:
+ pass
+ else:
+ control_unit_text_2.do_highlight = value
+
return result.export()
diff --git a/webgui/img/toy_structure.svg b/webgui/img/toy_structure.svg
index 9d6ffa46..586d022a 100755
--- a/webgui/img/toy_structure.svg
+++ b/webgui/img/toy_structure.svg
@@ -1,14 +1,14 @@
OpcodeNOP-32768-32768-32768-3276815 NOPClockClockMultiplexerMultiplexerPCPCProgram CounterProgram CounterRAMRAMArithmetic Logic UnitArithmetic Logic UnitACCUACCUALUCINALUCINALU0ALU1ALU2ALU3ALUMODEALUCINSET[IR]SET[ACCU]WRITE[RAM]ADDR=IRADDR=IRADDR=IR