Index: ram/seccpy.c
===================================================================
--- ram/seccpy.c	(revision de912660f9af06dd927fce014e015d863110973f)
+++ ram/seccpy.c	(revision 210d8960913194d9309f24679eaab4ec1a707673)
@@ -213,6 +213,6 @@
 				/* regroup */
 
-				cp->e_data2 = (cp->e_data2 & 0x00F0) |
-					grptmap[grp];
+				cp->e_data2 = (int8_t)((cp->e_data2 & 0x00F0) |
+					grptmap[grp]);
 
 				/* transpose */
@@ -225,5 +225,5 @@
 					nv = 0;
 
-				cp->e_data1 = nv;
+				cp->e_data1 = (int8_t)nv;
 
 			} else if ((et EQ EV_ANRS) OR (et EQ EV_ANVL)) {
@@ -231,6 +231,6 @@
 				/* regroup */
 
-				cp->e_data1 = (cp->e_data1 & 0x000F) |
-					(grptmap[grp] << 4);
+				cp->e_data1 = (int8_t)((cp->e_data1 & 0x000F) |
+					(grptmap[grp] << 4));
 
 			} else {
@@ -239,9 +239,9 @@
 
 				if (cmgtype[et])
-					cp->e_data2 = (cp->e_data2 & 0x00F0) |
-						grptmap[grp];
+					cp->e_data2 = (int8_t)((cp->e_data2 & 0x00F0) |
+						grptmap[grp]);
 				else
-					cp->e_data1 = (cp->e_data1 & 0x00F0) |
-						grptmap[grp];
+					cp->e_data1 = (int8_t)((cp->e_data1 & 0x00F0) |
+						grptmap[grp]);
 			}
 		}
@@ -357,6 +357,6 @@
 				/* regroup */
 
-				rp->e_data2 = (rp->e_data2 & 0x00F0) |
-					grptmap[grp];
+				rp->e_data2 = (int8_t)((rp->e_data2 & 0x00F0) |
+					grptmap[grp]);
 
 				/* transpose */
@@ -369,5 +369,5 @@
 					nv = 0;
 
-				rp->e_data1 = nv;
+				rp->e_data1 = (int8_t)nv;
 
 			} else if ((et EQ EV_ANRS) OR (et EQ EV_ANVL)) {
@@ -375,6 +375,6 @@
 				/* regroup */
 
-				rp->e_data1 = (rp->e_data1 & 0x000F) |
-					(grptmap[grp] << 4);
+				rp->e_data1 = (int8_t)((rp->e_data1 & 0x000F) |
+					(grptmap[grp] << 4));
 
 			} else {
@@ -383,9 +383,9 @@
 
 				if (cmgtype[et])
-					rp->e_data2 = (rp->e_data2 & 0x00F0) |
-						grptmap[grp];
+					rp->e_data2 = (int8_t)((rp->e_data2 & 0x00F0) |
+						grptmap[grp]);
 				else
-					rp->e_data1 = (rp->e_data1 & 0x00F0) |
-						grptmap[grp];
+					rp->e_data1 = (int8_t)((rp->e_data1 & 0x00F0) |
+						grptmap[grp]);
 			}
 		}
