xref: /titanic_52/usr/src/lib/libcurses/screen/llib-lcurses (revision a72f7ea693101cc48bafbb4db6bb437d828011c4)
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License, Version 1.0 only
6 * (the "License").  You may not use this file except in compliance
7 * with the License.
8 *
9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 * or http://www.opensolaris.org/os/licensing.
11 * See the License for the specific language governing permissions
12 * and limitations under the License.
13 *
14 * When distributing Covered Code, include this CDDL HEADER in each
15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 * If applicable, add the following below this CDDL HEADER, with the
17 * fields enclosed by brackets "[]" replaced with your own identifying
18 * information: Portions Copyright [yyyy] [name of copyright owner]
19 *
20 * CDDL HEADER END
21 */
22/* LINTLIBRARY */
23/* PROTOLIB1 */
24
25/*
26 * Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
27 * Use is subject to license terms.
28 */
29
30#pragma ident	"%Z%%M%	%I%	%E% SMI"
31
32#include <stdio.h>
33#include <sys/types.h>
34#include <stdarg.h>
35#include <curses.h>
36#include "term.h"
37#include "print.h"
38
39/*
40 * usr/src/lib/libcurses/screen
41 */
42
43/* V2.__sscans.c */
44int __sscans(WINDOW *win, char *fmt, ...);
45
46/* V2._sprintw.c */
47int _sprintw(WINDOW *win, char *fmt, ...);
48
49/* V2.makenew.c */
50WINDOW *makenew(int num_lines, int num_cols, int begy, int begx);
51
52/* V3.m_addch.c */
53int m_addch(int c);
54
55/* V3.m_addstr.c */
56int m_addstr(char *str);
57
58/* V3.m_clear.c */
59int m_clear(void);
60
61/* V3.m_erase.c */
62int m_erase(void);
63
64/* V3.m_initscr.c */
65WINDOW *m_initscr(void);
66
67/* V3.m_move.c */
68int m_move(int x, int y);
69
70/* V3.m_newterm.c */
71SCREEN *m_newterm(char *type, FILE *outfptr, FILE *infptr);
72
73/* V3.m_refresh.c */
74int m_refresh(void);
75
76/* V3.upd_old_y.c */
77void _update_old_y_area(WINDOW *win, int nlines, int ncols, int start_line,
78				int start_col);
79
80/* _addch.c */
81int addch(chtype ch);
82
83/* _addchnstr.c */
84int addchnstr(chtype *s, int n);
85
86/* _addchstr.c */
87int addchstr(chtype *s);
88
89/* _addnstr.c */
90int addnstr(char *s, int n);
91
92/* _addnwstr.c */
93int addnwstr(wchar_t *s, int n);
94
95/* _addstr.c */
96int addstr(char *s);
97
98/* _addwch.c */
99int addwch(chtype ch);
100
101/* _addwchnstr.c */
102int addwchnstr(chtype *str, int n);
103
104/* _addwchstr.c */
105int addwchstr(chtype *str);
106
107/* _addwstr.c */
108int addwstr(wchar_t *ws);
109
110/* _attroff.c */
111int attroff(chtype at);
112
113/* _attron.c */
114int attron(chtype at);
115
116/* _attrset.c */
117int attrset(chtype at);
118
119/* _beep.c */
120int beep(void);
121
122/* _bkgd.c */
123int bkgd(chtype c);
124
125/* _bkgdset.c */
126void bkgdset(chtype c);
127
128/* _border.c */
129int border(chtype ls, chtype rs, chtype ts, chtype bs, chtype tl, chtype tr,
130				chtype bl, chtype br);
131
132/* _clear.c */
133int clear(void);
134
135/* _clrtobot.c */
136int clrtobot(void);
137
138/* _clrtoeol.c */
139int clrtoeol(void);
140
141/* _crmode.c */
142#undef  crmode
143int crmode(void);
144
145/* _del_curterm.c */
146int del_curterm(TERMINAL *terminal);
147
148/* _delch.c */
149int delch(void);
150
151/* _deleteln.c */
152int deleteln(void);
153
154/* _echo.c */
155int echo(void);
156
157/* _echochar.c */
158int echochar(chtype ch);
159
160/* _echowchar.c */
161int echowchar(chtype ch);
162
163/* _erase.c */
164int erase(void);
165
166/* _fixterm.c */
167int fixterm(void);
168
169/* _flash.c */
170int flash(void);
171
172/* _garbagdlins.c */
173int garbagedlines(WINDOW  *win, int start, int finish);
174
175/* _garbagedwin.c */
176int garbagedwin(WINDOW  *win);
177
178/* _getch.c */
179int getch(void);
180
181/* _getnwstr.c */
182int getnwstr(wchar_t *ws, int n);
183
184/* _getstr.c */
185int getstr(char *str);
186
187/* _getwch.c */
188int getwch(void);
189
190/* _getwstr.c */
191int getwstr(wchar_t *ws);
192
193/* _halfdelay.c */
194int halfdelay(int tens);
195
196/* _hline.c */
197int hline(chtype horch, int num_chars);
198
199/* _inch.c */
200chtype inch(void);
201
202/* _inchnstr.c */
203int inchnstr(chtype *s, int n);
204
205/* _inchstr.c */
206int inchstr(chtype *s);
207
208/* _innstr.c */
209int innstr(char *s, int n);
210
211/* _innwstr.c */
212int innwstr(wchar_t *ws, int n);
213
214/* _insch.c */
215int insch(chtype c);
216
217/* _insdelln.c */
218int insdelln(int id);
219
220/* _insertln.c */
221int insertln(void);
222
223/* _insnstr.c */
224int insnstr(char *s, int n);
225
226/* _insnwstr.c */
227int insnwstr(wchar_t *ws, int n);
228
229/* _insstr.c */
230int insstr(char *s);
231
232/* _instr.c */
233int instr(char *s);
234
235/* _inswch.c */
236int inswch(chtype c);
237
238/* _inswstr.c */
239int inswstr(wchar_t *ws);
240
241/* _intrflush.c */
242int intrflush(WINDOW *win, int flag);
243
244/* _inwch.c */
245chtype inwch(void);
246
247/* _inwchnstr.c */
248int inwchnstr(chtype *str, int n);
249
250/* _inwchstr.c */
251int inwchstr(chtype *str);
252
253/* _inwstr.c */
254int inwstr(wchar_t *ws);
255
256/* _meta.c */
257int meta(WINDOW *win, int flag);
258
259/* _move.c */
260int move(int y, int x);
261
262/* _mvaddch.c */
263int mvaddch(int y, int x, chtype ch);
264
265/* _mvaddchnstr.c */
266int mvaddchnstr(int y, int x, chtype *s, int n);
267
268/* _mvaddchstr.c */
269int mvaddchstr(int y, int x, chtype *s);
270
271/* _mvaddnstr.c */
272int mvaddnstr(int y, int x, char *s, int n);
273
274/* _mvaddnwstr.c */
275int mvaddnwstr(int y, int x, wchar_t *ws, int n);
276
277/* _mvaddstr.c */
278int mvaddstr(int y, int x, char *str);
279
280/* _mvaddwch.c */
281int mvaddwch(int y, int x, chtype ch);
282
283/* _mvaddwchnstr.c */
284int mvaddwchnstr(int y, int x, chtype *str, int n);
285
286/* _mvaddwchstr.c */
287int mvaddwchstr(int y, int x, chtype *s);
288
289/* _mvaddwstr.c */
290int mvaddwstr(int y, int x, wchar_t *ws);
291
292/* _mvdelch.c */
293int mvdelch(int y, int x);
294
295/* _mvgetch.c */
296int mvgetch(int y, int x);
297
298/* _mvgetnwstr.c */
299int mvgetnwstr(int y, int x, wchar_t *ws, int n);
300
301/* _mvgetstr.c */
302int mvgetstr(int y, int x, char *str);
303
304/* _mvgetwch.c */
305int mvgetwch(int y, int x);
306
307/* _mvgetwstr.c */
308int mvgetwstr(int y, int x, wchar_t *ws);
309
310/* _mvhline.c */
311int mvhline(int y, int x, chtype ch, int n);
312
313/* _mvinch.c */
314chtype mvinch(int y, int x);
315
316/* _mvinchnstr.c */
317int mvinchnstr(int y, int x, chtype *str, int n);
318
319/* _mvinchstr.c */
320int mvinchstr(int y, int x, chtype *str);
321
322/* _mvinnstr.c */
323int mvinnstr(int y, int x, char *s, int n);
324
325/* _mvinnwstr.c */
326int mvinnwstr(int y, int x, wchar_t *ws, int n);
327
328/* _mvinsch.c */
329int mvinsch(int y, int x, chtype ch);
330
331/* _mvinsnstr.c */
332int mvinsnstr(int y, int x, char *s, int n);
333
334/* _mvinsnwstr.c */
335int mvinsnwstr(int y, int x, wchar_t *ws, int n);
336
337/* _mvinsstr.c */
338int mvinsstr(int y, int x, char *s);
339
340/* _mvinstr.c */
341int mvinstr(int y, int x, char *s);
342
343/* _mvinswch.c */
344int mvinswch(int y, int x, chtype ch);
345
346/* _mvinswstr.c */
347int mvinswstr(int y, int x, wchar_t *ws);
348
349/* _mvinwch.c */
350chtype mvinwch(int y, int x);
351
352/* _mvinwchnstr.c */
353int mvinwchnstr(int y, int x, chtype *str, int n);
354
355/* _mvinwchstr.c */
356int mvinwchstr(int y, int x, chtype *str);
357
358/* _mvinwstr.c */
359int mvinwstr(int y, int x, wchar_t *ws);
360
361/* _mvvline.c */
362int mvvline(int y, int x, chtype c, int n);
363
364/* _mvwaddch.c */
365int mvwaddch(WINDOW *win, int y, int x, chtype ch);
366
367/* _mvwaddchnst.c */
368int mvwaddchnstr(WINDOW *win, int y, int x, chtype *ch, int n);
369
370/* _mvwaddchstr.c */
371int mvwaddchstr(WINDOW *win, int y, int x, chtype *ch);
372
373/* _mvwaddnstr.c */
374int mvwaddnstr(WINDOW *win, int y, int x, char *c, int n);
375
376/* _mvwaddnwstr.c */
377int mvwaddnwstr(WINDOW *win, int y, int x, wchar_t *wc, int n);
378
379/* _mvwaddstr.c */
380int mvwaddstr(WINDOW *win, int y, int x, char *str);
381
382/* _mvwaddwch.c */
383int mvwaddwch(WINDOW *win, int y, int x, chtype ch);
384
385/* _mvwaddwchnstr.c */
386int mvwaddwchnstr(WINDOW *win, int y, int x, chtype *str, int n);
387
388/* _mvwaddwchstr.c */
389int mvwaddwchstr(WINDOW *win, int y, int x, chtype *str);
390
391/* _mvwaddwstr.c */
392int mvwaddwstr(WINDOW *win, int y, int x, wchar_t *wc);
393
394/* _mvwdelch.c */
395int mvwdelch(WINDOW *win, int y, int x);
396
397/* _mvwgetch.c */
398int mvwgetch(WINDOW *win, int y, int x);
399
400/* _mvwgetnwstr.c */
401int mvwgetnwstr(WINDOW *win, int y, int x, wchar_t *ws, int n);
402
403/* _mvwgetstr.c */
404int mvwgetstr(WINDOW *win, int y, int x, char *str);
405
406/* _mvwgetwch.c */
407int mvwgetwch(WINDOW *win, int y, int x);
408
409/* _mvwgetwstr.c */
410int mvwgetwstr(WINDOW *win, int y, int x, wchar_t *ws);
411
412/* _mvwhline.c */
413int mvwhline(WINDOW *win, int y, int x, chtype c, int n);
414
415/* _mvwinch.c */
416chtype mvwinch(WINDOW *win, int y, int x);
417
418/* _mvwinchnst.c */
419int mvwinchnstr(WINDOW *win, int y, int x, chtype *s, int n);
420
421/* _mvwinchstr.c */
422int mvwinchstr(WINDOW *win, int y, int x, chtype *str);
423
424/* _mvwinnstr.c */
425int mvwinnstr(WINDOW *win, int y, int x, char *str, int n);
426
427/* _mvwinnwstr.c */
428int mvwinnwstr(WINDOW *win, int y, int x, wchar_t *ws, int n);
429
430/* _mvwinsch.c */
431int mvwinsch(WINDOW *win, int y, int x, chtype c);
432
433/* _mvwinsnstr.c */
434int mvwinsnstr(WINDOW *win, int y, int x, char *str, int n);
435
436/* _mvwinsnwstr.c */
437int mvwinsnwstr(WINDOW *win, int y, int x, wchar_t *ws, int n);
438
439/* _mvwinsstr.c */
440int mvwinsstr(WINDOW *win, int y, int x, char *str);
441
442/* _mvwinstr.c */
443int mvwinstr(WINDOW *win, int y, int x, char *str);
444
445/* _mvwinswch.c */
446int mvwinswch(WINDOW *win, int y, int x, chtype c);
447
448/* _mvwinswstr.c */
449int mvwinswstr(WINDOW *win, int y, int x, wchar_t *ws);
450
451/* _mvwinwch.c */
452chtype mvwinwch(WINDOW *win, int y, int x);
453
454/* _mvwinwchnstr.c */
455int mvwinwchnstr(WINDOW *win, int y, int x, chtype *str, int n);
456
457/* _mvwinwchstr.c */
458int mvwinwchstr(WINDOW *win, int y, int x, chtype *str);
459
460/* _mvwinwstr.c */
461int mvwinwstr(WINDOW *win, int y, int x, wchar_t *ws);
462
463/* _mvwvline.c */
464int mvwvline(WINDOW *win, int y, int x, chtype c, int n);
465
466/* _nl.c */
467int nl(void);
468
469/* _nocrmode.c */
470#undef  nocrmode
471int nocrmode(void);
472
473/* _noecho.c */
474int noecho(void);
475
476/* _nonl.c */
477int nonl(void);
478
479/* _noqiflush.c */
480void noqiflush(void);
481
482/* _overlay.c */
483int overlay(WINDOW *src, WINDOW *dst);
484
485/* _overwrite.c */
486int overwrite(WINDOW *src, WINDOW *dst);
487
488/* _qiflush.c */
489void qiflush(void);
490
491/* _refresh.c */
492int refresh(void);
493
494/* _resetterm.c */
495int resetterm(void);
496
497/* _saveterm.c */
498int saveterm(void);
499
500/* _scr_init.c */
501int scr_init(char *file);
502
503/* _scr_restore.c */
504int scr_restore(char *file);
505
506/* _scr_set.c */
507int scr_set(char *file);
508
509/* _scrl.c */
510int scrl(int n);
511
512/* _scroll.c */
513int scroll(WINDOW *win);
514
515/* _set_curterm.c */
516TERMINAL *set_curterm(TERMINAL *newterminal);
517
518/* _set_term.c */
519SCREEN *set_term(SCREEN *screen);
520
521/* _setscrreg.c */
522int setscrreg(int t, int b);
523
524/* _slk_init.c */
525int slk_init(int f);
526
527/* _standend.c */
528int standend(void);
529
530/* _standout.c */
531int standout(void);
532
533/* _subpad.c */
534WINDOW *subpad(WINDOW *win, int l, int nc, int by, int bx);
535
536/* _timeout.c */
537void timeout(int tm);
538
539/* _touchline.c */
540int touchline(WINDOW *win, int y, int n);
541
542/* _unctrl.c */
543char *unctrl(int ch);
544
545/* _vline.c */
546int vline(chtype vertch, int num_chars);
547
548/* _waddchstr.c */
549int waddchstr(WINDOW *win, chtype *str);
550
551/* _waddstr.c */
552int waddstr(WINDOW *win, char *str);
553
554/* _waddwchstr.c */
555int waddwchstr(WINDOW *win, chtype *str);
556
557/* _waddwstr.c */
558int waddwstr(WINDOW *win, wchar_t *ws);
559
560/* _wclear.c */
561int wclear(WINDOW *win);
562
563/* _wdeleteln.c */
564int wdeleteln(WINDOW *win);
565
566/* _werase.c */
567int werase(WINDOW *win);
568
569/* _winsertln.c */
570int winsertln(WINDOW *win);
571
572/* _winsstr.c */
573int winsstr(WINDOW *win, char *str);
574
575/* _winswstr.c */
576int winswstr(WINDOW *win, wchar_t *ws);
577
578/* _winwchstr.c */
579int winwchstr(WINDOW *win, chtype *str);
580
581/* _wstandend.c */
582int wstandend(WINDOW *win);
583
584/* _wstandout.c */
585int wstandout(WINDOW *win);
586
587/* baudrate.c */
588int baudrate(void);
589
590/* can_change.c */
591bool can_change_color(void);
592
593/* cbreak.c */
594int cbreak(void);
595
596/* chkinput.c */
597int _chkinput(void);
598
599/* clearok.c */
600int clearok(WINDOW *win, bool bf);
601
602/* color_cont.c */
603int color_content(short color, short *r, short *g, short *b);
604
605/* copywin.c */
606int copywin(WINDOW *Srcwin, WINDOW *Dstwin, int minRowSrc, int minColSrc,
607			int minRowDst, int minColDst, int maxRowDst,
608			int maxColDst, int over_lay);
609
610/* curs_set.c */
611int curs_set(int visibility);
612
613/* curserr.c */
614void curserr(void);
615
616/* curses.c */
617
618/* def_prog.c */
619int def_prog_mode(void);
620
621/* delay.c */
622int _delay(int delay, int (*outc)(char));
623
624/* delay_out.c */
625int delay_output(int ms);
626
627/* delkey.c */
628int delkey(char *sends, int keyval);
629
630/* delkeymap.c */
631void delkeymap(TERMINAL *terminal);
632
633/* delscreen.c */
634void delscreen(SCREEN *screen);
635
636/* delterm.c */
637int delterm(TERMINAL *terminal);
638
639/* delwin.c */
640int delwin(WINDOW *win);
641
642/* derwin.c */
643WINDOW *derwin(WINDOW *win, int num_lines, int nc, int by, int bx);
644
645/* doupdate.c */
646int doupdate(void);
647
648/* draino.c */
649int draino(int ms);
650
651/* dupwin.c */
652WINDOW *dupwin(WINDOW *win);
653
654/* endwin.c */
655int isendwin(void);
656int endwin(void);
657int force_doupdate(void);
658
659/* erasechar.c */
660char erasechar(void);
661
662/* flushinp.c */
663int flushinp(void);
664
665/* getattrs.c */
666chtype getattrs(WINDOW *win);
667
668/* getbegyx.c */
669int getbegy(WINDOW *win);
670int getbegx(WINDOW *win);
671
672/* getbkgd.c */
673chtype getbkgd(WINDOW *win);
674
675/* getmaxyx.c */
676int getmaxy(WINDOW *win);
677int getmaxx(WINDOW *win);
678
679/* getparyx.c */
680int getpary(WINDOW *win);
681int getparx(WINDOW *win);
682
683/* getsyx.c */
684int _getsyx(int *yp, int *xp);
685
686/* gettmode.c */
687int gettmode(void);
688
689/* getwin.c */
690WINDOW *getwin(FILE *filep);
691
692/* getyx.c */
693int getcury(WINDOW *win);
694int getcurx(WINDOW *win);
695
696/* has_colors.c */
697bool has_colors(void);
698
699/* has_ic.c */
700int has_ic(void);
701
702/* has_il.c */
703int has_il(void);
704
705/* idcok.c */
706void idcok(WINDOW *win, bool bf);
707
708/* idlok.c */
709int idlok(WINDOW *win, bool bf);
710
711/* immedok.c */
712void immedok(WINDOW *win, bool bf);
713
714/* init_acs.c */
715int init_acs(void);
716
717/* init_color.c */
718int init_color(short color, short r, short g, short b);
719
720/* init_costs.c */
721void _init_costs(void);
722int _countchar(void);
723
724/* init_pair.c */
725int init_pair(short pair, short f, short b);
726void _init_HP_pair(short pair, short f, short b);
727
728/* is_wintou.c */
729int is_wintouched(WINDOW *win);
730
731/* is_linetou.c */
732int is_linetouched(WINDOW *win, int line);
733
734/* keyname.c */
735char *keyname(int key);
736
737/* keypad.c */
738int keypad(WINDOW *win, bool bf);
739
740/* killchar.c */
741char killchar(void);
742
743/* leaveok.c */
744int leaveok(WINDOW *win, bool bf);
745
746/* longname.c */
747char *longname(void);
748
749/* makenew.c */
750WINDOW *_makenew(int nlines, int ncols, int begy, int begx);
751
752/* mbaddch.c */
753int _mbclrch(WINDOW *win, int y, int x);
754int _mbvalid(WINDOW *win);
755int _mbaddch(WINDOW *win, chtype a, chtype b);
756
757/* mbcharlen.c */
758int mbcharlen(char *sp);
759
760/* mbdisplen.c */
761int mbdisplen(char *sp);
762
763/* mbgetwidth.c */
764void mbgetwidth(void);
765int mbeucw(int c);
766int mbscrw(int c);
767int wcscrw(wchar_t wc);
768
769/* mbinch.c */
770char *wmbinch(WINDOW *win, int y, int x);
771
772/* mbinsshift.c */
773int _mbinsshift(WINDOW *win, int len);
774
775/* mbmove.c */
776int wmbmove(WINDOW *win, int y, int x);
777
778/* mbstowcs.c */
779size_t _curs_mbstowcs(wchar_t *pwcs, const char *s, size_t n);
780
781/* mbtowc.c */
782int _curs_mbtowc(wchar_t *wchar, const char *s, size_t n);
783
784/* mbtranslate.c */
785char *_strcode2byte(wchar_t *code, char *b, int n);
786wchar_t *_strbyte2code(char *code, wchar_t *byte, int n);
787
788/* memSset.c */
789void memSset(chtype *s, chtype c, int n);
790
791/* meta.c */
792int _meta(int bf);
793
794/* mouse.c */
795int mouse_set(long mbe);
796int mouse_on(long mbe);
797int mouse_off(long mbe);
798int request_mouse_pos(void);
799void wmouse_position(WINDOW *win, int *x, int *y);
800int map_button(unsigned long a);
801unsigned long getmouse(void);
802unsigned long getbmap(void);
803
804/* mvcur.c */
805int mvcur(int cury, int curx, int newy, int newx);
806
807/* mvderwin.c */
808int mvderwin(WINDOW *win, int pary, int parx);
809
810/* mvprintw.c */
811int mvprintw(int y, int x, ...);
812
813/* mvscanw.c */
814int mvscanw(int y, int x, ...);
815
816/* mvwin.c */
817int mvwin(WINDOW *win, int by, int bx);
818
819/* mvwprintw.c */
820int mvwprintw(WINDOW *win, int y, int x, ...);
821
822/* mvwscanw.c */
823int mvwscanw(WINDOW *win, int y, int x, ...);
824
825/* napms.c */
826int napms(int ms);
827
828/* newkey.c */
829int newkey(char *rcvchars, short keyval, bool macro);
830
831/* newpad.c */
832WINDOW *newpad(int l, int nc);
833
834/* newscreen.c */
835int filter(void);
836SCREEN *newscreen(char *type, int lsize, int csize, int tabsize, FILE *outfptr,
837			FILE *infptr);
838
839/* newwin.c */
840WINDOW *newwin(int nlines, int ncols, int by, int bx);
841int _image(WINDOW *win);
842
843/* nocbreak.c */
844int nocbreak(void);
845
846/* nodelay.c */
847int nodelay(WINDOW *win, bool bf);
848
849/* noraw.c */
850int noraw(void);
851
852/* notimeout.c */
853int notimeout(WINDOW *win, bool bf);
854
855/* outch.c */
856int _outch(char c);
857int _outwch(chtype c);
858
859/* overlap.c */
860int _overlap(WINDOW *Srcwin, WINDOW *Dstwin, int Overlay);
861
862/* pair_cont.c */
863int pair_content(short pair, short *f, short *b);
864
865/* pechowchar.c */
866int pechowchar(WINDOW *pad, chtype ch);
867
868/* pnoutref.c */
869int pnoutrefresh(WINDOW *pad, int pby, int pbx, int sby, int sbx,
870				int sey, int sex);
871
872/* prefresh.c */
873int prefresh(WINDOW *pad, int pminy, int pminx, int sminy, int sminx,
874				int smaxy, int smaxx);
875int _prefresh(int (*func)(WINDOW *), WINDOW *pad, int pminy, int pminx,
876			int sminy, int sminx, int smaxy, int smaxx);
877int _padjust(WINDOW *pad, int pminy, int pminx, int sminy, int sminx,
878				int smaxy, int smaxx);
879
880/* printw.c */
881int printw(char *fmt, ...);
882
883/* putwin.c */
884int putwin(WINDOW *win, FILE *filep);
885
886/* quick_echo.c */
887int _quick_echo(WINDOW *win, chtype ch);
888
889/* raw.c */
890int raw(void);
891
892/* redrawwin.c */
893int redrawwin(WINDOW *win);
894
895/* reset_sh.c */
896int reset_shell_mode(void);
897
898/* resetty.c */
899int resetty(void);
900
901/* restart.c */
902int restartterm(char * term, int filenum, int *errret);
903
904/* ring.c */
905int _ring(bool bf);
906
907/* ripoffline.c */
908int ripoffline(int line, int (*init)(WINDOW *, int));
909
910/* savetty.c */
911int savetty(void);
912
913/* scanw.c */
914int scanw(char *fmt, ...);
915
916/* scr_all.c */
917int _scr_all(char *file, int which);
918
919/* scr_dump.c */
920int scr_dump(char *file);
921
922/* scr_ll_dump.c */
923int scr_ll_dump(FILE *filep);
924
925/* scr_reset.c */
926int scr_reset(FILE *filep, int type);
927
928/* scrollok.c */
929int scrollok(WINDOW *win, bool bf);
930
931/* setcurscreen.c */
932SCREEN *setcurscreen(SCREEN *new);
933
934/* setcurterm.c */
935TERMINAL *setcurterm(TERMINAL *newterminal);
936
937/* setecho.c */
938int _setecho(int bf);
939
940/* setkeymap.c */
941int setkeymap(void);
942
943/* setnonl.c */
944int _setnonl(int bf);
945
946/* setqiflush.c */
947void _setqiflush(int yes);
948
949/* setsyx.c */
950int setsyx(int y, int x);
951
952/* setupterm.c */
953int setupterm(char *term, int filenum, int *errret);
954void _blast_keys(TERMINAL *terminal);
955int reset_prog_mode(void);
956int def_shell_mode(void);
957
958/* slk_atroff.c */
959int slk_attroff(chtype a);
960
961/* slk_atron.c */
962int slk_attron(chtype a);
963
964/* slk_atrset.c */
965int slk_attrset(chtype a);
966
967/* slk_clear.c */
968int slk_clear(void);
969
970/* slk_label.c */
971char *slk_label(int n);
972
973/* slk_noutref.c */
974int slk_noutrefresh(void);
975
976/* slk_refresh.c */
977int slk_refresh(void);
978int _slk_update(void);
979
980/* slk_restore.c */
981int slk_restore(void);
982
983/* slk_set.c */
984int slk_set(int n, char *lab, int f);
985
986/* slk_start.c */
987int slk_start(int ng, int *gp);
988
989/* slk_touch.c */
990int slk_touch(void);
991
992/* start_col.c */
993int start_color(void);
994
995/* subwin.c */
996WINDOW *subwin(WINDOW *win, int l, int nc, int by, int bx);
997
998/* syncok.c */
999int syncok(WINDOW *win, bool bf);
1000
1001/* tcsearch.c */
1002int _tcsearch(char *cap, short offsets[], char *names[], int size, int n);
1003
1004/* termattrs.c */
1005chtype termattrs(void);
1006
1007/* termcap.c */
1008int tgetent(char *bp, char *name);
1009int tgetflag(char *tcstr);
1010int tgetnum(char *tcstr);
1011char *tgetstr(char *tcstr, char **area);
1012
1013/* termerr.c */
1014void termerr(void);
1015
1016/* termname.c */
1017char *termname(void);
1018
1019/* tgetch.c */
1020int tgetch(int interpret);
1021
1022/* tgetwch.c */
1023wchar_t tgetwch(int cntl);
1024
1025/* tgoto.c */
1026char *tgoto(char *cap, int col, int row);
1027
1028/* tifget.c */
1029int tifgetflag(char *tistr);
1030int tifgetnum(char *tistr);
1031char *tifgetstr(char *tistr);
1032
1033/* tifnames.c */
1034
1035/* tiget.c */
1036int tigetflag(char *tistr);
1037int tigetnum(char *tistr);
1038char *tigetstr(char *tistr);
1039
1040/* tinames.c */
1041
1042/* tinputfd.c */
1043void tinputfd(int fd);
1044
1045/* tnames.c */
1046
1047/* touchwin.c */
1048int touchwin(WINDOW *win);
1049
1050/* tparm.c */
1051char *tparm(char *instring, long fp1, long fp2, long p3, long p4, long p5,
1052					long p6, long p7, long p8, long p9);
1053char *_branchto(char *cp, char to);
1054
1055/* tputs.c */
1056int tputs(char *cp, int affcnt, int (*outc)(char));
1057
1058/* trace.c */
1059int traceon(void);
1060int traceoff(void);
1061
1062/* tstp.c */
1063void _tstp(int dummy);
1064void _ccleanup(int signo);
1065
1066/* ttimeout.c */
1067int ttimeout(int delay);
1068
1069/* typeahead.c */
1070int typeahead(int fd);
1071
1072/* unctrl.c */
1073
1074/* ungetch.c */
1075int ungetch(int ch);
1076
1077/* ungetwch.c */
1078int ungetwch(wchar_t code);
1079
1080/* untouchwin.c */
1081int untouchwin(WINDOW *win);
1082
1083/* use_env.c */
1084void use_env(int bf);
1085
1086/* vidupdate.c */
1087void vidupdate(chtype newmode, chtype oldmode, int (*outc)(char));
1088int _change_video(chtype newmode, chtype oldmode, int (*outc)(char),
1089					bool color_terminal);
1090void _change_color(short newcolor, short oldcolor, int (*outc)(char));
1091
1092/* vsscanf.c */
1093int _vsscanf(char *buf, char *fmt, va_list ap);
1094
1095/* vwprintw.c */
1096int vwprintw(WINDOW *win, char *fmt, va_list ap);
1097
1098/* vwscanw.c */
1099int vwscanw(WINDOW *win, char *fmt, va_list ap);
1100
1101/* waddchnstr.c */
1102int waddchnstr(WINDOW *win, chtype *string, int ncols);
1103
1104/* waddnstr.c */
1105int waddnstr(WINDOW *win, char *tstr, int i);
1106
1107/* waddnwstr.c */
1108int waddnwstr(WINDOW *win, wchar_t *code, int n);
1109
1110/* waddwch.c */
1111int waddwch(WINDOW *win, chtype c);
1112
1113/* waddwchnstr.c */
1114int waddwchnstr(WINDOW *win, chtype *string, int ncols);
1115
1116/* wadjcurspos.c */
1117int wadjcurspos(WINDOW *win);
1118
1119/* wbkgd.c */
1120int wbkgd(WINDOW *win, chtype nbkgd);
1121
1122/* wbkgdset.c */
1123void wbkgdset(WINDOW *win, chtype c);
1124
1125/* wborder.c */
1126int wborder(WINDOW *win, chtype ls, chtype rs, chtype ts, chtype bs,
1127				chtype tl, chtype tr, chtype bl, chtype br);
1128
1129/* wclrtobot.c */
1130int wclrtobot(WINDOW *win);
1131
1132/* wclrtoeol.c */
1133int wclrtoeol(WINDOW *win);
1134
1135/* wcstombs.c */
1136size_t _curs_wcstombs(char *s, const wchar_t *pwcs, size_t n);
1137
1138/* wctomb.c */
1139int _curs_wctomb(char *s, const wchar_t wchar);
1140
1141/* wdelch.c */
1142int wdelch(WINDOW *win);
1143
1144/* wechowchar.c */
1145int wechowchar(WINDOW *win, chtype ch);
1146
1147/* wgetch.c */
1148int wgetch(WINDOW *win);
1149
1150/* wgetstr.c */
1151int wgetstr(WINDOW *win, char *str);
1152int wgetnstr(WINDOW *win, char *str, int n);
1153
1154/* wgetwch.c */
1155int wgetwch(WINDOW *win);
1156
1157/* wgetwstr.c */
1158int wgetwstr(WINDOW *win, wchar_t *str);
1159int wgetnwstr(WINDOW *win, wchar_t *str, int n);
1160
1161/* whline.c */
1162int whline(WINDOW *win, chtype ch, int num_chars);
1163
1164/* winch.c */
1165chtype winch(WINDOW *win);
1166
1167/* winchnstr.c */
1168int winchnstr(WINDOW *win, chtype *string, int ncols);
1169
1170/* winchstr.c */
1171int winchstr(WINDOW *win, chtype *string);
1172
1173/* winnstr.c */
1174int winnstr(WINDOW *win, char *string, int ncols);
1175
1176/* winnwstr.c */
1177int winnwstr(WINDOW *win, wchar_t *wstr, int ncols);
1178
1179/* winsch.c */
1180int winsch(WINDOW *win, chtype c);
1181
1182/* winsdelln.c */
1183int winsdelln(WINDOW *win, int id);
1184
1185/* winsnstr.c */
1186int winsnstr(WINDOW *win, char *tsp, int n);
1187
1188/* winsnwstr.c */
1189int winsnwstr(WINDOW *win, wchar_t *code, int n);
1190
1191/* winstr.c */
1192int winstr(WINDOW *win, char *str);
1193
1194/* winswch.c */
1195int winswch(WINDOW *win, chtype c);
1196
1197/* winwch.c */
1198chtype winwch(WINDOW *win);
1199
1200/* winwchnstr.c */
1201int winwchnstr(WINDOW *win, chtype *string, int ncols);
1202
1203/* winwstr.c */
1204int winwstr(WINDOW *win, wchar_t *wstr);
1205
1206/* wmove.c */
1207int wmove(WINDOW *win, int y, int x);
1208
1209/* wmovenextch.c */
1210int wmovenextch(WINDOW *win);
1211
1212/* wmoveprevch.c */
1213int wmoveprevch(WINDOW *win);
1214
1215/* wnoutrefresh.c */
1216int wnoutrefresh(WINDOW *win);
1217
1218/* wprintw.c */
1219int wprintw(WINDOW *win, ...);
1220
1221/* wredrawln.c */
1222int wredrawln(WINDOW *win, int begline, int numlines);
1223
1224/* wrefresh.c */
1225int wrefresh(WINDOW *win);
1226
1227/* wscanw.c */
1228int wscanw(WINDOW *win, ...);
1229
1230/* wscrl.c */
1231int wscrl(WINDOW *win, int n);
1232
1233/* wsetscrreg.c */
1234int wsetscrreg(WINDOW *win, int topy, int boty);
1235
1236/* wsyncdown.c */
1237void wsyncdown(WINDOW *win);
1238
1239/* wsyncup.c */
1240void wsyncup(WINDOW *win);
1241void wcursyncup(WINDOW *win);
1242
1243/* wtimeout.c */
1244void wtimeout(WINDOW *win, int tm);
1245
1246/* wtouchln.c */
1247int wtouchln(WINDOW *win, int y, int n, int changed);
1248
1249/* wvline.c */
1250int wvline(WINDOW *win, chtype vertch, int num_chars);
1251
1252/* _box.c */
1253/* really box32 */
1254int box(WINDOW *win, chtype v, chtype h);
1255
1256/* V3.box.c */
1257#undef box
1258int box(WINDOW *win, _ochtype v, _ochtype h);
1259
1260/* _newterm.c */
1261/* really newterm32 */
1262SCREEN *newterm(char *type, FILE *fout, FILE *fin);
1263
1264/* V3.newterm.c */
1265#undef newterm
1266SCREEN *newterm(char *type, FILE *outfptr, FILE *infptr);
1267
1268/* setterm.c */
1269#undef  setterm
1270int setterm(char *name);
1271
1272/* pechochar.c */
1273/* really p32echochar */
1274int pechochar(WINDOW *win, chtype c);
1275
1276/* V3.pechochar.c */
1277#undef pechochar
1278int pechochar(WINDOW *win, _ochtype c);
1279
1280/* waddch.c */
1281/* really w32addch */
1282int waddch(WINDOW *win, chtype c);
1283
1284/* V3.waddch.c */
1285#undef waddch
1286int waddch(WINDOW *win, _ochtype c);
1287
1288/* wattroff.c */
1289/* really w32attroff */
1290int wattroff(WINDOW *win, chtype attrs);
1291
1292/* V3.wattroff.c */
1293#undef wattroff
1294int wattroff(WINDOW *win, _ochtype attrs);
1295
1296/* wattron.c */
1297/* really w32attron */
1298int wattron(WINDOW *win, chtype attrs);
1299
1300/* V3.wattron.c */
1301#undef wattron
1302int wattron(WINDOW *win, _ochtype attrs);
1303
1304/* wattrset.c */
1305/* really w32attrset */
1306int wattrset(WINDOW *win, chtype attrs);
1307
1308/* V3.wattrset.c */
1309#undef wattrset
1310int wattrset(WINDOW *win, _ochtype attrs);
1311
1312/* wechochar.c */
1313/* really w32echochar */
1314int wechochar(WINDOW *win, chtype c);
1315
1316/* V3.wechochar.c */
1317#undef wechochar
1318int wechochar(WINDOW *win, _ochtype c);
1319
1320/* winsch.c */
1321/* really w32insch */
1322int winsch(WINDOW *win,  chtype c);
1323
1324/* V3.winsch.c */
1325#undef winsch
1326int winsch(WINDOW *win, _ochtype c);
1327
1328/* putp.c */
1329int _outchar(char ch);
1330int putp(char *str);
1331/* really vid32attr */
1332int vidattr(chtype newmode);
1333
1334/* V3.vidattr.c */
1335#undef vidattr
1336int vidattr(_ochtype a);
1337
1338/* vidputs.c */
1339/* really vid32puts */
1340int vidputs(chtype a, int (*b)(char));
1341
1342/* V3.vidputs.c */
1343#undef vidputs
1344int vidputs(_ochtype a, int (*o)(char));
1345
1346/* initscr.c */
1347/* really initscr32 */
1348WINDOW *initscr(void);
1349
1350/* V3.initscr.c */
1351#undef initscr
1352WINDOW *initscr(void);
1353