diff --git a/src/conio/ciolib.c b/src/conio/ciolib.c index e61e06f351f47b398ab9917d92845f071a6ee0c0..e8c0805b7f58fc7073b060d3ca02424891d78b7e 100644 --- a/src/conio/ciolib.c +++ b/src/conio/ciolib.c @@ -1023,9 +1023,10 @@ CIOLIBEXPORT int CIOLIBCALL ciolib_putch(int a) unsigned char a1=a; unsigned char buf[2]; int i; - CIOLIB_INIT(); int old_puttext_can_move=puttext_can_move; + CIOLIB_INIT(); + if(cio_api.putch) return(cio_api.putch(a1)); @@ -1243,7 +1244,7 @@ CIOLIBEXPORT int CIOLIBCALL ciolib_get_window_info(int *width, int *height, int } /* Optional */ -CIOLIBEXPORT int ciolib_beep(void) +CIOLIBEXPORT int CIOLIBCALL ciolib_beep(void) { if(cio_api.beep) return(cio_api.beep()); diff --git a/src/conio/ciolib.h b/src/conio/ciolib.h index 9d4bd7fb9fb1d27d2368551b7ba82d090c0aa645..135eba12135818c62c79cabc167f6072b06b61ca 100644 --- a/src/conio/ciolib.h +++ b/src/conio/ciolib.h @@ -313,6 +313,7 @@ CIOLIBEXPORT int CIOLIBCALL ciolib_setfont(int font, int force); CIOLIBEXPORT int CIOLIBCALL ciolib_getfont(void); CIOLIBEXPORT int CIOLIBCALL ciolib_loadfont(char *filename); CIOLIBEXPORT int CIOLIBCALL ciolib_get_window_info(int *width, int *height, int *xpos, int *ypos); +CIOLIBEXPORT int CIOLIBCALL ciolib_beep(void); /* DoorWay specific stuff that's only applicable to ANSI mode. */ CIOLIBEXPORT void CIOLIBCALL ansi_ciolib_setdoorway(int enable); @@ -367,6 +368,7 @@ CIOLIBEXPORT void CIOLIBCALL ansi_ciolib_setdoorway(int enable); #define getfont() ciolib_getfont() #define loadfont(a) ciolib_loadfont(a) #define get_window_info(a,b,c,d) ciolib_get_window_info(a,b,c,d) + #define beep() ciolib_beep() #endif #ifdef WITH_SDL diff --git a/src/conio/win32cio.c b/src/conio/win32cio.c index c8adc0009ebcb3489ea1fcbab82f8b82cd16afb8..a9a5dc2617fa10022a10b212b3683d894f0a8c48 100644 --- a/src/conio/win32cio.c +++ b/src/conio/win32cio.c @@ -532,8 +532,8 @@ void win32_textmode(int mode) cio_textinfo.attribute=7; cio_textinfo.normattr=7; - cio_textinfo.currmode=vparams[modeisx].mode; - cio_textinfo.screenheightsz.Y; + cio_textinfo.currmode=vparams[modeidx].mode; + cio_textinfo.screenheight=sz.Y; cio_textinfo.screenwidth=sz.X; cio_textinfo.curx=1; cio_textinfo.cury=1; @@ -580,8 +580,8 @@ void win32_gotoxy(int x, int y) COORD cp; HANDLE h; - cio_terminfo.curx=x; - cio_terminfo.cury=y; + cio_textinfo.curx=x; + cio_textinfo.cury=y; cp.X=x-1; cp.Y=y-1; if(!hold_update && (h=GetStdHandle(STD_OUTPUT_HANDLE)) != INVALID_HANDLE_VALUE)