X-Git-Url: https://jxself.org/git/?p=super-star-trek.git;a=blobdiff_plain;f=io.c;h=d59a5092550843fcf3800b88524a224cf4c6af5b;hp=a436c3333b7b41a3826fdf2f05ed48d1d9cbe04b;hb=c430e3a5fdb07728d3199f20cda2b566e6b60caa;hpb=e29006d00a2962f32312e31bf142f77a99bde04d diff --git a/io.c b/io.c index a436c33..d59a509 100644 --- a/io.c +++ b/io.c @@ -9,13 +9,13 @@ #include #include "conio.h" -#include "sstlinux.h" #include "sst.h" +#include "sstlinux.h" #ifndef SERGEEV static int linecount; /* for paging */ -#endif /* SERGEEV */ static int screenheight = 24, screenwidth = 80; +#endif /* SERGEEV */ #ifndef SERGEEV static int curses = FALSE; #else /* SERGEEV */ @@ -33,6 +33,7 @@ wnd wnds[6]={{1,1,80,25}, /* FULLSCREEN_WINDOW */ short curwnd; #endif /* SERGEEV */ +#ifndef SERGEEV static void outro(int sig) { /* wrap up, either normally or due to signal */ if (curses) { @@ -49,9 +50,11 @@ static void fastexit(int sig) { putchar('\n'); exit(0); } +#endif /* SERGEEV */ void iostart(int usecurses) { #ifdef SERGEEV + initconio(); textattr(7); clrscr(); setwnd(FULLSCREEN_WINDOW); @@ -165,9 +168,11 @@ void skip(int i) { } #else /* SERGEEV */ while (i-- > 0) proutn("\n\r"); +#endif /* SERGEEV */ } static void vproutn(char *fmt, va_list ap) { +#ifdef SERGEEV char *s, *p; vasprintf(&s, fmt, ap); p=s; @@ -253,8 +258,8 @@ static void vprouts(char *fmt, va_list ap) { } free(s); } - #endif /* SERGEEV */ + void prouts(char *fmt, ...) { #ifndef SERGEEV clock_t endTime; @@ -345,15 +350,15 @@ void drawmaps(short l) { if (l==1) sensor(); if (l!=2) setwnd(LEFTUPPER_WINDOW); gotoxy(1,1); - strcpy(line,"s"); - srscan(1); + enqueue("no"); + srscan(SCAN_FULL); if (l!=2){ setwnd(SRSCAN_WINDOW); clrscr(); - srscan(2); + srscan(SCAN_NO_LEFTSIDE); setwnd(LRSCAN_WINDOW); clrscr(); - strcpy(line,"l"); + enqueue("l"); lrscan(); _setcursortype(_NORMALCURSOR); } @@ -449,6 +454,16 @@ void tracktorpedo(int x, int y, int ix, int iy, int wait, int l, int i, int n, i #endif /* SERGEEV */ } +void makechart(void) { +#ifdef SERGEEV + _setcursortype(_NOCURSOR); + setwnd(LOWER_WINDOW); + clrscr(); + chart(0); + _setcursortype(_NORMALCURSOR); +#endif /* SERGEEV */ +} + void setpassword(void) { #ifndef SERGEEV while (TRUE) {