Index: ram/scselbx.c
===================================================================
--- ram/scselbx.c	(revision a2504374bf697fc984068a96b50fe70aefa6e418)
+++ ram/scselbx.c	(revision 28c09338304c58d47403758c12e9be9782063685)
@@ -199,5 +199,6 @@
 void dsects(void)
 {
-	register int16_t atr, row, col, i, j;
+	uint16_t atr;
+	int16_t row, col, i, j;
 	int8_t buf[8];
 	int8_t cl, cr, csl, csr;
@@ -275,5 +276,6 @@
 {
 	int8_t buf[4];
-	int16_t atr, col;
+	uint16_t atr;
+	int16_t col;
 
 	sprintf(buf, "%02d", n + 1);
@@ -834,5 +836,5 @@
 			ep->e_time  = t_cur;
 			ep->e_type  = EV_SBGN;
-			ep->e_data1 = sect;
+			ep->e_data1 = (int8_t)sect;
 			p_cur = e_ins(ep, ep_adj(p_cur, 1, t_cur)->e_bak)->e_fwd;
 			eh_ins(ep, EH_SBGN);
@@ -865,5 +867,5 @@
 			ep->e_time  = t_cur;
 			ep->e_type  = EV_SEND;
-			ep->e_data1 = sect;
+			ep->e_data1 = (int8_t)sect;
 			p_cur = e_ins(ep, ep_adj(p_cur, 0, t_cur))->e_fwd;
 			eh_ins(ep, EH_SEND);
@@ -1034,5 +1036,6 @@
 	register int16_t	row, col, i;
 	register struct s_entry *ep;
-	int16_t atr, modewas;
+	uint16_t atr;
+	int16_t modewas;
 
 	(void)n;
