1 /* ibmpc/ms_ansi.h: ANSI definitions for MSDOS
2 
3    Copyright (c) 1989-94 James E. Wilson, Don Kneller
4 
5    This software may be copied and distributed for educational, research, and
6    not for profit purposes provided that this copyright and statement are
7    included in all such copies. */
8 
9 /* To allow the choice between PCcurses (which may not work on all machines)
10  * and ANSI (which should work on all machines), indirect the output routines
11  * through pointers and adjust the pointers to the correct routines at
12  * initialization time.
13  */
14 #ifdef LINT_ARGS
15 int	(*output_addch)(int);
16 int	(*output_mvaddstr)(int, int, char *);
17 int	(*output_mvprintw)(int, int, char *, ...);
18 int	(*output_move)(int, int);
19 int	(*output_endwin)(void);
20 int	(*output_clrtobot)(void);
21 int	(*output_clrtoeol)(void);
22 int	(*output_mvaddch)(int, int, char);
23 int	(*output_initscr)(void);
24 int	(*output_refresh)(void);
25 int	(*output_clear)(void);
26 
27 int	(*output_nocrmode)(void);
28 int	(*output_crmode)(void);
29 int	(*output_nonl)(void);
30 int	(*output_nl)(void);
31 int	(*output_noecho)(void);
32 int	(*output_echo)(void);
33 int	ansi_prep (int, int, int);
34 #else
35 extern int	(*output_addch)();
36 extern int	(*output_mvaddstr)();
37 extern int	(*output_mvprintw)();
38 extern int	(*output_move)();
39 extern int	(*output_endwin)();
40 extern int	(*output_clrtobot)();
41 extern int	(*output_clrtoeol)();
42 extern int	(*output_mvaddch)();
43 extern int	(*output_initscr)();
44 extern int	(*output_refresh)();
45 extern int	(*output_clear)();
46 
47 extern int	(*output_nocrmode)();
48 extern int	(*output_crmode)();
49 extern int	(*output_nonl)();
50 extern int	(*output_nl)();
51 extern int	(*output_noecho)();
52 extern int	(*output_echo)();
53 extern int	ansi_prep();
54 #endif
55 
56 extern int	ansi;
57 
58 #define addch		(*output_addch)
59 #define mvaddstr	(*output_mvaddstr)
60 #define mvprintw	(*output_mvprintw)
61 #undef move		/* from curses.h */
62 #define move		(*output_move)
63 #define endwin		(*output_endwin)
64 #define clrtobot	(*output_clrtobot)
65 #define clrtoeol	(*output_clrtoeol)
66 #define mvaddch		(*output_mvaddch)
67 #define initscr		(*output_initscr)
68 #define refresh		(*output_refresh)
69 #define clear		(*output_clear)
70 #define nocrmode	(*output_nocrmode)
71 #define crmode		(*output_crmode)
72 #define nonl		(*output_nonl)
73 #define nl		(*output_nl)
74 #define noecho		(*output_noecho)
75 #define echo		(*output_echo)
76