home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
progm
/
cxl-1.zip
/
CXLVID.H
< prev
next >
Wrap
C/C++ Source or Header
|
1989-03-27
|
6KB
|
153 lines
/*
┌──────────────────────────────────────────────────────────────────────────┐
│ │
│ CXLVID.H - CXL is Copyright (c) 1987-1989 by Mike Smedley. │
│ │
│ This header file contains function prototypes and definitions for │
│ screen/video functions. Windowing functions are defined in CXLWIN.H │
│ │
└──────────────────────────────────────────────────────────────────────────┘
*/
#if defined(__TURBOC__) /* Turbo C */
#if __STDC__
#define _Cdecl
#else
#define _Cdecl cdecl
#endif
#define _Near
#elif defined(__ZTC__) /* Zortech C++ */
#define _Cdecl
#define _Near
#elif defined(M_I86) && !defined(__ZTC__) /* Microsoft C/QuickC */
#if !defined(NO_EXT_KEYS)
#define _Cdecl cdecl
#define _Near near
#else
#define _Cdecl
#define _Near
#endif
#elif defined(__POWERC__) /* Power C */
#define _Cdecl
#define _Near
#endif
/*---------------------------[ function prototypes ]-------------------------*/
void _Cdecl box_(int srow,int scol,int erow,int ecol,int btype,int attr);
void _Cdecl cclrscrn(int attr);
void _Cdecl clreol_(void);
void _Cdecl clrscrn(void);
int _Cdecl disktoscrn(char *fname);
int _Cdecl disktowin(char *fname);
void _Cdecl fill_(int srow,int scol,int erow,int ecol,int ch,int atr);
void _Cdecl getcursz(int *sline,int *eline);
void _Cdecl gotoxy_(int row,int col);
void _Cdecl hidecur(void);
void _Cdecl lgcursor(void);
int _Cdecl mapattr(int attr);
void _Cdecl mode(int mode_code);
void _Cdecl printc(int row,int col,int attr,int ch);
void _Cdecl prints(int row,int col,int attr,char *str);
void _Cdecl putchat(int ch,int attr);
unsigned _Cdecl readchat(void);
void _Cdecl readcur(int *row,int *col);
void _Cdecl revattr(int count);
int _Cdecl revsattr(int attr);
int _Cdecl scrntodisk(char *fname);
void _Cdecl setattr(int attr,int count);
void _Cdecl setcursz(int sline,int eline);
int _Cdecl setlines(int numlines);
void _Cdecl showcur(void);
void _Cdecl smcursor(void);
void _Cdecl spc(int num);
void _Cdecl srestore(int *sbuf);
int *_Cdecl ssave(void);
int _Cdecl videoinit(void);
int _Cdecl vidtype(void);
int _Cdecl wintodisk(int srow,int scol,int erow,int ecol,char *fname);
/*-------------[ display adapter types returned from vidtype() ]-------------*/
#define V_NONE 0
#define V_MDA 1
#define V_EGAMONO 2
#define V_MCGAMONO 3
#define V_VGAMONO 4
#define V_HGC 5
#define V_HGCPLUS 6
#define V_INCOLOR 7
#define V_CGA 8
#define V_EGA 9
#define V_MCGA 10
#define V_VGA 11
/*------------------------[ video information record ]-----------------------*/
struct _vinfo_t {
unsigned int videoseg; /* video buffer segment address */
unsigned char adapter; /* video adapter type */
unsigned char numrows; /* number of displayed rows */
unsigned char numcols; /* number of displayed columns */
unsigned char cheight; /* character height in pixels */
unsigned char cwidth; /* character width in pixels */
unsigned char mono; /* is it a monochrome adapter? */
unsigned char mapattr; /* map color attribs to mono? */
unsigned char cgasnow; /* is CGA snow present? */
unsigned char retminch; /* min chars needed for retrace */
unsigned char usebios; /* use BIOS for video writes? */
unsigned char dvcheck; /* check for DESQview? */
unsigned char dvexist; /* is DESQview present? */
};
extern struct _vinfo_t _Near _Cdecl _vinfo;
/*--------------[ attribute codes for functions that use them ]--------------*/
#if !defined(BLACK) /* foreground colors */
#define BLACK 0
#define BLUE 1
#define GREEN 2
#define CYAN 3
#define RED 4
#define MAGENTA 5
#define BROWN 6
#define YELLOW 14
#define WHITE 15
#endif
#if !defined(LGREY)
#define LGREY 7 /* CXL abbreviates LIGHT as L */
#define DGREY 8 /* and DARK as D for ease of use */
#define LBLUE 9
#define LGREEN 10
#define LCYAN 11
#define LRED 12
#define LMAGENTA 13
#define _BLACK 0 /* background colors */
#define _BLUE 16
#define _GREEN 32
#define _CYAN 48
#define _RED 64
#define _MAGENTA 80
#define _BROWN 96
#define _LGREY 112
#endif
#if !defined(BLINK)
#define BLINK 128 /* blink attribute */
#endif
/*-----------------------[ macro-function definitions ]----------------------*/
#if !defined(MK_FP)
#define MK_FP(seg,ofs) ((void far *) (((unsigned long)(seg) << 16) | \
(unsigned)(ofs)))
#endif
#define attrib(f,b,i,bl) ((b<<4)|(f)|(i<<3)|(bl<<7))
#define clrwin(a,b,c,d) gotoxy_(a,b);fill_(a,b,c,d,' ',(readchat()>>8))
#define waithret() while((inp(0x03da)&0x01)!=0); \
while((inp(0x03da)&0x01)==0)
#define waitvret() while((inp(0x03da)&0x08)!=0); \
while((inp(0x03da)&0x08)==0)