diff --git a/src/main/java/de/neemann/digital/gui/components/table/TableDialog.java b/src/main/java/de/neemann/digital/gui/components/table/TableDialog.java
index 5c14e7937..d6f8c5b36 100644
--- a/src/main/java/de/neemann/digital/gui/components/table/TableDialog.java
+++ b/src/main/java/de/neemann/digital/gui/components/table/TableDialog.java
@@ -595,13 +595,21 @@ public class TableDialog extends JDialog {
expressionListener = new ExpressionListenerJK(expressionListener);
lastGeneratedExpressions = new ExpressionListenerStore(expressionListener);
- new ExpressionCreator(model.getTable(), minimizer).create(lastGeneratedExpressions);
+ final int numVars = model.getTable().getVars().size();
+ new ExpressionCreator(model.getTable(), getMinimizer(numVars)).create(lastGeneratedExpressions);
} catch (ExpressionException | FormatterException | AnalyseException e1) {
+ lastGeneratedExpressions = null;
new ErrorMessage(Lang.get("msg_errorDuringCalculation")).addCause(e1).show();
}
}
+ private MinimizerInterface getMinimizer(int size) {
+ if (size<=4)
+ return new MinimizerQuineMcCluskeyExam();
+ else
+ return minimizer;
+ }
private final class SizeAction extends AbstractAction {
private int n;
@@ -680,6 +688,9 @@ public class TableDialog extends JDialog {
}
public void create(ExpressionListenerStore expressions) throws ExpressionException, FormatterException {
+ if (expressions==null)
+ throw new ExpressionException(Lang.get("err_noExpressionsAvailable"));
+
ExpressionListener el = new ExpressionListener() {
@Override
public void resultFound(String name, Expression expression) throws FormatterException, ExpressionException {
diff --git a/src/main/resources/lang/lang_de.xml b/src/main/resources/lang/lang_de.xml
index d7075a900..5b6aba2f2 100644
--- a/src/main/resources/lang/lang_de.xml
+++ b/src/main/resources/lang/lang_de.xml
@@ -449,6 +449,7 @@ Es sind nur {1} Variablen erlaubt, es wurden jedoch {2} gefunden.
Der Prozess "{0}" wird nicht beendet!
Der Prozess meldet den Rückgabewert {0}: {1}
Fehler beim Starten des externen Fitters!
+ Es liegen keine minimierten Gleichungen vor!
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 4f6a96c29..f5c8da282 100644
--- a/src/main/resources/lang/lang_en.xml
+++ b/src/main/resources/lang/lang_en.xml
@@ -436,6 +436,7 @@ allowed are {1} variables but {2} are found.
The process "{0}" does not return!
The process returns the non zero value {0}: {1}
Error starting the external fitter!
+ There are no minimized equations!
Address Bits
Number of address bits used.