From: Christian Femers Date: Mon, 16 Sep 2019 01:14:18 +0000 (+0200) Subject: Fixed bug in CoreWordAddressableMemory where signals were not cleared. X-Git-Url: https://mograsim.net/gitweb/?p=Mograsim.git;a=commitdiff_plain;h=9268d2fe8fd0ee49bcace266573425d27237b041 Fixed bug in CoreWordAddressableMemory where signals were not cleared. --- diff --git a/net.mograsim.machine/src/net/mograsim/machine/standard/memory/CoreWordAddressableMemory.java b/net.mograsim.machine/src/net/mograsim/machine/standard/memory/CoreWordAddressableMemory.java index ca557a6b..40abba9f 100644 --- a/net.mograsim.machine/src/net/mograsim/machine/standard/memory/CoreWordAddressableMemory.java +++ b/net.mograsim.machine/src/net/mograsim/machine/standard/memory/CoreWordAddressableMemory.java @@ -71,12 +71,12 @@ public class CoreWordAddressableMemory extends BasicCoreComponent return e -> data.feedSignals(storedData); } BitVector transData = data.getValues(); - if (transData.equals(memory.getCell(addressed))) - return null; + boolean isNewData = !transData.equals(memory.getCell(addressed)); return e -> { data.clearSignals(); - memory.setCell(addressed, transData); + if (isNewData) + memory.setCell(addressed, transData); }; }