From 3c3b223ffd0d54242a8cda1920a562ab01efba60 Mon Sep 17 00:00:00 2001 From: Daniel Kirschten Date: Mon, 2 Sep 2019 12:20:08 +0200 Subject: [PATCH] Made GUIMerger/GUISplitter bit order more intuitive (MSB on top) --- .../logic/model/model/components/atomic/GUIMerger.java | 6 +++--- .../logic/model/model/components/atomic/GUISplitter.java | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java index 656c91f2..85cafecd 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java @@ -41,9 +41,9 @@ public class GUIMerger extends GUIComponent { super(model, name); this.logicWidth = logicWidth; - setSize(width, logicWidth * heightPerPin); - double inputHeight = 0; - for (int i = 0; i < logicWidth; i++, inputHeight += 10) + setSize(width, (logicWidth - 1) * heightPerPin); + double inputHeight = (logicWidth - 1) * heightPerPin; + for (int i = 0; i < logicWidth; i++, inputHeight -= 10) addPin(new Pin(this, "I" + i, 1, PinUsage.TRISTATE, 0, inputHeight)); addPin(this.outputPin = new Pin(this, "O", logicWidth, PinUsage.TRISTATE, width, (logicWidth - 1) * heightPerPin / 2)); inputEnds = new ReadEnd[logicWidth]; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java index 63650a64..8fc46790 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java @@ -41,10 +41,10 @@ public class GUISplitter extends GUIComponent { super(model, name); this.logicWidth = logicWidth; - setSize(width, logicWidth * heightPerPin); + setSize(width, (logicWidth - 1) * heightPerPin); addPin(this.inputPin = new Pin(this, "I", logicWidth, PinUsage.TRISTATE, 0, (logicWidth - 1) * heightPerPin / 2)); - double outputHeight = 0; - for (int i = 0; i < logicWidth; i++, outputHeight += 10) + double outputHeight = (logicWidth - 1) * heightPerPin; + for (int i = 0; i < logicWidth; i++, outputHeight -= 10) addPin(new Pin(this, "O" + i, 1, PinUsage.TRISTATE, width, outputHeight)); outputEnds = new ReadEnd[logicWidth]; } -- 2.17.1