diff --git a/src/main/java/ui/MainGUI.java b/src/main/java/ui/MainGUI.java
index d50c0fb42f40978d9ed2d5ecb792db22a95380ed..2224574834ddea0dcd0eb411b5a8bea13de91414 100644
--- a/src/main/java/ui/MainGUI.java
+++ b/src/main/java/ui/MainGUI.java
@@ -138,6 +138,7 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
     public static boolean experimentalOn;
     public static boolean avatarOnly;
     public static boolean turtleOn;
+    public static boolean openLast;
 
     public boolean isxml = false;
 
@@ -339,8 +340,11 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
     //public static PluginManager pluginManager;
 
 
-    public MainGUI(boolean _turtleOn, boolean _systemcOn, boolean _lotosOn, boolean _proactiveOn, boolean _tpnOn, boolean _osOn, boolean _uppaalOn, boolean _ncOn, boolean _avatarOn, boolean _proverifOn, boolean
+    public MainGUI(boolean _openLast, boolean _turtleOn, boolean _systemcOn, boolean _lotosOn, boolean _proactiveOn, boolean _tpnOn, boolean _osOn,
+                   boolean
+            _uppaalOn, boolean _ncOn, boolean _avatarOn, boolean _proverifOn, boolean
             _avatarOnly, boolean _experimental) {
+        openLast = _openLast;
         turtleOn = _turtleOn;
         systemcOn = _systemcOn;
         lotosOn = _lotosOn;
@@ -529,6 +533,11 @@ public class MainGUI implements ActionListener, WindowListener, KeyListener, Per
         jmenubarturtle = new JMenuBarTurtle(this);
         frame.setJMenuBar(jmenubarturtle);
 
+        // if openLast, must open the latest specification (if it exists)
+        if (ConfigurationTTool.LastOpenFileDefined) {
+            openLastProject();
+        }
+
         //split1.setLastDividerLocation(split1.getHeight() * 4 / 5);
         //split1.setLastDividerLocation(900);
 
diff --git a/ttool/src/main/java/Main.java b/ttool/src/main/java/Main.java
index 85a5336c76661c8933136a909e93ac7aac6bb199..2305375662df490fccf3a7613f8b11d98a7c0a67 100755
--- a/ttool/src/main/java/Main.java
+++ b/ttool/src/main/java/Main.java
@@ -81,6 +81,7 @@ public class Main implements ActionListener {
     public static boolean experimental = false;
     public static boolean avataronly = false;
     public static boolean turtle = false;
+    public static boolean openLast = false;
 
     public static void main(String[] args) {
 
@@ -102,7 +103,7 @@ public class Main implements ActionListener {
         Image img;
         //System.out.println("helli");
         if (imageURL != null) {
-            //System.out.println("hellu");
+
             img = (new ImageIcon(imageURL)).getImage();
             splashFrame = JStartingWindow.splash(img, "Loading TTool's elements");
             //splashFrame.setLicenceMessage("An open-source toolkit from:");
@@ -238,6 +239,10 @@ public class Main implements ActionListener {
                 turtle = true;
             }
 
+            if (args[i].compareTo("-openlast") == 0) {
+                openLast = true;
+            }
+
         }
 
         // Icons
@@ -290,7 +295,7 @@ public class Main implements ActionListener {
         if (splashFrame != null) {
             splashFrame.setMessage("Creating main window");
         }
-        MainGUI mainGUI = new MainGUI(turtle, systemc, lotos, proactive, tpn, os, uppaal, nc, avatar, proverif, avataronly, experimental);
+        MainGUI mainGUI = new MainGUI(openLast, turtle, systemc, lotos, proactive, tpn, os, uppaal, nc, avatar, proverif, avataronly, experimental);
         if (splashFrame != null) {
             splashFrame.setMessage("Building graphical components");
         }