Index: /branches/eam_branches/ipp-20121219/Ohana/src/addstar/src/mkcmf.c
===================================================================
--- /branches/eam_branches/ipp-20121219/Ohana/src/addstar/src/mkcmf.c	(revision 35004)
+++ /branches/eam_branches/ipp-20121219/Ohana/src/addstar/src/mkcmf.c	(revision 35005)
@@ -40,4 +40,10 @@
   Coords coords;
 
+  int APPEND = FALSE;
+  if ((N = get_argument (argc, argv, "-append"))) {
+    remove_argument (N, &argc, argv);
+    APPEND = TRUE;
+  }
+
   static char *photcode = "SIMTEST.r.Chip";
   if ((N = get_argument (argc, argv, "-photcode"))) {
@@ -66,4 +72,14 @@
     remove_argument (N, &argc, argv);
     time = strcreate (argv[N]);
+    remove_argument (N, &argc, argv);
+  }
+
+  char extname[80], exthead[80];
+  strcpy (extname, "Chip.psf");
+  strcpy (exthead, "Chip.hdr");
+  if ((N = get_argument (argc, argv, "-extname"))) {
+    remove_argument (N, &argc, argv);
+    snprintf (extname, 80, "%s.psf", argv[N]);
+    snprintf (exthead, 80, "%s.hdr", argv[N]);
     remove_argument (N, &argc, argv);
   }
@@ -275,5 +291,5 @@
 
   PutCoords (&coords, &header);
-  gfits_modify (&header, "EXTNAME",   "%s", 1, "Chip.hdr");
+  gfits_modify (&header, "EXTNAME",   "%s", 1, exthead);
 
   ftable.header = &theader;
@@ -310,9 +326,13 @@
   }
 
-  gfits_modify (ftable.header, "EXTHEAD",   "%s", 1, "Chip.hdr");
-  gfits_modify (ftable.header, "EXTNAME",   "%s", 1, "Chip.psf");
+  gfits_modify (ftable.header, "EXTHEAD",   "%s", 1, exthead);
+  gfits_modify (ftable.header, "EXTNAME",   "%s", 1, extname);
 
   // open for append (if you want a new file, need to blow the old object)
-  fits = fopen (argv[2], "a+");
+  if (APPEND) {
+    fits = fopen (argv[2], "a+");
+  } else {
+    fits = fopen (argv[2], "w");
+  }
   if (fits == NULL) {
     fprintf (stderr, "ERROR: can't open output file %s\n", argv[2]);
@@ -320,9 +340,6 @@
   }
 
-  /* position to begining of file to write header */
-  off_t Nend = ftello (f);
-
   /* if we are appending, fix up header */
-  if (Nend > 0) {
+  if (APPEND) {
     static char simple[] = "XTENSION= 'IMAGE  '            / Image extension";
     int Ns, No;
@@ -542,4 +559,6 @@
     stars[i].dSky      = DSKY;
     stars[i].psfChisq  = PSFCHI;
+    stars[i].psfNdof   = 1;
+    stars[i].psfNpix   = 2;
     stars[i].crNsigma  = CRN;
     stars[i].extNsigma = EXTN;
@@ -596,4 +615,6 @@
     stars[i].dSky      = DSKY;
     stars[i].psfChisq  = PSFCHI;
+    stars[i].psfNdof   = 1;
+    stars[i].psfNpix   = 2;
     stars[i].crNsigma  = CRN;
     stars[i].extNsigma = EXTN;
@@ -650,4 +671,6 @@
     stars[i].dSky      = DSKY;
     stars[i].psfChisq  = PSFCHI;
+    stars[i].psfNdof   = 1;
+    stars[i].psfNpix   = 2;
     stars[i].crNsigma  = CRN;
     stars[i].extNsigma = EXTN;
@@ -716,4 +739,6 @@
     stars[i].dSky      = DSKY;
     stars[i].psfChisq  = PSFCHI;
+    stars[i].psfNdof   = 1;
+    stars[i].psfNpix   = 2;
     stars[i].crNsigma  = CRN;
     stars[i].extNsigma = EXTN;
