Index: trunk/psModules/src/pmSubtractBias.c
===================================================================
--- trunk/psModules/src/pmSubtractBias.c	(revision 5067)
+++ trunk/psModules/src/pmSubtractBias.c	(revision 5102)
@@ -6,6 +6,6 @@
  *  @author GLG, MHPCC
  *
- *  @version $Revision: 1.37 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-09-12 20:38:25 $
+ *  @version $Revision: 1.38 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-09-23 01:55:30 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -22,9 +22,38 @@
 #define PM_SUBTRACT_BIAS_SPLINE_ORDER 3
 
+// XXX: put these in psConstants.h
+void PS_POLY1D_PRINT(psPolynomial1D *poly)
+{
+    printf("-------------- PS_POLY1D_PRINT() --------------\n");
+    printf("poly->COOL_1D_n is %d\n", poly->COOL_1D_n);
+    for (psS32 i = 0 ; i < (1 + poly->COOL_1D_n) ; i++) {
+        printf("poly->coeff[%d] is %f\n", i, poly->coeff[i]);
+    }
+}
+
+void PS_PRINT_SPLINE(psSpline1D *mySpline)
+{
+    printf("-------------- PS_PRINT_SPLINE() --------------\n");
+    printf("mySpline->n is %d\n", mySpline->n);
+    for (psS32 i = 0 ; i < mySpline->n ; i++) {
+        PS_POLY1D_PRINT(mySpline->spline[i]);
+    }
+    PS_VECTOR_PRINT_F32(mySpline->knots);
+}
+
+#define PS_IMAGE_PRINT_F32_HIDEF(NAME) \
+printf("======== printing %s ========\n", #NAME); \
+for (int i = 0 ; i < (NAME)->numRows ; i++) { \
+    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
+        printf("%.5f ", (NAME)->data.F32[i][j]); \
+    } \
+    printf("\n"); \
+}\
+
 /******************************************************************************
 psSubtractFrame(): this routine will take as input a readout for the input
 image and a readout for the bias image.  The bias image is subtracted in
 place from the input image.
- *****************************************************************************/
+*****************************************************************************/
 static pmReadout *SubtractFrame(pmReadout *in,
                                 const pmReadout *bias)
@@ -143,4 +172,6 @@
     return(opt);
 }
+
+
 
 /******************************************************************************
@@ -161,4 +192,5 @@
     psTrace(".psModule.pmSubtracBias.ScaleOverscanVector", 4,
             "---- ScaleOverscanVector() begin (%d -> %d) ----\n", overscanVector->n, n);
+    //    PS_VECTOR_PRINT_F32(overscanVector);
 
     if (NULL == overscanVector) {
@@ -218,4 +250,5 @@
             return(NULL);
         }
+        //        PS_PRINT_SPLINE(mySpline);
 
         // For each element of the new vector, convert the x-ordinate to that
@@ -230,4 +263,6 @@
             psFree(mySpline);
         }
+        //        PS_VECTOR_PRINT_F32(newVec);
+
 
     } else {
@@ -376,4 +411,5 @@
     tmpOverscan = (psListElem *) overscans->head;
     while (NULL != tmpOverscan) {
+        //        PS_IMAGE_PRINT_F32_HIDEF(in->image);
         myOverscanImage = (psImage *) tmpOverscan->data;
 
Index: trunk/psModules/src/pmSubtractSky.c
===================================================================
--- trunk/psModules/src/pmSubtractSky.c	(revision 5067)
+++ trunk/psModules/src/pmSubtractSky.c	(revision 5102)
@@ -6,6 +6,6 @@
  *  @author GLG, MHPCC
  *
- *  @version $Revision: 1.22 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-08-16 01:10:34 $
+ *  @version $Revision: 1.23 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-09-23 01:55:30 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -306,15 +306,15 @@
     // polynomial if there are not enough rows/columns in the input image.
 
-    if (myPoly->nX > dataImage->numRows) {
+    if ((myPoly->COOL_2D_nX + 1) > dataImage->numRows) {
         psLogMsg(__func__, PS_LOG_WARN,
                  "WARNING: ImageFitPolynomial(): Reducing polynomial complexity in x-dimension.\n");
-        oldPolyX = myPoly->nX;
-        myPoly->nX = dataImage->numRows;
-    }
-    if (myPoly->nY > dataImage->numCols) {
+        oldPolyX = myPoly->COOL_2D_nX;
+        myPoly->COOL_2D_nX = dataImage->numRows - 1;
+    }
+    if ((myPoly->COOL_2D_nY + 1) > dataImage->numCols) {
         psLogMsg(__func__, PS_LOG_WARN,
                  "WARNING: ImageFitPolynomial(): Reducing polynomial complexity in y-dimension.\n");
-        oldPolyY = myPoly->nY;
-        myPoly->nY = dataImage->numCols;
+        oldPolyY = myPoly->COOL_2D_nY;
+        myPoly->COOL_2D_nY = dataImage->numCols - 1;
     }
     psS32 i;
@@ -324,10 +324,8 @@
     psS32 aRow;
     psS32 aCol;
-    // The myPoly->nX and ->nY terms are actually 1 larger
-    // than the order of the polynomial.
-    psS32 **polyTerms = buildPolyTerms(myPoly->nX-1, myPoly->nY-1);
+    psS32 **polyTerms = buildPolyTerms(myPoly->COOL_2D_nX, myPoly->COOL_2D_nY);
     // We determine how many coefficients will be in the polynomial that we
     // are fitting to this image.
-    psS32 localPolyTerms = CalculatePolyTerms(myPoly->nX-1, myPoly->nY-1);
+    psS32 localPolyTerms = CalculatePolyTerms(myPoly->COOL_2D_nX, myPoly->COOL_2D_nY);
     psImage *A = psImageAlloc(localPolyTerms, localPolyTerms, PS_TYPE_F64);
     psImage *Aout = psImageAlloc(localPolyTerms, localPolyTerms, PS_TYPE_F64);
@@ -347,5 +345,5 @@
         for (y=0;y<dataImage->numCols;y++) {
             if (maskImage->data.U8[x][y] == 0) {
-                buildSums((psF64) x, (psF64) y, myPoly->nX-1, myPoly->nY-1);
+                buildSums((psF64) x, (psF64) y, myPoly->COOL_2D_nX, myPoly->COOL_2D_nY);
 
                 /************************************************************
@@ -427,8 +425,10 @@
     // coefficients to 0.0, if necessary.
     //
+    // XXX: Verify this works after poly nOrder/nTerm change.
+    //
     if (oldPolyX != -1) {
-        myPoly->nX = oldPolyX;
-        for (i=oldPolyX ; i < myPoly->nX ; i++) {
-            for (j=0;j<myPoly->nY ; j++) {
+        myPoly->COOL_2D_nX = oldPolyX;
+        for (i=oldPolyX ; i < (1 + myPoly->COOL_2D_nX) ; i++) {
+            for (j=0;j<(1 + myPoly->COOL_2D_nY) ; j++) {
                 myPoly->coeff[i][j] = 0.0;
             }
@@ -436,7 +436,7 @@
     }
     if (oldPolyY != -1) {
-        myPoly->nY = oldPolyY;
-        for (i=0 ; i < myPoly->nX ; i++) {
-            for (j=oldPolyY;j<myPoly->nY ; j++) {
+        myPoly->COOL_2D_nY = oldPolyY;
+        for (i=0 ; i < (1 + myPoly->COOL_2D_nX) ; i++) {
+            for (j=oldPolyY;j < (1 + myPoly->COOL_2D_nY) ; j++) {
                 myPoly->coeff[i][j] = 0.0;
             }
