Index: ram/ttcpos.c
===================================================================
--- ram/ttcpos.c	(revision 96496d0f7c3052772d6ec0e93bcaa4cad59acc09)
+++ ram/ttcpos.c	(revision 7a2cb0db3d8b8b09d1662f6da3375de3becee36e)
@@ -11,5 +11,5 @@
 #define	CW_F	0xFFFF
 
-static int16_t ttcur[] = {
+static uint16_t ttcur[] = {
 
 	CW_0, CW_0, CW_0, CW_0,	/* 0 */
@@ -37,5 +37,5 @@
 */
 
-void ttcini(uint16_t color)
+void ttcini(int16_t color)
 {
 	if ((v_regs[5] & 0x0180) NE 0x0100)
@@ -69,5 +69,5 @@
 	op->objx = xcol;		/* update v_obtab entry */
 	op->objy = yrow;
-	op->odtw1 = 0x0400 | (0x03FF & (xcol >> 1));
+	op->odtw1 = (uint16_t)(0x0400 | (0x03FF & (xcol >> 1)));
 
 	SetPri(TTCURS, TTCPRI);		/* turn on the new location */
Index: ram/ttcpos.x
===================================================================
--- ram/ttcpos.x	(revision 96496d0f7c3052772d6ec0e93bcaa4cad59acc09)
+++ ram/ttcpos.x	(revision 7a2cb0db3d8b8b09d1662f6da3375de3becee36e)
@@ -15,4 +15,4 @@
 */
 
-extern	void		ttcini(uint16_t color);
+extern	void		ttcini(int16_t color);
 extern	void		ttcpos(int16_t row, int16_t col);
