summaryrefslogtreecommitdiff
path: root/reference/C/CONTRIB/SNIP/vio.h
blob: f199208a6481a795141647f446fca8d2895a01e1 (plain)
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
/*
**  By: Jim Nutt
*/

#ifndef VIO_H
#define VIO_H

#if __cplusplus
extern "C" {
#endif

#if defined(__TURBOC__)
 #define _far far
 #define _pascal pascal
#endif

/* initialization and termination functions */

int  _far VIOopen(void);
void _far VIOclose(void);

/* scrolling functions */

void _far VIOscrollright(int x1, int y1, int x2, int y2, int count);
void _far VIOscrollleft(int x1, int y1, int x2, int y2, int count);
void _far VIOscrollup(int x1, int y1, int x2, int y2, int count);
void _far VIOscrolldown(int x1, int y1, int x2, int y2, int count);

/* screen clear */

void _far VIOclear(int x1, int y1, int x2, int y2);

/* write to screen */

void _far VIOputc(const char c);
void _far VIOputs(const char far * s);
void _far VIOputr(int x, int y, int w, int h, int _far * b);

/* read from screen */

int _far VIOgetca(const int x, const int y);
int _far * _far VIOgetra(int x1, int y1, int x2, int y2, int _far * b);

/* set colors */

void _far VIOsetfore(const int c);
void _far VIOsetback(const int c);

/* get current color settings */

int  _far VIOgetfore(void);
int  _far VIOgetback(void);

/* set the write cursor */

void _far VIOgotoxy(int x, int y);

/* update the screen and visible cursor */

void _far VIOupdate();

/* get the current write cursor position */

int  _far VIOwherex(void);
int  _far VIOwherey(void);

/* get screen information */

unsigned int  _far VIOsegment(void);

int  _far VIOcolumns(void);
int  _far VIOrows(void);
int  _far VIOmode(void);
int  _far VIOheight(void);

/* set segment information */

void _far VIOsetSegment(unsigned int s);
void _far VIOsetRows(int r);
void _far VIOsetCols(int c);

/* get BIOS cursor location */

void _far VIOcursor(int _far * x, int _far * y, int _far * shape);

#if __cplusplus
} ;
#endif

#endif