Index: /trunk/psphot/src/psphotArguments.c
===================================================================
--- /trunk/psphot/src/psphotArguments.c	(revision 11189)
+++ /trunk/psphot/src/psphotArguments.c	(revision 11190)
@@ -98,4 +98,10 @@
     psFree (options);
 
+    // if these command-line options are supplied, load the file name lists into config->arguments
+    // override any configuration-specified source for these files
+    pmConfigFileSetsMD (config->arguments, config, "MASK",   "-mask", "-masklist");
+    pmConfigFileSetsMD (config->arguments, config, "WEIGHT", "-weight", "-weightlist");
+    pmConfigFileSetsMD (config->arguments, config, "PSF",    "-psf", "-psflist");
+
     // the input file is a required argument; if not found, we will exit
     status = pmConfigFileSetsMD (config->arguments, config, "INPUT", "-file", "-list");
Index: /trunk/psphot/src/psphotParseCamera.c
===================================================================
--- /trunk/psphot/src/psphotParseCamera.c	(revision 11189)
+++ /trunk/psphot/src/psphotParseCamera.c	(revision 11190)
@@ -15,4 +15,15 @@
     // select recipe options supplied on command line
     psMetadata *recipe  = psMetadataLookupPtr (&status, config->recipes, PSPHOT_RECIPE);
+
+    // if MASK or WEIGHT was supplied on command line, bind files to input fpa
+    // XXX these do not quite yet work: pmFPAAddSourceFromHeader is not appropriate
+    pmFPAfileBindFromArgs (NULL, input, config, "INPUT.MASK", "MASK");
+    pmFPAfileBindFromArgs (NULL, input, config, "INPUT.WEIGHT", "WEIGHT");
+    
+    // optionally load the PSF Model
+    pmFPAfile *psfInput = pmFPAfileBindFromArgs (NULL, input, config, "INPUT.PSF", "PSF");
+    if (psfInput == NULL) {
+	fprintf (stderr, "!");
+    }
 
     // set default recipe values here
@@ -81,13 +92,6 @@
 	}
     }
-    // optionally load the PSF Model
-    if (psMetadataLookupBool(NULL, recipe, "LOAD.PSF")) {
-	if (!pmFPAfileDefineInput (config, input->fpa, "PSPHOT.PSF.LOAD")) {
-	    psError(PS_ERR_IO, false, "Cannot find a rule for PSPHOT.PSF.LOAD");
-	    return false;
-	}
-    }
 
-    // optionally save the PSF Model
+    // optionally save output plots
     if (psMetadataLookupBool(NULL, recipe, "SAVE.PLOTS")) {
 	if (!pmFPAfileDefineOutput (config, input->fpa, "SOURCE.PLOT.MOMENTS")) {
