Index: trunk/Ohana/src/checkastro/src/ImageOps.c
===================================================================
--- trunk/Ohana/src/checkastro/src/ImageOps.c	(revision 37043)
+++ trunk/Ohana/src/checkastro/src/ImageOps.c	(revision 37807)
@@ -130,6 +130,4 @@
   }
 
-  BuildChipMatch (image, Nimage);
-
   char output[128];
   snprintf (output, 128, "checkastrom.%+3.0f.%+3.0f.%03.0f.%03.0f.dat", UserPatch.Rmin, UserPatch.Rmax, UserPatch.Dmin, UserPatch.Dmax);
@@ -148,14 +146,9 @@
     name = GetPhotcodeNamebyCode (image[i].photcode);
 
-    off_t myMosaic = FindMosaicForImage (image, Nimage, i);
-
     /* only check exposure center */
     double Rexp = NAN, Dexp = NAN, Rccd = NAN, Dccd = NAN;
 
-    if (myMosaic) {
-      myMosaic --;
-      XY_to_RD (&Rccd, &Dccd, 0.5*image[i].NX, 0.5*image[i].NY, &image[i].coords);
-      XY_to_RD (&Rexp, &Dexp, 0.0, 0.0, &image[myMosaic].coords);
-    }
+    XY_to_RD (&Rccd, &Dccd, 0.5*image[i].NX, 0.5*image[i].NY, &image[i].coords);
+    XY_to_RD (&Rexp, &Dexp, 0.0, 0.0, &image[i].parent->coords);
 
     char *date = ohana_sec_to_date(image[i].tzero);
Index: trunk/Ohana/src/checkastro/src/bcatalog.c
===================================================================
--- trunk/Ohana/src/checkastro/src/bcatalog.c	(revision 37043)
+++ trunk/Ohana/src/checkastro/src/bcatalog.c	(revision 37807)
@@ -191,13 +191,8 @@
   /* project coordinates to a plane centered on the object with units of arcsec */
   Coords coords;
+  InitCoords (&coords, "DEC--SIN");
   coords.crval1 = Rc;
   coords.crval2 = Dc;
-  coords.crpix1 = 0;
-  coords.crpix2 = 0;
   coords.cdelt1 = coords.cdelt2 = 1.0 / 3600.0;
-  coords.pc1_1  = coords.pc2_2 = 1.0;
-  coords.pc1_2  = coords.pc2_1 = 0.0;
-  coords.Npolyterms = 1;
-  strcpy (coords.ctype, "DEC--SIN");
 
   // convert all average R,D values to X,Y:
Index: trunk/Ohana/src/checkastro/src/load_images.c
===================================================================
--- trunk/Ohana/src/checkastro/src/load_images.c	(revision 37043)
+++ trunk/Ohana/src/checkastro/src/load_images.c	(revision 37807)
@@ -17,4 +17,6 @@
   MARKTIME("  convert image table: %f sec\n", dtime);
 
+  BuildChipMatch (image, Nimage);
+
   // select the images which overlap the selected sky regions
   subset = select_images (skylist, image, Nimage, &LineNumber, &Nsubset);
Index: trunk/Ohana/src/checkastro/src/select_images.c
===================================================================
--- trunk/Ohana/src/checkastro/src/select_images.c	(revision 37043)
+++ trunk/Ohana/src/checkastro/src/select_images.c	(revision 37807)
@@ -43,6 +43,4 @@
 
   if (VERBOSE) fprintf (stderr, "finding images\n");
-  BuildChipMatch (timage, Ntimage);
-  MARKTIME("build chip match: %f sec\n", dtime);
 
   nimage = 0;
@@ -83,17 +81,9 @@
     }
     
-    // this adds 1.3 sec for 3M images
-    off_t myMosaic = FindMosaicForImage (timage, Ntimage, i);
-    if (!myMosaic) {
-      fprintf (stderr, "cannot find mosaic for "OFF_T_FMT"\n", i);
-      continue;
-    }
-    myMosaic --;
-
     /* only check exposure center */
     if (!strcmp(&timage[i].coords.ctype[4], "-DIS")) {
       XY_to_RD (&Rexp, &Dexp, 0.0, 0.0, &timage[i].coords);
     } else {
-      XY_to_RD (&Rexp, &Dexp, 0.0, 0.0, &timage[myMosaic].coords);
+      XY_to_RD (&Rexp, &Dexp, 0.0, 0.0, &timage[i].parent->coords);
     }
     Rexp = ohana_normalize_angle_to_midpoint (Rexp, RmidSkyRegion);
