diff --git a/src/conio/ciolib.c b/src/conio/ciolib.c
index dddb790fc5c352a6742adc27665dc82ffe8fc4c2..02e6facebe1faecc4e6b463bab796c7d5e3ae691 100644
--- a/src/conio/ciolib.c
+++ b/src/conio/ciolib.c
@@ -637,9 +637,11 @@ int ciolib_cputs(char *str)
 {
 	int		pos;
 	int		ret=0;
+	int		olddmc;
 
 	CIOLIB_INIT();
-	
+
+	olddmc=dont_move_cursor;	
 	dont_move_cursor=1;
 	for(pos=0;str[pos];pos++)
 	{
@@ -648,7 +650,7 @@ int ciolib_cputs(char *str)
 			ciolib_putch('\r');
 		ciolib_putch(str[pos]);
 	}
-	dont_move_cursor=0;
+	dont_move_cursor=olddmc;
 	ciolib_gotoxy(ciolib_wherex(),ciolib_wherey());
 	return(ret);
 }