Index: branches/eam_branches/ohana.20170822/src/relastro/src/UpdateMeasures.c
===================================================================
--- branches/eam_branches/ohana.20170822/src/relastro/src/UpdateMeasures.c	(revision 40219)
+++ branches/eam_branches/ohana.20170822/src/relastro/src/UpdateMeasures.c	(revision 40220)
@@ -114,4 +114,16 @@
       }
 
+      // XXX this stuff is rather hackish, added to do GSC/HSC/Megacam astrometry
+
+      // only modify the chip coordinates
+      if (UPDATE_ALL_MEASURE) {
+	measureT->R = R;
+	measureT->D = D;
+	if (measureB) {
+	  measureB->R = R;
+	  measureB->D = D;
+	}
+	goto set_measure_done;
+      }
       // only modify the chip coordinates
       if (UPDATE_PS1_STACK_MEASURE && isGPC1stack (measureT->photcode)) {
@@ -122,4 +134,5 @@
 	  measureB->D = D;
 	}
+	goto set_measure_done;
       }
       // only modify the chip coordinates
@@ -131,23 +144,27 @@
 	  measureB->D = D;
 	}
-      }
-      // only modify the chip coordinates
-      if (UPDATE_HSC_MEASURE && isGPC1chip (measureT->photcode)) {
-	measureT->R = R;
-	measureT->D = D;
-	if (measureB) {
-	  measureB->R = R;
-	  measureB->D = D;
-	}
-      }
-      // only modify the chip coordinates
-      if (UPDATE_CFH_MEASURE && isGPC1chip (measureT->photcode)) {
-	measureT->R = R;
-	measureT->D = D;
-	if (measureB) {
-	  measureB->R = R;
-	  measureB->D = D;
-	}
-      }
+	goto set_measure_done;
+      }
+      // only modify the chip coordinates
+      if (UPDATE_HSC_MEASURE && isHSCchip (measureT->photcode)) {
+	measureT->R = R;
+	measureT->D = D;
+	if (measureB) {
+	  measureB->R = R;
+	  measureB->D = D;
+	}
+	goto set_measure_done;
+      }
+      // only modify the chip coordinates
+      if (UPDATE_CFH_MEASURE && isCFHchip (measureT->photcode)) {
+	measureT->R = R;
+	measureT->D = D;
+	if (measureB) {
+	  measureB->R = R;
+	  measureB->D = D;
+	}
+	goto set_measure_done;
+      }
+    set_measure_done:
     }
     if (VERBOSE) fprintf (stderr, "%s : Noff ori RA %d ( %d %d %d ), Noff ori DEC %d ( %d %d %d )\n", catalog[i].filename, NoffRAori, NoffRAchip, NoffRAstack, NoffRAwarp, NoffDECori, NoffDECchip, NoffDECstack, NoffDECwarp);
Index: branches/eam_branches/ohana.20170822/src/relastro/src/args.c
===================================================================
--- branches/eam_branches/ohana.20170822/src/relastro/src/args.c	(revision 40219)
+++ branches/eam_branches/ohana.20170822/src/relastro/src/args.c	(revision 40220)
@@ -158,4 +158,9 @@
   }
 
+  UPDATE_ALL_MEASURE = FALSE;
+  if ((N = get_argument (argc, argv, "-update-all-cameras"))) {
+    remove_argument (N, &argc, argv);
+    UPDATE_ALL_MEASURE = TRUE;
+  }
   UPDATE_PS1_STACK_MEASURE = FALSE;
   if ((N = get_argument (argc, argv, "-update-ps1-stack"))) {
@@ -179,6 +184,6 @@
   }
   if (RELASTRO_OP == OP_UPDATE_OFFSETS) {
-    if (!UPDATE_PS1_STACK_MEASURE && !UPDATE_PS1_CHIP_MEASURE && !UPDATE_HSC_MEASURE && !UPDATE_CFH_MEASURE) {
-      fprintf (stderr, "for -update-offsets, need to select at least one of -update-ps1-stack, -update-ps1-chip, -update-hsc, -update-cfh\n");
+    if (!UPDATE_ALL_MEASURE && !UPDATE_PS1_STACK_MEASURE && !UPDATE_PS1_CHIP_MEASURE && !UPDATE_HSC_MEASURE && !UPDATE_CFH_MEASURE) {
+      fprintf (stderr, "for -update-offsets, need to select at least one of -update-all-cameras, -update-ps1-stack, -update-ps1-chip, -update-hsc, -update-cfh\n");
       exit (2);
     }
