diff --git a/src/syncterm/uifcinit.c b/src/syncterm/uifcinit.c index f4ac62bd054212655187e0756b3858239f43873a..a7aa32c67e9102060bd91495048fd1c706ff29dc 100644 --- a/src/syncterm/uifcinit.c +++ b/src/syncterm/uifcinit.c @@ -21,6 +21,8 @@ static int uifc_initialized=0; static void (*bottomfunc)(int); int orig_ciolib_xlat; int orig_vidflags; +int orig_x; +int orig_y; int init_uifc(BOOL scrn, BOOL bottom) { int i; @@ -33,6 +35,8 @@ int init_uifc(BOOL scrn, BOOL bottom) { uifc.scrn_len=0; orig_ciolib_xlat = ciolib_xlat; orig_vidflags = getvideoflags(); + orig_x=wherex(); + orig_y=wherey(); setvideoflags(orig_vidflags&(CIOLIB_VIDEO_NOBLINK|CIOLIB_VIDEO_BGBRIGHT)); ciolib_xlat = TRUE; uifc.chars = NULL; @@ -80,6 +84,7 @@ void uifcbail(void) ciolib_xlat = orig_ciolib_xlat; setvideoflags(orig_vidflags); loadfont(NULL); + gotoxy(orig_x, orig_y); } uifc_initialized=0; }