Index: trunk/ppStack/src/ppStackArguments.c
===================================================================
--- trunk/ppStack/src/ppStackArguments.c	(revision 19283)
+++ trunk/ppStack/src/ppStackArguments.c	(revision 19399)
@@ -145,4 +145,13 @@
 
     pmConfigFileSetsMD(config->arguments, &argc, argv, "PPSTACK.SOURCES", "-sources", NULL);
+
+    if ((argNum = psArgumentGet(argc, argv, "-dumpconfig"))) {
+        psArgumentRemove(argNum, &argc, argv);
+        psMetadataAddStr(config->arguments, PS_LIST_TAIL, "DUMP_CONFIG", PS_META_REPLACE,
+                         "Filename for configuration dump", argv[argNum]);
+        psArgumentRemove(argNum, &argc, argv);
+    }
+
+
 
     psMetadata *arguments = config->arguments; // Command-line arguments
@@ -288,13 +297,12 @@
 
     // Dump configuration, now that's it's settled
-    {
+    bool status;
+    psString dump_file =  psMetadataLookupStr(&status, config->arguments, "DUMP_CONFIG");
+    if (dump_file) {
         pmConfigCamerasCull(config, NULL);
         pmConfigRecipesCull(config, "PPSTACK,PPSUB,PPSTATS,PSPHOT,MASKS");
 
-        const char *outroot = psMetadataLookupStr(NULL, arguments, "OUTPUT"); // Output root name
-        psAssert(outroot, "Should be there, we put it there!");
-
         pmFPAfile *input = psMetadataLookupPtr(NULL, config->files, "PPSTACK.INPUT"); // Input file
-        pmConfigDump(config, input->fpa, outroot);
+        pmConfigDump(config, input->fpa, dump_file);
     }
 
