home *** CD-ROM | disk | FTP | other *** search
- /************************************************************************/
- /* */
- /* MFLCONIO Header file */
- /* */
- /* Defines and function prototypes for console I/O. */
- /* */
- /* Copyright 1989 by Robert B. Stout dba MicroFirm */
- /* All rights reserved */
- /* */
- /* Copyright 1986, 1987 by S.E. Margison */
- /* */
- /* Compiled by QC 2.0 for use with MSC 5.1 or QC 2.0 or later. */
- /* */
- /************************************************************************/
-
- #ifndef MFLCONIO_H
- #define MFLCONIO_H
-
- #include <stdio.h>
- #include <mfldefs.h>
-
- /************************************************************************/
- /* */
- /* Screen definitions */
- /* */
- /************************************************************************/
-
- #define BW40 0 /* b&w 40 x 25 screen */
- #define CLR40 1 /* color 40 x 25 screen */
- #define BW80 2 /* b&w 80 x 25 screen */
- #define CLR80 3 /* color 80 x 25 screen */
- #define CG320 4 /* color graphics, 320 x 200 */
- #define BW320 5 /* b&w graphics, 320 x 200 */
- #define BW640 6 /* b&w graphics, 640 x 200 */
- #define MONO 7 /* 80 x 25 b&w using Monochrome card */
-
- /* video attributes */
-
- #define BLINKING 0x87
- #define REVERSE 0x70
- #define REVBLINK 0xf0
- #define NORMAL 0x07
- #define HIGHLITE 0x0f
- #define HIGHBLINK 0x8f
- #define BLINKBIT 0x80 /* OR in to cause blink */
- #define HILTBIT 0x08 /* OR in to cause highlight */
-
- /*
- ** colors -- Use as is for foreground colors
- ** For background, shift left by 4 and OR with
- ** foreground and possible video attributes
- */
-
- #define BLACK 0
- #define BLUE 1
- #define GREEN 2
- #define CYAN 3
- #define RED 4
- #define MAGENTA 5
- #define BROWN 6
- #define WHITE 7
- #define GRAY 8
- #define LTBLUE 9
- #define LTGREEN 10
- #define LTCYAN 11
- #define LTRED 12
- #define LTMAGENTA 13
- #define YELLOW 14
- #define HIWHITE 15 /* hi-intensity white */
-
- /************************************************************************/
- /* */
- /* Keyboard definitions */
- /* */
- /************************************************************************/
-
- #define ESC 0x1b
- #define BACKSP 0x08
- #define HTAB 0x09
-
- #define FKLEAD 0 /* if key = 0, read next byte as function key */
- #define FK1 59
- #define FK2 60
- #define FK3 61
- #define FK4 62
- #define FK5 63
- #define FK6 64
- #define FK7 65
- #define FK8 66
- #define FK9 67
- #define FK10 68
-
- #define SFK1 84 /* shifted function key */
- #define SFK2 85
- #define SFK3 86
- #define SFK4 87
- #define SFK5 88
- #define SFK6 89
- #define SFK7 90
- #define SFK8 91
- #define SFK9 92
- #define SFK10 93
-
- #define CFK1 94 /* control function key */
- #define CFK2 95
- #define CFK3 96
- #define CFK4 97
- #define CFK5 98
- #define CFK6 99
- #define CFK7 100
- #define CFK8 101
- #define CFK9 102
- #define CFK10 103
-
- #define AFK1 104 /* alt function keys */
- #define AFK2 105
- #define AFK3 106
- #define AFK4 107
- #define AFK5 108
- #define AFK6 109
- #define AFK7 110
- #define AFK8 111
- #define AFK9 112
- #define AFK10 113
-
- #define DELKEY 83 /* an alternate function key */
- #define HOME 71 /* HOME key */
- #define CURLEFT 75 /* <- */
- #define ENDKEY 79 /* END key */
- #define CURUP 72 /* up arrow */
- #define CURDN 80 /* down arrow */
- #define PGUP 73 /* PgUp */
- #define CURRIGHT 77 /* -> */
- #define PGDN 81 /* PgDn */
- #define INSERT 82 /* Ins */
- #define CTRLHOME 119 /* Ctrl Home */
- #define CTRLCURLF 115 /* Ctrl <- */
- #define CTRLEND 117 /* Ctrl End */
- #define CTRLPRTSC 114 /* Ctrl PrtSc */
- #define CTRLPGUP 132 /* Ctrl PgUp */
- #define CTRLCURRT 116 /* Ctrl -> */
- #define CTRLPGDN 118 /* Ctrl PgDn */
- #define BKTAB 15 /* Shift Tab */
- #define ALTMINUS 130 /* Alt - */
- #define ALTEQUAL 131 /* Alt = */
-
- /************************************************************************/
- /* */
- /* Graphic definitions */
- /* */
- /************************************************************************/
-
- /* Single Line Box Drawing Characters */
- #define SHLINE 196
- #define SVLINE 179
- #define SUL 218
- #define SUR 191
- #define SCROSS 197
- #define SLL 192
- #define SLR 217
- #define STOPT 194
- #define SLT 195
- #define SRT 180
- #define SBOTT 193
-
- /* Double Line Box Drawing Characters */
- #define DHLINE 205
- #define DVLINE 186
- #define DUL 201
- #define DUR 187
- #define DCROSS 206
- #define DLL 200
- #define DLR 188
- #define DTOPT 203
- #define DLT 204
- #define DRT 185
- #define DBOTT 202
-
- /* Single Vertical with Double Horizontal */
- #define SDUL 213
- #define SDUR 184
- #define SDTOPT 209
- #define SDBOTT 207
- #define SDCROSS 216
- #define SDLT 198
- #define SDRT 181
- #define SDLL 212
- #define SDLR 190
-
- /* Double Vertical with Single Horizontal */
- #define DSUL 214
- #define DSUR 183
- #define DSTOPT 210
- #define DSBOTT 208
- #define DSCROSS 215
- #define DSLT 199
- #define DSRT 182
- #define DSLL 211
- #define DSLR 189
-
- #ifndef _Cdecl_
- #ifdef NO_EXT_KEYS
- #define _Cdecl_
- #else
- #define _Cdecl_ cdecl
- #endif
- #endif
-
- /************************************************************************/
- /* */
- /* Function to translate video attribute to ANSI.SYS command string. */
- /* */
- /************************************************************************/
-
- char * _Cdecl_ make_ansi(int);
- void _Cdecl_ Bputs(char *);
-
- /************************************************************************/
- /* */
- /* Direct video package */
- /* */
- /************************************************************************/
-
- void _Cdecl_ dvid_init(void),
- _Cdecl_ dvid_bios(void),
- _Cdecl_ dvid_sync(int),
- _Cdecl_ dvid_raw(int),
- _Cdecl_ dvid_done(void),
- _Cdecl_ dvid_putchr(char),
- _Cdecl_ dvid_putstr(char *),
- _Cdecl_ dvid_scroll(int, int, int, int, int, int),
- _Cdecl_ dvid_move(int, int),
- _Cdecl_ dvid_setcount(int),
- _Cdecl_ dvid_flush(void),
- _Cdecl_ dvid_e2eol(void),
- _Cdecl_ dvid_e2eos(void),
- _Cdecl_ dvid_attrib(int),
- _Cdecl_ dvid_setpage(int, int),
- _Cdecl_ dvid_chgattrib(int, int, int, int, int),
- _Cdecl_ dvid_cls(void),
- _Cdecl_ dvid_clrfield(int, int, int),
- _Cdecl_ dvid_say(int, int, char *),
- _Cdecl_ dvid_sayr(int, int, char *),
- _Cdecl_ dvid_enterfn(char *, int, int, int, int),
- _Cdecl_ dvid_char_at(int, int, char),
- _Cdecl_ dvid_char_atr(int, int, char),
- _Cdecl_ dvid_putsa(char *, int);
-
- int _Cdecl_ dvid_printf(char *, ...),
- _Cdecl_ dvid_printfa(int, char *, ...),
- _Cdecl_ dvid_getchr(int, int),
- _Cdecl_ dvid_enterdata(char *, int, int, int, int),
- _Cdecl_ dvid_getattr(void),
- _Cdecl_ dvid_getraw(void);
-
- /************************************************************************/
- /* */
- /* Keyboard functions */
- /* */
- /************************************************************************/
-
- void _Cdecl_ setcaps(void),
- _Cdecl_ clrcaps(void),
- _Cdecl_ setnumlock(void),
- _Cdecl_ clrnumlock(void);
-
- int _Cdecl_ getkey(void),
- _Cdecl_ kbstatus(int),
- _Cdecl_ _kbstate(void);
-
- /************************************************************************/
- /* */
- /* Data entry functions functions */
- /* */
- /************************************************************************/
-
- void _Cdecl_ enterfn(char *, int, int, int, int);
- int _Cdecl_ enterdata(char *, int, int, int, int);
-
- /************************************************************************/
- /* */
- /* Console control and information functions */
- /* */
- /************************************************************************/
-
- #define SCR_UP 6
- #define SCR_DN 7
-
- void _Cdecl_ viscroll(int, int, int, int, int, int, int),
- _Cdecl_ vidpage(int),
- _Cdecl_ vid_border(int),
- _Cdecl_ vid_palette(int),
- _Cdecl_ cursor_style(int, int, int),
- _Cdecl_ vmode(int);
-
- struct v_info__ {
- int rows,
- cols,
- mode,
- page;
- unsigned scrnseg;
- unsigned far *screen;
- LOGICAL desqview;
- } ;
-
- extern struct v_info__ v_info_;
-
- void _Cdecl_ v_init(void);
-
- int _Cdecl_ iscons(FILE *),
- _Cdecl_ _stuff(void),
- _Cdecl_ stuff(int);
-
- unsigned int _Cdecl_ getpos(int);
-
- /************************************************************************/
- /* */
- /* Miscellaneous video functions */
- /* */
- /************************************************************************/
-
- void _Cdecl_ error(char *),
- _Cdecl_ cls(void),
- _Cdecl_ clrfield(int, int, int, int),
- _Cdecl_ d_cls(void),
- _Cdecl_ d_pos(int, int, int),
- _Cdecl_ d_say(int, int, char *),
- _Cdecl_ d_saypag(int, int, char *, int),
- _Cdecl_ mkbox(int, int, int, int, int),
- _Cdecl_ vid_wrpix(int, int, int),
- _Cdecl_ copyright(void);
-
- int _Cdecl_ vid_rdpix(int, int);
-
- #endif /* MFLCONIO_H */
-