diff --git a/src/main/java/de/neemann/digital/core/memory/RAMDualPortMasked.java b/src/main/java/de/neemann/digital/core/memory/RAMDualPortMasked.java
index 41317a2ff..17148154c 100644
--- a/src/main/java/de/neemann/digital/core/memory/RAMDualPortMasked.java
+++ b/src/main/java/de/neemann/digital/core/memory/RAMDualPortMasked.java
@@ -5,15 +5,13 @@
*/
package de.neemann.digital.core.memory;
-import de.neemann.digital.core.Node;
-import de.neemann.digital.core.NodeException;
-import de.neemann.digital.core.ObservableValue;
-import de.neemann.digital.core.ObservableValues;
+import de.neemann.digital.core.*;
import de.neemann.digital.core.element.Element;
import de.neemann.digital.core.element.ElementAttributes;
import de.neemann.digital.core.element.ElementTypeDescription;
import de.neemann.digital.core.element.Keys;
import de.neemann.digital.draw.elements.PinException;
+import de.neemann.digital.lang.Lang;
import static de.neemann.digital.core.element.PinInfo.input;
@@ -92,6 +90,12 @@ public class RAMDualPortMasked extends Node implements Element, RAMInterface {
clkIn = inputs.get(3).checkBits(1, this).addObserverToValue(this);
}
+ @Override
+ public void init(Model model) throws NodeException {
+ if (bits % 8 != 0)
+ throw new NodeException(Lang.get("err_bitsMustBeDividableBy8"), this, -1, null);
+ }
+
@Override
public void readInputs() throws NodeException {
boolean clk = clkIn.getBool();
diff --git a/src/main/resources/lang/lang_de.xml b/src/main/resources/lang/lang_de.xml
index 9ddf4c81c..605f32f66 100644
--- a/src/main/resources/lang/lang_de.xml
+++ b/src/main/resources/lang/lang_de.xml
@@ -989,6 +989,7 @@ Sind evtl. die Namen der Variablen nicht eindeutig?
Fehler beim Laden des Programmspeichers.
Fehler beim Laden der SVG-Datei.
Die SVG-Datei enthält Pins, die es in der Schaltung nicht gibt.
+ Die Anzahl der Datenbits muss ein Vielfaches von 8 sein.
Adress-Bits
Anzahl der Adress-Bits, die verwendet werden.
diff --git a/src/main/resources/lang/lang_en.xml b/src/main/resources/lang/lang_en.xml
index 58eb1c68f..d6567e89e 100644
--- a/src/main/resources/lang/lang_en.xml
+++ b/src/main/resources/lang/lang_en.xml
@@ -982,6 +982,7 @@
Error loading the program memory.
Error while reading the SVG file.
The SVG file contains pins that do not exist in the circuit.
+ The number of data bits must be a multiple of 8.
Address Bits
Number of address bits used.