diff --git a/lib/+artoa/+controller/+file/loadInterim.m b/lib/+artoa/+controller/+file/loadInterim.m
index 47590055b4ef64be0a3d3db0776feccb68429e96..8b7a2a330d66fc8d826ba262457fcf53a4c35855 100644
--- a/lib/+artoa/+controller/+file/loadInterim.m
+++ b/lib/+artoa/+controller/+file/loadInterim.m
@@ -2,11 +2,18 @@ function [] = loadInterim()
 %LOADINTERIM Loads the current state of ARTOA4 from the file specified by dialog.
 %   
 
+global artoaDataInput;
+
+%% Get required variables
+folder = artoa.data.getMember(artoaDataInput, {'ini', 'directory', 'interim'}, pwd());
+filter = artoa.data.getMember(artoaDataInput, {'ini', 'filemask', 'interim'}, '*.itm');
+
+
 %% Ask for filename
-filename = uigetfile('*.itm');
+filename = uigetfile(fullfile(folder, filter));
 
 if (filename == 0)
-    return
+    return;
 end
 
 %% Load mat file
diff --git a/lib/+artoa/+controller/+file/saveInterim.m b/lib/+artoa/+controller/+file/saveInterim.m
index 361dcfb0db8f2834d81447290e6d6e73db6f623e..b9dc7d593462f44153bd746e6ef0f47d0034f162 100644
--- a/lib/+artoa/+controller/+file/saveInterim.m
+++ b/lib/+artoa/+controller/+file/saveInterim.m
@@ -4,8 +4,12 @@ function [] = saveInterim()
 
 global artoaWorkspace artoaDataInput artoaDataOutput;
 
+%% Get required variables
+folder = artoa.data.getMember(artoaDataInput, {'ini', 'directory', 'interim'}, pwd());
+filter = artoa.data.getMember(artoaDataInput, {'ini', 'filemask', 'interim'}, '*.itm');
+
 %% Ask for filename
-filename = uiputfile('*.itm');
+filename = uiputfile(fullfile(folder, filter));
 
 if (filename ~= 0)
     save(filename, 'artoaWorkspace', 'artoaDataInput', 'artoaDataOutput');