diff --git a/fossils.py b/fossils.py
index 2dd7cbed6c74fcbcf650d7df11b053d286306b33..fbefa62c3f74009037eac93675df02f522272429 100644
--- a/fossils.py
+++ b/fossils.py
@@ -33,30 +33,63 @@ class Window(QWidget, Ui_Form):
         # read Qt settings for the application
         settings = QSettings()
         # self.restoreGeometry(settings.value("Geometry", self.saveGeometry()))
-        self.inpFileLineEdit.setText(settings.value("inpFile", ""))
-        self.wrkspLineEdit.setText(settings.value("workspace", ""))
+        self.inpFileLineEdit.setText(settings.value("inpFile", self.default_inputfile()))
+        self.wrkspLineEdit.setText(settings.value("workspace", self.default_wrksp()))
 
         self.action = 'cancelled'
 
         #iconfile = os.path.join('fossils.png')
         self.setWindowIcon(QIcon(":/fossils.png"))
 
+
+    def default_inputfile(self):
+        testnames = [ 
+            os.path.join(os.path.dirname(__file__),'models','others','dolicorhynchops_10k.py'),
+            os.path.join(os.path.dirname(__file__),'models','dolicorhynchops','dolicorhynchops_10k.py'),
+        ]
+        for name in testnames:
+            if os.path.isfile(name):
+                return name
+        return ""
+
+
+    def default_wrksp(self):
+        for key in ['USERPROFILE', 'HOME' ]:
+            try:
+                folder = os.environ[key]
+                if os.path.isdir(folder):
+                    return os.path.join(folder, 'workspace')
+            except:
+                pass
+        return ""
+
+
     def on_runPushButton_pressed(self):
-        # print("runPushButton...")
         if not os.path.isfile(self.inpFileLineEdit.text()):
             QMessageBox.critical(self, "Error", "Input file does not exist!")
             return
+
         if not os.path.isdir(self.wrkspLineEdit.text()):
-            QMessageBox.critical(self, "Error", "Workspace does not exist!")
-            return
+            reply = QMessageBox.question(self, 'Message',
+                                        "Workspace does not exist - do you want to continue?", 
+                                        QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
+            if reply == QMessageBox.No:
+                return
+        # wdir = build_workspace_name(self.wrkspLineEdit.text(), self.inpFileLineEdit.text())
+        # TODO: check whether files are already present - ask and delete them if necessary
         self.action = 'run'
         self.close()
 
+
     def on_viewPushButton_pressed(self):
-        # print("viewPushButton...")
+        wdir = build_workspace_name(self.wrkspLineEdit.text(), self.inpFileLineEdit.text())
+        if not os.path.isdir(wdir):
+            QMessageBox.critical(self, "Error", f"No results in {wdir}!")
+            return
         self.action = 'post'
         self.close()
 
+
     def on_inpFilePushButton_pressed(self):
         # try to set a relevant starting folder
         default = os.path.join(os.path.dirname(__file__), 'models')
@@ -86,22 +119,26 @@ class Window(QWidget, Ui_Form):
                 subprocess.Popen([ editor, self.inpFileLineEdit.text() ])
                 break
 
+
     def on_inpFileResetPushButton_pressed(self):
-        self.inpFileLineEdit.setText("")
+        self.inpFileLineEdit.setText(self.default_inputfile())
+
 
     def on_wrkspExplorePushButton_pressed(self):
         """Browse workspace folder with system explorer
         """
         os.startfile(self.wrkspLineEdit.text())
 
+
     def on_wrkspPushButton_pressed(self):
         dir = QFileDialog.getExistingDirectory(
             self, "Select output folder", self.wrkspLineEdit.text())
         if dir:
             self.wrkspLineEdit.setText(QDir.toNativeSeparators(dir))  
 
+
     def on_wrkspResetPushButton_pressed(self):
-        self.wrkspLineEdit.setText("")
+        self.wrkspLineEdit.setText(self.default_wrksp())
 
 
     def closeEvent(self, event):
@@ -183,6 +220,7 @@ def add_folder2path(folder):
         print(f'{folder} added to PATH')
         # print(f"os.environ['PATH']={os.environ['PATH']}")
 
+
 def setup_pythonpath():
     """setup PYTHONPATH
     """
@@ -209,7 +247,7 @@ def setup_pythonpath():
     # print(f'sys.path={sys.path}')
 
 
-def create_workspace(workspace, testname):
+def build_workspace_name(workspace, testname):
     """create workspace folder and chdir into it
     """
     if workspace:
@@ -230,11 +268,9 @@ def create_workspace(workspace, testname):
         resdir = testname[len(common)+1:].replace(os.sep, "_")
         resdir, ext = os.path.splitext(resdir)
         wdir = os.path.abspath(os.path.join('workspace', resdir))
-    print('workspace =', wdir)
-    # sys.exit()
-    if not os.path.isdir(wdir):
-        os.makedirs(wdir)
-    os.chdir(wdir)    
+    return wdir
+
+    
 
 if __name__ == "__main__":
 
@@ -289,7 +325,12 @@ if __name__ == "__main__":
         testname = os.path.normcase(testname)  # F:/ => f:/ on Windows
         print(f'testname = {testname}')
         
-        create_workspace(workspace, testname)
+        wdir = build_workspace_name(workspace, testname)
+        print('workspace =', wdir)
+        # sys.exit()
+        if not os.path.isdir(wdir):
+            os.makedirs(wdir)
+        os.chdir(wdir)
 
         try:
             if action == 'run':