Index: ram/delpnts.c
===================================================================
--- ram/delpnts.c	(revision f798356774f17aca78a3156d1009b48e0eab9f01)
+++ ram/delpnts.c	(revision de912660f9af06dd927fce014e015d863110973f)
@@ -94,5 +94,5 @@
 
 		*(fpu + (fnoff[i] << 4) + FPU_TCTL) =
-		   (fp->idftmd = (fp->idftmd & ~3) | 1);
+		   (uint16_t)(fp->idftmd = (fp->idftmd & ~3) | 1);
 	}
 
@@ -106,19 +106,21 @@
 		pp2 = &vp->idhpnt[pt2];
 
-		for (i = nmv * PT_SIZE; i > 0; i--)
+		for (i = nmv * (int16_t)PT_SIZE; i > 0; i--)
 			*pp1++ = *pp2++;
 
 		/* adjust total points remaining */
 
-		vp->idhplft += np;
+		vp->idhplft = (int8_t)(vp->idhplft + np);
 
 		/* adjust number of points in this function */
 
-		vp->idhfnc[curfunc].idfpif -= np;
+		vp->idhfnc[curfunc].idfpif =
+			(int8_t)(vp->idhfnc[curfunc].idfpif - np);
 
 		/* adjust starting points in other functions */
 
 		for (cf = curfunc + 1; cf < NFINST; cf++)
-			vp->idhfnc[cf].idfpt1 -= np;
+			vp->idhfnc[cf].idfpt1 =
+				(int8_t)(vp->idhfnc[cf].idfpt1 - np);
 
 		setipl(oldi);		/* +++++ restore interrupts +++++ */
@@ -154,19 +156,21 @@
 			pp2 = &vp->idhpnt[pt2];
 
-			for (i = nmv * PT_SIZE; i > 0; i--)
+			for (i = nmv * (int16_t)PT_SIZE; i > 0; i--)
 				*pp1++ = *pp2++;
 
 			/* adjust total points remaining */
 
-			vp->idhplft += (np - 1);
+			vp->idhplft = (int8_t)(vp->idhplft + (np - 1));
 
 			/* adjust number of points in this function */
 
-			vp->idhfnc[curfunc].idfpif -= (np - 1);
+			vp->idhfnc[curfunc].idfpif =
+				(int8_t)(vp->idhfnc[curfunc].idfpif - (np - 1));
 
 			/* adjust starting points in other functions */
 
 			for (cf = curfunc + 1; cf < NFINST; cf++)
-				vp->idhfnc[cf].idfpt1 -= (np - 1);
+				vp->idhfnc[cf].idfpt1 =
+					(int8_t)(vp->idhfnc[cf].idfpt1 - (np - 1));
 		}
 
