1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
|
/* yForth? - Written by Luca Padovani (C) 1996/97
* ------------------------------------------------------------------------
* This software is FreeWare as long as it comes with this header in each
* source file, anyway you can use it or any part of it whatever
* you want. It comes without any warranty, so use it at your own risk.
* ------------------------------------------------------------------------
* Module name: udio.c
* Abstract: User Device Input/Output functions. Here are enclosed all
* non-portable functions.
*/
#include "yforth.h"
#if HAVE_CONIO
# include <conio.h>
#endif
#include "udio.h"
/* d_clrscr: clear the screen */
void d_clrscr() {
#if HAVE_CONIO
clrscr();
#endif
}
/* d_clreol: clear to end of line */
void d_clreol() {
#if HAVE_CONIO
clreol();
#endif
}
/* d_setattr: set default attributes */
void d_setaddr(Cell attr) {
#if HAVE_CONIO
textattr(attr);
#endif
}
/* d_getattr: get default attributes */
Cell d_getattr() {
#if HAVE_CONIO
struct text_info ti;
gettextinfo(&ti);
return (ti.attribute);
#endif
}
/* d_gotoxy: move the cursor to the location (x, y) of the screen */
void d_gotoxy(Cell x, Cell y) {
#if HAVE_CONIO
gotoxy(x, y);
#endif
}
/* d_wherex: current column position of the cursor */
Cell d_wherex() {
#if HAVE_CONIO
return (wherex());
#endif
}
/* d_wherey: current row position of the cursor */
Cell d_wherey() {
#if HAVE_CONIO
return (wherey());
#endif
}
/* d_getch: read a characted from the input device without displaying it and
* return as soon as the character is enteres (i.e. no wait for Carriage
* Return
*/
Char d_getch() {
#if HAVE_CONIO
return (getch());
#endif
}
/* d_kbhit: return True if a character is available */
Cell d_kbhit() {
#if HAVE_CONIO
return (kbhit());
#endif
}
/* d_open: Initialize the Input/Output device */
void d_open() {
}
/* d_close: make some work when program finish to restore Input/Output device */
void d_close() {
}
|