Index: trunk/ppSub/src/ppSub.h
===================================================================
--- trunk/ppSub/src/ppSub.h	(revision 27370)
+++ trunk/ppSub/src/ppSub.h	(revision 27596)
@@ -45,4 +45,6 @@
     bool photometry;                    // Perform photometry?
     bool inverse;                       // Output inverse subtraction as well?
+    bool saveInConv;                    // Save convolved input?
+    bool saveRefConv;                   // Save convolved reference?
     psString stamps;                    // Stamps file
     pmPSF *psf;                         // Point Spread Function
Index: trunk/ppSub/src/ppSubArguments.c
===================================================================
--- trunk/ppSub/src/ppSubArguments.c	(revision 27370)
+++ trunk/ppSub/src/ppSubArguments.c	(revision 27596)
@@ -87,5 +87,7 @@
     psMetadataAddBool(arguments, PS_LIST_TAIL, "-photometry", 0, "Perform photometry?", NULL);
     psMetadataAddF32(arguments, PS_LIST_TAIL, "-zp", 0, "Zero point for photometry", NAN);
-    psMetadataAddBool(arguments, PS_LIST_TAIL, "-inverse", 0, "Generate inverse subtractions?", NULL);
+    psMetadataAddBool(arguments, PS_LIST_TAIL, "-inverse", 0, "Generate inverse subtractions?", false);
+    psMetadataAddBool(arguments, PS_LIST_TAIL, "-save-inconv", 0, "Save input convolved images?", false);
+    psMetadataAddBool(arguments, PS_LIST_TAIL, "-save-refconv", 0, "Save reference convolved images?", false);
     psMetadataAddBool(arguments, PS_LIST_TAIL, "-visual", 0, "Show diagnostic plots", NULL);
 
@@ -154,4 +156,7 @@
     }
 
+    data->saveInConv = psMetadataLookupBool(NULL, arguments, "-save-inconv");
+    data->saveRefConv = psMetadataLookupBool(NULL, arguments, "-save-refconv");
+
     if (psMetadataLookupBool(NULL, arguments, "-visual")) {
         pmVisualSetVisual(true);
Index: trunk/ppSub/src/ppSubCamera.c
===================================================================
--- trunk/ppSub/src/ppSubCamera.c	(revision 27370)
+++ trunk/ppSub/src/ppSubCamera.c	(revision 27596)
@@ -219,7 +219,4 @@
     data->photometry = psMetadataLookupBool(NULL, recipe, "PHOTOMETRY");
 
-    bool mdok;                          // Status of MD lookup
-    bool saveConv = psMetadataLookupBool(&mdok, recipe, "SAVE.CONVOLVED"); // Save convolved images?
-
     // Convolved input image
     pmFPAfile *inConvImage = defineOutputFile(config, input, true, "PPSUB.INPUT.CONV", PM_FPA_FILE_IMAGE);
@@ -230,8 +227,6 @@
         return false;
     }
-    if (saveConv) {
-        inConvImage->save = true;
-        inConvMask->save = true;
-    }
+    inConvImage->save = data->saveInConv;
+    inConvMask->save = data->saveInConv;
     if (inVar) {
         pmFPAfile *inConvVar = defineOutputFile(config, inConvImage, false, "PPSUB.INPUT.CONV.VARIANCE",
@@ -241,7 +236,5 @@
             return false;
         }
-        if (saveConv) {
-            inConvVar->save = true;
-        }
+        inConvVar->save = data->saveInConv;
     }
 
@@ -254,8 +247,6 @@
         return false;
     }
-    if (saveConv) {
-        refConvImage->save = true;
-        refConvMask->save = true;
-    }
+    refConvImage->save = data->saveRefConv;
+    refConvMask->save = data->saveRefConv;
     if (refVar) {
         pmFPAfile *refConvVar = defineOutputFile(config, refConvImage, false, "PPSUB.REF.CONV.VARIANCE",
@@ -265,7 +256,5 @@
             return false;
         }
-        if (saveConv) {
-            refConvVar->save = true;
-        }
+        refConvVar->save = data->saveRefConv;
     }
 
Index: trunk/ppSub/src/ppSubData.c
===================================================================
--- trunk/ppSub/src/ppSubData.c	(revision 27370)
+++ trunk/ppSub/src/ppSubData.c	(revision 27596)
@@ -33,4 +33,6 @@
     data->photometry = false;
     data->inverse = false;
+    data->saveInConv = false;
+    data->saveRefConv = false;
     data->stamps = NULL;
     data->psf = NULL;
