diff --git a/src/conio/cterm.c b/src/conio/cterm.c
index 634dbe0fba1f2b24910cebe850aa1bd3be316d92..a5fd319ab3a903d66dec57b4659dbe61afc081fa 100644
--- a/src/conio/cterm.c
+++ b/src/conio/cterm.c
@@ -1463,8 +1463,15 @@ char *cterm_write(unsigned char *buf, int buflen, char *retbuf, size_t retsize,
 					}
 				}
 				else if (cterm.music) {
-					if(ch[0]==14)
+					if(ch[0]==14) {
+						hold_update=0;
+						puttext_can_move=0;
+						gotoxy(wherex(),wherey());
+						_setcursortype(cterm.cursor);
+						hold_update=1;
+						puttext_can_move=1;
 						play_music();
+					}
 					else {
 						if(strchr(musicchars,ch[0])!=NULL)
 							strcat(cterm.musicbuf,ch);