if (!PlotAlPow && !PlotAlAmp && !PlotAlPha)
{
	// y framing and scaling

		  hi_y = ceil(1000.0 * top) / 1000.0 ; //  top inside 0.001 of hi_y
		  lo_y = 0.0 ;
		  ymul = (double)ht / (hi_y - lo_y) ;

	// major divisions
		 dv_ht = (double)sz.cy ;
		 major = 0.001 ;							  // start at 0.001
		 if (ymul * major < dv_ht) major = 0.002 ; // run up through possibles
		 if (ymul * major < dv_ht) major = 0.005 ; 
		 if (ymul * major < dv_ht) major = 0.010 ; 
		 if (ymul * major < dv_ht) major = 0.020 ; 
		 if (ymul * major < dv_ht) major = 0.050 ;
		 if (ymul * major < dv_ht) major = 0.100 ;
		 if (ymul * major < dv_ht) major = 0.200 ;
		 if (ymul * major < dv_ht) major = 0.500 ;
		 if (ymul * major < dv_ht) major = 1.000 ;
		 while (ymul * major < dv_ht) major++ ;	  // now go up in ones

		 himaj = major * floor(hi_y / major) ; // value at highest major div
		 lomaj = major *  ceil(lo_y / major) ; // value at  lowest major div


   // minor divisions
		 dv_ht = (double)(sz.cy/2) ;
		 plotminor = 1 ;
		 minor = 0.0001 ;
		 if (ymul * minor < dv_ht) minor = 0.0005 ;
		 if (ymul * minor < dv_ht) minor = 0.0010 ;
		 if (ymul * minor < dv_ht) minor = 0.0050 ;
		 if (ymul * minor < dv_ht) minor = 0.0100 ;
		 if (ymul * minor < dv_ht) minor = 0.0500 ;
		 if (ymul * minor < dv_ht) minor = 0.1000 ;
		 if (ymul * minor < dv_ht) minor = 0.5000 ;

		 if ((ymul * minor < dv_ht) || minor >= major)
			 plotminor = 0 ;                           // don't plot minor

   // y minor grid
		if (plotminor)
		{
		  oPen = SelectObject(hdc, palePen) ;

		for (
			u  = lomaj ;
		    u <= hi_y ;
			u += minor
			)
			{
				yp = rcArc.bottom -
					 ((int)(ymul * (u - lo_y)) + ylmar) ;

				if ( yp >= D.top)
				{
				 xp = D.left - 3 ;			    // ticks and grid lines
				 MoveToEx(hdc, xp , yp, NULL) ;
				 xp = D.right ;
				 LineTo(hdc, xp, yp ) ;
				}
			}

			SelectObject(hdc, oPen) ;

/***
		for (
			u  = lomaj ;
		    u >= lo_y ;
			u -= minor
			)
			{
				yp = rcArc.bottom -
					 ((int)(ymul * (u - lo_y)) + ylmar) ;

				if ( yp <= D.bottom)
				{
				 xp = D.left - 3 ;			    // ticks and grid lines
				 MoveToEx(hdc, xp , yp, NULL) ;
				 xp = D.right ;
				 LineTo(hdc, xp, yp ) ;
				}
			}
***/
		}

   // y major notation and grid
		for (
			u  = lomaj ;
		    u <= himaj + 2.0 * major ;
			u += major
			)
			{
				yp = rcArc.bottom -
					 ((int)(ymul * (u - lo_y)) + ylmar) ;

				if ( yp >= D.top)
				{
		         oPen = SelectObject(hdc, blackPen) ; 
				 xp = D.left - 3 ;			    // ticks
				 MoveToEx(hdc, xp , yp, NULL) ;
				 xp = D.left ;
				 LineTo(hdc, xp, yp ) ;
				 SelectObject(hdc, oPen) ;

				 sprintf(buff,"%5.3f", u) ;	    // notation

				 GetTextExtentPoint32(hdc, buff, strlen(buff), &sz) ;
				 TextOut(hdc,D.left - (sz.cx + 2),yp - sz.cy/2, buff, strlen(buff)) ;

		         oPen = SelectObject(hdc, grayPen) ;
				 xp = D.left ;					// grid lines
				 MoveToEx(hdc, xp , yp, NULL) ;
				 xp = D.right ;
				 LineTo(hdc, xp, yp ) ;
				 SelectObject(hdc, oPen) ;

				}
			}
}

