Index: ram/etinst.c
===================================================================
--- ram/etinst.c	(revision 7fcfadecf7865435b8863d4f43257458048f852b)
+++ ram/etinst.c	(revision b9ddc9a0108506d3ed9d8efc2e18323ab7dff101)
@@ -40,5 +40,5 @@
 		return(FAILURE);
 
-	ins2grp[n] = ival | (ins2grp[n] & 0xFF00);
+	ins2grp[n] = ival | (ins2grp[n] & (int16_t)0xFF00);
 	setv2gi(n);
 	setinst();
@@ -48,11 +48,11 @@
 		if (E_NULL NE (ep = findev(p_cur, t_cur, EV_INST, n, -1))) {
 
-			ep->e_data2 = ival;
+			ep->e_data2 = (int8_t)ival;
 
 		} else if (E_NULL NE (ep = e_alc(E_SIZE2))) {
 
 			ep->e_type  = EV_INST;
-			ep->e_data1 = n;
-			ep->e_data2 = ival;
+			ep->e_data1 = (int8_t)n;
+			ep->e_data2 = (int8_t)ival;
 			ep->e_time  = t_cur;
 			p_cur = e_ins(ep, ep_adj(p_cur, 0, t_cur))->e_fwd;
@@ -114,5 +114,5 @@
 
 	ec = stccol - cfetp->flcol;
-	ebuf[ec]  = k + '0';
+	ebuf[ec]  = (int8_t)(k + '0');
 
 	if (v_regs[5] & 0x0180)
