diff --git a/src/tec/letsgoing/ardublock/simulator/Simulator.java b/src/tec/letsgoing/ardublock/simulator/Simulator.java
index 5e57004c10177d75f7e5c387bf53538b9b512d11..be7715be9062948b183c18d0de98baab85075a7f 100644
--- a/src/tec/letsgoing/ardublock/simulator/Simulator.java
+++ b/src/tec/letsgoing/ardublock/simulator/Simulator.java
@@ -6,6 +6,8 @@ package tec.letsgoing.ardublock.simulator;
 import java.awt.Point;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
 import java.util.Vector;
 
 import javax.swing.UIManager;
@@ -103,6 +105,15 @@ public class Simulator implements Runnable, ActionListener{
 
 		guiThread = new Thread(gui);
 		guiThread.start();
+		
+		//override close operation
+		//TODO: TEST
+		gui.addWindowListener(new WindowAdapter() {
+			public void windowClosing(WindowEvent we) {
+				instance.stopSimu();
+				gui.stopThread();
+			}			  
+		});
 
 		return true;
 	}
@@ -151,7 +162,7 @@ public class Simulator implements Runnable, ActionListener{
 		arduino.setStop(true);
 		if (simuThread instanceof Thread) {
 			simuThread.interrupt();
-
+			
 		}
 		arduino.getPin(20).setValue(0);
 
diff --git a/src/tec/letsgoing/ardublock/simulator/view/GUI.java b/src/tec/letsgoing/ardublock/simulator/view/GUI.java
index 8d795b0f7273e6a83de3dea586167ec05b39a005..292ad35da4b94ccdd867857a543024fcaf134398 100644
--- a/src/tec/letsgoing/ardublock/simulator/view/GUI.java
+++ b/src/tec/letsgoing/ardublock/simulator/view/GUI.java
@@ -433,11 +433,7 @@ public class GUI extends JFrame implements Runnable, ActionListener {
 
 				// e.printStackTrace();
 			}
-			
-			
-				super.repaint();
-			
-				
+			super.repaint();
 		}
 	}