Index: trunk/archive/scripts/src/test_pmFPARead.c
===================================================================
--- trunk/archive/scripts/src/test_pmFPARead.c	(revision 4386)
+++ trunk/archive/scripts/src/test_pmFPARead.c	(revision 4395)
@@ -25,25 +25,32 @@
 #endif
 
-    (void)psTraceSetLevel(".", 10);
+    (void)psTraceSetLevel(".", 0);
     (void)psTraceSetLevel("readMultipleRegions", 0);
     (void)psTraceSetLevel("portions", 0);
     (void)psTraceSetLevel("pmFPARead", 10);
     (void)psTraceSetLevel("pmFPAfromHeader", 10);
+    (void)psTraceSetLevel("pmCameraFromHeader", 10);
+
+
 
     if (argc != 3) {
-	printf("Usage: %s CONFIG IMAGE\n", argv[0]);
+	printf("Usage: %s IPP_CONFIG IMAGE\n", argv[0]);
 	exit(EXIT_FAILURE);
     }
-    const char *cameraName = argv[1];
+    const char *ipprcName = argv[1];
     const char *imageName = argv[2];
 
     int badLines = 0;			// Number of bad lines in camera configuration
-    psMetadata *camera = psMetadataConfigParse(NULL, &badLines, cameraName, true); // Read camera config file
+    psMetadata *ipprc = psMetadataConfigParse(NULL, &badLines, ipprcName, true); // Read IPP config file
     if (badLines > 0) {
-	psLogMsg(__func__, PS_LOG_WARN, "%d bad lines encountered while reading camera configuration %s\n",
-		 badLines, cameraName);
+	psLogMsg(__func__, PS_LOG_WARN, "%d bad lines encountered while reading IPP configuration %s\n",
+		 badLines, ipprcName);
     }
 
     psFits *fits = psFitsAlloc(imageName);
+    psMetadata *header = psFitsReadHeader(NULL, fits);
+
+    psMetadata *camera = pmCameraFromHeader(header, ipprc);
+
     papFPA *fpa = pmFPARead(fits, camera, NULL);
     (void)pmFPAPrint(fpa);
@@ -55,6 +62,4 @@
     printf("Test: %d %d\n", psCellGetValueS32(fpa, "ccd15", "left", "CELL.YPARITY"),
 	   psCellGetValueS32(fpa, "ccd15", "right", "CELL.YPARITY"));
-
-//    (void)pmFPAPrint(fpa);
 
     // Tidy up
