#!/bin/sh # This is `vwcurses.04' (part 4 of a multipart archive). # Do not concatenate these parts, unpack them in order with `/bin/sh'. # File `vw_curses/curses/cr_put.c' is being continued... # touch -am 1231235999 $$.touch >/dev/null 2>&1 if test ! -f 1231235999 && test -f $$.touch; then shar_touch=touch else shar_touch=: echo echo 'WARNING: not restoring timestamps. Consider getting and' echo "installing GNU \`touch', distributed in GNU File Utilities..." echo fi rm -f 1231235999 $$.touch # if test ! -r _sharseq.tmp; then echo 'Please unpack part 1 first!' exit 1 fi shar_sequence=`cat _sharseq.tmp` if test "$shar_sequence" != 4; then echo "Please unpack part $shar_sequence next!" exit 1 fi if test ! -f _sharnew.tmp; then echo 'x - still skipping vw_curses/curses/cr_put.c' else echo 'x - continuing file vw_curses/curses/cr_put.c' sed 's/^X//' << 'SHAR_EOF' >> 'vw_curses/curses/cr_put.c' && /* X if (BT && outcol - destcol > k + 4) { X tputs(BT, 0, plodput); X outcol--; X outcol &= ~7; X continue; X } */ X outcol--; X if (BC) X tputs(BC, 0, plodput); X else X plodput('\b'); X } X while (outline > destline) { X outline--; X tputs(UP, 0, plodput); X if (plodcnt < 0) X goto out; X } X if (GT && destcol - outcol > 1) { X for (;;) { X i = tabcol(outcol, HARDTABS); X if (i > destcol) X break; X if (TA) X tputs(TA, 0, plodput); X else X plodput('\t'); X outcol = i; X } X if (destcol - outcol > 4 && i < COLS && (BC || BS)) { X if (TA) X tputs(TA, 0, plodput); X else X plodput('\t'); X outcol = i; X while (outcol > destcol) { X outcol--; X if (BC) X tputs(BC, 0, plodput); X else X plodput('\b'); X } X } X } X while (outcol < destcol) { X /* X * move one char to the right. We don't use ND space X * because it's better to just print the char we are X * moving over. X */ X if (_win != NULL) X if (plodflg) /* avoid a complex calculation */ X plodcnt--; X else { X i = curscr->_y[outline][outcol]; X if ((i&_STANDOUT) == (curscr->_flags&_STANDOUT)) X _putchar(i); X else X goto nondes; X } X else nondes: X if (ND) X tputs(ND, 0, plodput); X else X plodput(' '); X outcol++; X if (plodcnt < 0) X goto out; X } out: X if (plodflg) { X outcol = soutcol; X outline = soutline; X } X return(plodcnt); } X /* X * Return the column number that results from being in column col and X * hitting a tab, where tabs are set every ts columns. Work right for X * the case where col > COLS, even if ts does not divide COLS. X */ tabcol(col, ts) int col, ts; { X int offset, result; X X if (col >= COLS) { X offset = COLS * (col / COLS); X col -= offset; X } X else X offset = 0; X return col + ts - (col % ts) + offset; } SHAR_EOF echo 'File vw_curses/curses/cr_put.c is complete' && $shar_touch -am 0627091295 'vw_curses/curses/cr_put.c' && chmod 0644 'vw_curses/curses/cr_put.c' || echo 'restore of vw_curses/curses/cr_put.c failed' shar_count="`wc -c < 'vw_curses/curses/cr_put.c'`" test 8811 -eq "$shar_count" || echo "vw_curses/curses/cr_put.c: original size 8811, current size $shar_count" rm -f _sharnew.tmp fi # ============= vw_curses/curses/curses.h ============== if test -f 'vw_curses/curses/curses.h' && test X"$1" != X"-c"; then echo 'x - skipping vw_curses/curses/curses.h (file already exists)' rm -f _sharnew.tmp else > _sharnew.tmp echo 'x - extracting vw_curses/curses/curses.h (text)' sed 's/^X//' << 'SHAR_EOF' > 'vw_curses/curses/curses.h' && /* X * Copyright (c) 1981 Regents of the University of California. X * All rights reserved. X * X * Redistribution and use in source and binary forms are permitted X * provided that the above copyright notice and this paragraph are X * duplicated in all such forms and that any documentation, X * advertising materials, and other materials related to such X * distribution and use acknowledge that the software was developed X * by the University of California, Berkeley. The name of the X * University may not be used to endorse or promote products derived X * from this software without specific prior written permission. X * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR X * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED X * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. X * X * @(#)curses.h 5.4 (Berkeley) 6/30/88 X */ X # ifndef WINDOW X # include X #ifndef VxWorks # include #else # include # include #endif X # define bool char # define reg register X #ifdef TRUE # undef TRUE # undef FALSE #endif # define TRUE (1) # define FALSE (0) # define ERR (-1) # define CURSES_ERR ERR # define CURSES_OK OK X # define _ENDLINE 001 # define _FULLWIN 002 # define _SCROLLWIN 004 # define _FLUSH 010 # define _FULLLINE 020 # define _IDLINE 040 # define _STANDOUT 0200 # define _NOCHANGE -1 X # define _puts(s) tputs(s, 0, _putchar) X #ifndef VxWorks typedef struct sgttyb SGTTY; #endif X /* X * Capabilities from termcap X */ X extern bool AM, BS, CA, DA, DB, EO, HC, HZ, IN, MI, MS, NC, NS, OS, UL, X XB, XN, XT, XS, XX; extern char *AL, *BC, *BT, *CD, *CE, *CL, *CM, *CR, *CS, *DC, *DL, X *DM, *DO, *ED, *EI, *K0, *K1, *K2, *K3, *K4, *K5, *K6, X *K7, *K8, *K9, *HO, *IC, *IM, *IP, *KD, *KE, *KH, *KL, X *KR, *KS, *KU, *LL, *MA, *ND, *NL, *RC, *SC, *SE, *SF, X *SO, *SR, *TA, *TE, *TI, *UC, *UE, *UP, *US, *VB, *VS, X *VE, *AL_PARM, *DL_PARM, *UP_PARM, *DOWN_PARM, X *LEFT_PARM, *RIGHT_PARM; extern char PC; X /* X * From the tty modes... X */ X extern bool GT, NONL, UPPERCASE, normtty, _pfast; X struct _win_st { X short _cury, _curx; X short _maxy, _maxx; X short _begy, _begx; X short _flags; X short _ch_off; X bool _clear; X bool _leave; X bool _scroll; X char **_y; X short *_firstch; X short *_lastch; X struct _win_st *_nextp, *_orig; }; X # define WINDOW struct _win_st X extern bool My_term, _echoit, _rawmode, _endwin; X extern char *Def_term, ttytype[]; X extern int LINES, COLS, _tty_ch, _res_flg; X #ifndef VxWorks extern SGTTY _tty; #endif X extern WINDOW *stdscr, *curscr; X /* X * Define VOID to stop lint from generating "null effect" X * comments. X */ # ifdef lint int __void__; # define VOID(x) (__void__ = (int) (x)) # else # define VOID(x) (x) # endif X /* X * standard curses functions. X * X */ X #ifdef __STDC__ extern WINDOW * newwin(int lines, int cols, int sy, int sx); extern WINDOW * renewwin(int lines, int cols, int sy, int sx, WINDOW* win); extern WINDOW * subwin(WINDOW *w, int lines, int cols, int sy, int sx); extern WINDOW * initscr(); extern int box (WINDOW*, char, char); extern int delwin(WINDOW*); extern int redelwin(WINDOW*); extern int mvcur(int, int, int, int); extern int overlay(WINDOW*, WINDOW*); extern int overwrite(WINDOW*, WINDOW*); extern int scroll(WINDOW*); extern int touchline(WINDOW*, int, int, int); extern int hideline(WINDOW*, int, int, int); extern int touchoverlap(WINDOW*, WINDOW*); extern int hideoverlap(WINDOW*, WINDOW*); extern int touchwin(WINDOW*); extern int hidewin(WINDOW*); extern int waddbytes(WINDOW* win, const char* bytes, int count); extern int waddch(WINDOW*, char); extern int waddstr(WINDOW*, const char*); extern int wclear(WINDOW*); extern int wclrtobot(WINDOW*); extern int wclrtoeol(WINDOW*); extern int wdelch(WINDOW*); extern int wdeleteln(WINDOW*); extern int werase(WINDOW*); extern int wgetch(WINDOW*); extern int wgetstr(WINDOW*, char*); extern int winch(WINDOW*); extern int winsch(WINDOW*, char); extern int winsertln(WINDOW*); extern int wmove(WINDOW*, int, int); extern int wrefresh(WINDOW*); extern int wstandend(WINDOW*); extern int wstandout(WINDOW*); extern int printw(const char * fmt, ...); extern int wprintw(WINDOW*, const char * fmt, ...); extern int mvprintw(int y, int x, const char * fmt, ...); extern int mvwprintw(WINDOW*, int y, int x, const char * fmt, ...); extern int wscanw(WINDOW*, const char *, ...); extern int mvwscanw(int, int, WINDOW*, const char*, ...); extern int endwin(); X extern char *longname(char *, char *); extern char *getcap(char *); X #else WINDOW *initscr(), *newwin(), *renewwin(), *subwin(); char *longname(), *getcap(); X #endif __STDC__ X /* X * pseudo functions for standard screen X */ # define addch(ch) VOID(waddch(stdscr, ch)) # define getch() VOID(wgetch(stdscr)) # define addbytes(da,co) VOID(waddbytes(stdscr, da,co)) # define addstr(str) VOID(waddbytes(stdscr, str, strlen(str))) # define getstr(str) VOID(wgetstr(stdscr, str)) # define move(y, x) VOID(wmove(stdscr, y, x)) # define clear() VOID(wclear(stdscr)) # define erase() VOID(werase(stdscr)) # define clrtobot() VOID(wclrtobot(stdscr)) # define clrtoeol() VOID(wclrtoeol(stdscr)) # define insertln() VOID(winsertln(stdscr)) # define deleteln() VOID(wdeleteln(stdscr)) # define refresh() VOID(wrefresh(stdscr)) # define inch() VOID(winch(stdscr)) # define insch(c) VOID(winsch(stdscr,c)) # define delch() VOID(wdelch(stdscr)) # define standout() VOID(wstandout(stdscr)) # define standend() VOID(wstandend(stdscr)) X /* X * mv functions X * We should really lock between the wmove and the action. (***) X */ #define mvwaddch(win,y,x,ch) VOID(wmove(win,y,x)==ERR?ERR:waddch(win,ch)) #define mvwgetch(win,y,x) VOID(wmove(win,y,x)==ERR?ERR:wgetch(win)) #define mvwaddbytes(win,y,x,da,co) \ X VOID(wmove(win,y,x)==ERR?ERR:waddbytes(win,da,co)) #define mvwaddstr(win,y,x,str) \ X VOID(wmove(win,y,x)==ERR?ERR:waddbytes(win,str,strlen(str))) #define mvwgetstr(win,y,x,str) VOID(wmove(win,y,x)==ERR?ERR:wgetstr(win,str)) #define mvwinch(win,y,x) VOID(wmove(win,y,x) == ERR ? ERR : winch(win)) #define mvwdelch(win,y,x) VOID(wmove(win,y,x) == ERR ? ERR : wdelch(win)) #define mvwinsch(win,y,x,c) VOID(wmove(win,y,x) == ERR ? ERR:winsch(win,c)) #define mvaddch(y,x,ch) mvwaddch(stdscr,y,x,ch) #define mvgetch(y,x) mvwgetch(stdscr,y,x) #define mvaddbytes(y,x,da,co) mvwaddbytes(stdscr,y,x,da,co) #define mvaddstr(y,x,str) mvwaddstr(stdscr,y,x,str) #define mvgetstr(y,x,str) mvwgetstr(stdscr,y,x,str) #define mvinch(y,x) mvwinch(stdscr,y,x) #define mvdelch(y,x) mvwdelch(stdscr,y,x) #define mvinsch(y,x,c) mvwinsch(stdscr,y,x,c) X /* X * psuedo functions X */ X #define clearok(win,bf) (win==NULL ? ERR : (win->_clear = bf)) #define leaveok(win,bf) (win==NULL ? ERR : (win->_leave = bf)) #define scrollok(win,bf) (win==NULL ? ERR : (win->_scroll = bf)) #define flushok(win,bf) (win==NULL ? ERR : (bf ? (win->_flags |= _FLUSH):(win->_flags &= ~_FLUSH))) #define getyx(win,y,x) (win==NULL ? ERR : (y = win->_cury, x = win->_curx)) #define winch(win) (win==NULL ? ERR : (win->_y[win->_cury][win->_curx] & 0177)) X #ifndef VxWorks #define raw() (_tty.sg_flags|=RAW, _pfast=_rawmode=TRUE, stty(_tty_ch,&_tty)) #define noraw() (_tty.sg_flags&=~RAW,_rawmode=FALSE,_pfast=!(_tty.sg_flags&CRMOD),stty(_tty_ch,&_tty)) #define cbreak() (_tty.sg_flags |= CBREAK, _rawmode = TRUE, stty(_tty_ch,&_tty)) #define nocbreak() (_tty.sg_flags &= ~CBREAK,_rawmode=FALSE,stty(_tty_ch,&_tty)) #define crmode() cbreak() /* backwards compatability */ #define nocrmode() nocbreak() /* backwards compatability */ #define echo() (_tty.sg_flags |= ECHO, _echoit = TRUE, stty(_tty_ch, &_tty)) #define noecho() (_tty.sg_flags &= ~ECHO, _echoit = FALSE, stty(_tty_ch, &_tty)) #define nl() (_tty.sg_flags |= CRMOD,_pfast = _rawmode,stty(_tty_ch, &_tty)) #define nonl() (_tty.sg_flags &= ~CRMOD, _pfast = TRUE, stty(_tty_ch, &_tty)) #define savetty() ((void) gtty(_tty_ch, &_tty), _res_flg = _tty.sg_flags) #define resetty() (_tty.sg_flags = _res_flg, (void) stty(_tty_ch, &_tty)) X #define erasechar() (_tty.sg_erase) #define killchar() (_tty.sg_kill) #define baudrate() (_tty.sg_ospeed) X #else X #define raw() (cbreak()) #define noraw() (nocbreak()) #define cbreak() (_rawmode = TRUE,\ X ioctl(0,FIOSETOPTIONS,ioctl(0,FIOGETOPTIONS,0) & ~OPT_LINE) ) #define nocbreak() (_rawmode = FALSE,\ X ioctl(0,FIOSETOPTIONS,ioctl(0,FIOGETOPTIONS,0) | OPT_LINE) ) #define crmode() cbreak() /* backwards compatability */ #define nocrmode() nocbreak() /* backwards compatability */ #define echo() (_echoit = TRUE,\ X ioctl(0,FIOSETOPTIONS,ioctl(0,FIOGETOPTIONS,0) | OPT_ECHO) ) #define noecho() (_echoit = FALSE,\ X ioctl(0,FIOSETOPTIONS,ioctl(0,FIOGETOPTIONS,0) & ~OPT_ECHO) ) #define nl() (OK) #define nonl() ( \ X fprintf(stderr,"curses.h: nonl() not supported\n"); \ X exit(1); \ X ) #define savetty() (_res_flg = ioctl(0,FIOGETOPTIONS,0)) #define resetty() (ioctl(0,FIOSETOPTIONS,_res_flg)) X #define erasechar() ('') #define killchar() ( \ X fprintf(stderr,"curses.h: killchar() not supported\n"); \ X exit(1); \ X ) #define baudrate() (13) /* this is the termio/gtty code for 9600 baud, X used by tputs() in the termlib library */ #endif X /* X * Used to be in unctrl.h. X */ #define unctrl(c) _unctrl[(c) & 0177] extern char *_unctrl[]; # endif SHAR_EOF $shar_touch -am 0627094195 'vw_curses/curses/curses.h' && chmod 0644 'vw_curses/curses/curses.h' || echo 'restore of vw_curses/curses/curses.h failed' shar_count="`wc -c < 'vw_curses/curses/curses.h'`" test 9692 -eq "$shar_count" || echo "vw_curses/curses/curses.h: original size 9692, current size $shar_count" rm -f _sharnew.tmp fi # ============= vw_curses/h/curses.h ============== if test ! -d 'vw_curses/h'; then echo 'x - creating directory vw_curses/h' mkdir 'vw_curses/h' fi if test -f 'vw_curses/h/curses.h' && test X"$1" != X"-c"; then echo 'x - skipping vw_curses/h/curses.h (file already exists)' rm -f _sharnew.tmp else > _sharnew.tmp echo 'x - extracting vw_curses/h/curses.h (text)' sed 's/^X//' << 'SHAR_EOF' > 'vw_curses/h/curses.h' && /* X * Copyright (c) 1981 Regents of the University of California. X * All rights reserved. X * X * Redistribution and use in source and binary forms are permitted X * provided that the above copyright notice and this paragraph are X * duplicated in all such forms and that any documentation, X * advertising materials, and other materials related to such X * distribution and use acknowledge that the software was developed X * by the University of California, Berkeley. The name of the X * University may not be used to endorse or promote products derived X * from this software without specific prior written permission. X * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR X * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED X * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. X * X * @(#)curses.h 5.4 (Berkeley) 6/30/88 X */ X # ifndef WINDOW X # include X #ifndef VxWorks # include #else # include # include #endif X # define bool char # define reg register X #ifdef TRUE # undef TRUE # undef FALSE #endif # define TRUE (1) # define FALSE (0) # define ERR (-1) # define CURSES_ERR ERR # define CURSES_OK OK X # define _ENDLINE 001 # define _FULLWIN 002 # define _SCROLLWIN 004 # define _FLUSH 010 # define _FULLLINE 020 # define _IDLINE 040 # define _STANDOUT 0200 # define _NOCHANGE -1 X # define _puts(s) tputs(s, 0, _putchar) X #ifndef VxWorks typedef struct sgttyb SGTTY; #endif X /* X * Capabilities from termcap X */ X extern bool AM, BS, CA, DA, DB, EO, HC, HZ, IN, MI, MS, NC, NS, OS, UL, X XB, XN, XT, XS, XX; extern char *AL, *BC, *BT, *CD, *CE, *CL, *CM, *CR, *CS, *DC, *DL, X *DM, *DO, *ED, *EI, *K0, *K1, *K2, *K3, *K4, *K5, *K6, X *K7, *K8, *K9, *HO, *IC, *IM, *IP, *KD, *KE, *KH, *KL, X *KR, *KS, *KU, *LL, *MA, *ND, *NL, *RC, *SC, *SE, *SF, X *SO, *SR, *TA, *TE, *TI, *UC, *UE, *UP, *US, *VB, *VS, X *VE, *AL_PARM, *DL_PARM, *UP_PARM, *DOWN_PARM, X *LEFT_PARM, *RIGHT_PARM; extern char PC; X /* X * From the tty modes... X */ X extern bool GT, NONL, UPPERCASE, normtty, _pfast; X struct _win_st { X short _cury, _curx; X short _maxy, _maxx; X short _begy, _begx; X short _flags; X short _ch_off; X bool _clear; X bool _leave; X bool _scroll; X char **_y; X short *_firstch; X short *_lastch; X struct _win_st *_nextp, *_orig; }; X # define WINDOW struct _win_st X extern bool My_term, _echoit, _rawmode, _endwin; X extern char *Def_term, ttytype[]; X extern int LINES, COLS, _tty_ch, _res_flg; X #ifndef VxWorks extern SGTTY _tty; #endif X extern WINDOW *stdscr, *curscr; X /* X * Define VOID to stop lint from generating "null effect" X * comments. X */ # ifdef lint int __void__; # define VOID(x) (__void__ = (int) (x)) # else # define VOID(x) (x) # endif X /* X * standard curses functions. X * X */ X #ifdef __STDC__ extern WINDOW * newwin(int lines, int cols, int sy, int sx); extern WINDOW * renewwin(int lines, int cols, int sy, int sx, WINDOW* win); extern WINDOW * subwin(WINDOW *w, int lines, int cols, int sy, int sx); extern WINDOW * initscr(); extern int box (WINDOW*, char, char); extern int delwin(WINDOW*); extern int redelwin(WINDOW*); extern int mvcur(int, int, int, int); extern int overlay(WINDOW*, WINDOW*); extern int overwrite(WINDOW*, WINDOW*); extern int scroll(WINDOW*); extern int touchline(WINDOW*, int, int, int); extern int hideline(WINDOW*, int, int, int); extern int touchoverlap(WINDOW*, WINDOW*); extern int hideoverlap(WINDOW*, WINDOW*); extern int touchwin(WINDOW*); extern int hidewin(WINDOW*); extern int waddbytes(WINDOW* win, const char* bytes, int count); extern int waddch(WINDOW*, char); extern int waddstr(WINDOW*, const char*); extern int wclear(WINDOW*); extern int wclrtobot(WINDOW*); extern int wclrtoeol(WINDOW*); extern int wdelch(WINDOW*); extern int wdeleteln(WINDOW*); extern int werase(WINDOW*); extern int wgetch(WINDOW*); extern int wgetstr(WINDOW*, char*); extern int winch(WINDOW*); extern int winsch(WINDOW*, char); extern int winsertln(WINDOW*); extern int wmove(WINDOW*, int, int); extern int wrefresh(WINDOW*); extern int wstandend(WINDOW*); extern int wstandout(WINDOW*); extern int printw(const char * fmt, ...); extern int wprintw(WINDOW*, const char * fmt, ...); extern int mvprintw(int y, int x, const char * fmt, ...); extern int mvwprintw(WINDOW*, int y, int x, const char * fmt, ...); extern int wscanw(WINDOW*, const char *, ...); extern int mvwscanw(int, int, WINDOW*, const char*, ...); extern int endwin(); X extern char *longname(char *, char *); extern char *getcap(char *); X #else WINDOW *initscr(), *newwin(), *renewwin(), *subwin(); char *longname(), *getcap(); X #endif __STDC__ X /* X * pseudo functions for standard screen X */ # define addch(ch) VOID(waddch(stdscr, ch)) # define getch() VOID(wgetch(stdscr)) # define addbytes(da,co) VOID(waddbytes(stdscr, da,co)) # define addstr(str) VOID(waddbytes(stdscr, str, strlen(str))) # define getstr(str) VOID(wgetstr(stdscr, str)) # define move(y, x) VOID(wmove(stdscr, y, x)) # define clear() VOID(wclear(stdscr)) # define erase() VOID(werase(stdscr)) # define clrtobot() VOID(wclrtobot(stdscr)) # define clrtoeol() VOID(wclrtoeol(stdscr)) # define insertln() VOID(winsertln(stdscr)) # define deleteln() VOID(wdeleteln(stdscr)) # define refresh() VOID(wrefresh(stdscr)) # define inch() VOID(winch(stdscr)) # define insch(c) VOID(winsch(stdscr,c)) # define delch() VOID(wdelch(stdscr)) # define standout() VOID(wstandout(stdscr)) # define standend() VOID(wstandend(stdscr)) X /* X * mv functions X * We should really lock between the wmove and the action. (***) X */ #define mvwaddch(win,y,x,ch) VOID(wmove(win,y,x)==ERR?ERR:waddch(win,ch)) #define mvwgetch(win,y,x) VOID(wmove(win,y,x)==ERR?ERR:wgetch(win)) #define mvwaddbytes(win,y,x,da,co) \ X VOID(wmove(win,y,x)==ERR?ERR:waddbytes(win,da,co)) #define mvwaddstr(win,y,x,str) \ X VOID(wmove(win,y,x)==ERR?ERR:waddbytes(win,str,strlen(str))) #define mvwgetstr(win,y,x,str) VOID(wmove(win,y,x)==ERR?ERR:wgetstr(win,str)) #define mvwinch(win,y,x) VOID(wmove(win,y,x) == ERR ? ERR : winch(win)) #define mvwdelch(win,y,x) VOID(wmove(win,y,x) == ERR ? ERR : wdelch(win)) #define mvwinsch(win,y,x,c) VOID(wmove(win,y,x) == ERR ? ERR:winsch(win,c)) #define mvaddch(y,x,ch) mvwaddch(stdscr,y,x,ch) #define mvgetch(y,x) mvwgetch(stdscr,y,x) #define mvaddbytes(y,x,da,co) mvwaddbytes(stdscr,y,x,da,co) #define mvaddstr(y,x,str) mvwaddstr(stdscr,y,x,str) #define mvgetstr(y,x,str) mvwgetstr(stdscr,y,x,str) #define mvinch(y,x) mvwinch(stdscr,y,x) #define mvdelch(y,x) mvwdelch(stdscr,y,x) #define mvinsch(y,x,c) mvwinsch(stdscr,y,x,c) X /* X * psuedo functions X */ X #define clearok(win,bf) (win==NULL ? ERR : (win->_clear = bf)) #define leaveok(win,bf) (win==NULL ? ERR : (win->_leave = bf)) #define scrollok(win,bf) (win==NULL ? ERR : (win->_scroll = bf)) #define flushok(win,bf) (win==NULL ? ERR : (bf ? (win->_flags |= _FLUSH):(win->_flags &= ~_FLUSH))) #define getyx(win,y,x) (win==NULL ? ERR : (y = win->_cury, x = win->_curx)) #define winch(win) (win==NULL ? ERR : (win->_y[win->_cury][win->_curx] & 0177)) X #ifndef VxWorks #define raw() (_tty.sg_flags|=RAW, _pfast=_rawmode=TRUE, stty(_tty_ch,&_tty)) #define noraw() (_tty.sg_flags&=~RAW,_rawmode=FALSE,_pfast=!(_tty.sg_flags&CRMOD),stty(_tty_ch,&_tty)) #define cbreak() (_tty.sg_flags |= CBREAK, _rawmode = TRUE, stty(_tty_ch,&_tty)) #define nocbreak() (_tty.sg_flags &= ~CBREAK,_rawmode=FALSE,stty(_tty_ch,&_tty)) #define crmode() cbreak() /* backwards compatability */ #define nocrmode() nocbreak() /* backwards compatability */ #define echo() (_tty.sg_flags |= ECHO, _echoit = TRUE, stty(_tty_ch, &_tty)) #define noecho() (_tty.sg_flags &= ~ECHO, _echoit = FALSE, stty(_tty_ch, &_tty)) #define nl() (_tty.sg_flags |= CRMOD,_pfast = _rawmode,stty(_tty_ch, &_tty)) #define nonl() (_tty.sg_flags &= ~CRMOD, _pfast = TRUE, stty(_tty_ch, &_tty)) #define savetty() ((void) gtty(_tty_ch, &_tty), _res_flg = _tty.sg_flags) #define resetty() (_tty.sg_flags = _res_flg, (void) stty(_tty_ch, &_tty)) X #define erasechar() (_tty.sg_erase) #define killchar() (_tty.sg_kill) #define baudrate() (_tty.sg_ospeed) X #else X #define raw() (cbreak()) #define noraw() (nocbreak()) #define cbreak() (_rawmode = TRUE,\ X ioctl(0,FIOSETOPTIONS,ioctl(0,FIOGETOPTIONS,0) & ~OPT_LINE) ) #define nocbreak() (_rawmode = FALSE,\ X ioctl(0,FIOSETOPTIONS,ioctl(0,FIOGETOPTIONS,0) | OPT_LINE) ) #define crmode() cbreak() /* backwards compatability */ #define nocrmode() nocbreak() /* backwards compatability */ #define echo() (_echoit = TRUE,\ X ioctl(0,FIOSETOPTIONS,ioctl(0,FIOGETOPTIONS,0) | OPT_ECHO) ) #define noecho() (_echoit = FALSE,\ X ioctl(0,FIOSETOPTIONS,ioctl(0,FIOGETOPTIONS,0) & ~OPT_ECHO) ) #define nl() (OK) #define nonl() ( \ X fprintf(stderr,"curses.h: nonl() not supported\n"); \ X exit(1); \ X ) #define savetty() (_res_flg = ioctl(0,FIOGETOPTIONS,0)) #define resetty() (ioctl(0,FIOSETOPTIONS,_res_flg)) X #define erasechar() ('') #define killchar() ( \ X fprintf(stderr,"curses.h: killchar() not supported\n"); \ X exit(1); \ X ) #define baudrate() (13) /* this is the termio/gtty code for 9600 baud, X used by tputs() in the termlib library */ #endif X /* X * Used to be in unctrl.h. X */ #define unctrl(c) _unctrl[(c) & 0177] extern char *_unctrl[]; # endif SHAR_EOF $shar_touch -am 0627094195 'vw_curses/h/curses.h' && chmod 0644 'vw_curses/h/curses.h' || echo 'restore of vw_curses/h/curses.h failed' shar_count="`wc -c < 'vw_curses/h/curses.h'`" test 9692 -eq "$shar_count" || echo "vw_curses/h/curses.h: original size 9692, current size $shar_count" rm -f _sharnew.tmp fi # ============= vw_curses/lib/libcurses.a ============== if test ! -d 'vw_curses/lib'; then echo 'x - creating directory vw_curses/lib' mkdir 'vw_curses/lib' fi if test -f 'vw_curses/lib/libcurses.a' && test X"$1" != X"-c"; then echo 'x - skipping vw_curses/lib/libcurses.a (file already exists)' rm -f _sharnew.tmp else > _sharnew.tmp echo 'x - extracting vw_curses/lib/libcurses.a (binary)' sed 's/^X//' << 'SHAR_EOF' > _sharuue.tmp && begin 600 vw_curses/lib/libcurses.a M(3QA````',``"5X````?0``)7@```"&```E>````(\``"5X````G0``)7@` M``"G```E>````+```"5X````N```)7@```#````E>````,0``"5X````R``` M)7@```#,```E>````-```"5X````U```)7@```#8```E>````-P``"5X```` MX```)7@```#D```E>````.@``"5X````[```)7@```#P```E>````/0``"5X M````^```)7@```#\```E>````0```"5X```!!```)7@```$(```E>````0P` M`"5X```!$```)7@```$4```E>````1@``"5X```!'```)7@```$@```E>``` M`20``"5X```!*```)7@```$L```E>````3```"5X```!-```)7@```$X```E M>````3P``"5X```!0```)7@```%$```E>````4@``"5X```!3```)7@```%0 M```E>````50``"5X```!6```)7@```%<```E>````6```"5X```!9```)7@` M``%H```E>````6P``"5X```!<```)7@```%T```E>````7@``"5X```!?``` M)7@```&````E>````80``"5X```!B```)7@```&,```E>````9```"5X```! ME```)7@```&8```E>````9P``"5X```!H```)7@```&D```E>````:@``"5X M```!K```)7@```&P```E>````;0``"5X```!N```)7@```&\```E>````<`` M`"5X```!Q```)7@```'(```E>``````` M`=@``"5X```!W```)7@```'@```E>````>0``"5X```!Z```)7@```'L```E M>````?```"5X```!^0``)7@```("```E>````@L``"5X```"%@``)7@```(A M```E>````BT``"5X```",0``)7@```(U```E>````CL``"5X```"1@``)7@` M``)/```E>````E<``"5X```"8```)7@```)G```E>````FT``"5X```"=P`` M+3(```)_```NI@```HH``##4```"D@``,-0```*<```S!````J0``#5^```" MK```-QH```*V```X"````KX``#P(```"QP``/08```+.```]O@```ML``#[, M```"XP``0/H```+N``!#,````O@``$06```"_P``14H```,)``!%2@```Q0` M`$?&```#'0``1\8```,G``!)_@```RX``$Q:```#-P``3M@```-"``!1&@`` M`TH``%$:```#4P``4IH```-=``!4L````V,``%2P```#;0``8?````-U``!A M\````W\``&'P```#B```8?````.1``!A\````Y8``&'P```#G@``<]8```.G M``!X)````Z\``'@D```#N0``>"0```/!``!X)````\\``'@D```#V@``?E0` M``/A``!^5````^H``'Y4```#\@``@$(```/Z``""+```!`@``(0"```$$@`` MA`(```0=``"%Z```!",``(:&```$+```CD0```0\``".1```!%```(Y$```$ M6@``CD0```1D``"0*@``!&\``)`J```$>E]W861D8GET97,`7W=A9&1C:`!? M=V%D9'-T<@!?8F]X`%]W8VQE87(`7W=C;')T;V)O=`!?=V-LF%P`%]G M971C87``7VEN:71S8W(`7VYE=W=I;@!?`BX@F<``1Q@3G@*N()G``#R>`VX@F<``1!@ M/#94-&P``B`*;`)>@'CXP(0H"IB`(`1X")B`+P1(>0```;(O#&&"4$]83WC_ MN(!G``"L.(LY2@`"8```U$HL``UL!`!"`(`@;``4('"\`!`RB`!)P+2`9S8P M;``.(`K0B")L`!@R,;H`#$'__V8*(&P`'#&`N@!@$C!!L4TM* M+``29Q@XBSE*``(O#&'____^YC94-&P``EA/8#XP;``&.(M32#E(``)A____ M_LIP_V!".(LY2@`"+PQA_____K@V5#1L``)83THY`````&:B8)Y32DJ*;`*5 MRE'+_LA"0U.#9`#^P#B+.4H``F'____^AD*`3.X\'/_D3EY.=0``0"@C*6%D M9&)Y=&5S+F,)-2XS("A"97)K96QE>2D@-B\S,"\X.``@("`@("`@(``````` M=@``!D````%6```%4````!8```'0```!&@```M````$V```#T````4@```30 M```!>@```]`````$!0`````````````/`0`````````````9`0`````````` M```A`0`````````````K`0`````````````V`0`````````````\7W=A9&1B M>71E``!2&[__R\N``AA_____^A.7DYU0"@C*6%D M9&-H+F,)-2XT("A"97)K96QE>2D@-B\S,"\X.```````&````=`````$!0`` M```````````,`0`````````````77W=A9&1C:`!?=V%D9&)Y=&5S``IA9&1S M='(N;R`@("`@("`@.#`T,C8W.#0Y("`@-#@S-"`@,3`R("`@,3`P-C0T("`R M,#`@("`@("`@8`H!`@$'````,````"0`````````)``````````0`````$A6 M+$\O`R\")BX`""0N``PO`F'_____["\`+P(O`V'_____X"0N__@F+O_\3EY. M=4`H(REA9&1S='(N8PDU+C0@*$)E"YO("`@("`@("`@ M("`X,#0R-C#)K``8P:P`$(@A3@2!K`!0H M4"1P'`!"@+/`;PX5@@@`&8((`%*`L\!N\E-)0H"R@&T4(&L`%"!P#``3@X@` M$(-2@+*`;.Q**P`29AP(*P`"``UG%!.\`""H`!2\`"`3O``@R``8O``@+PMA M_____VQA_____V9"@$SN'`S_[$Y>3G4``$`H(REB;W@N8PDU+C,@*$)E2D@ M-B\S,"\X.```````#````=`````8```"T````"0```/0````+@```]`````$ M!0`````````````,`0`````````````6`0`````````````>`0`````````` M```H7W=C;&5A<@!?8W5R2D@-B\S,"\X.`````````X```'0````&````M`` M``"&```#T````)P```+0````!`4`````````````#P$`````````````&0$` M````````````(P$`````````````+E]W8VQR=&]B;W0`7V-U@```M`````$!0`````````````/`0`````````````9`0`````````` M```C`0`````````````N7W=C;')T;V5O;`!?8W5R3G5(5BQ/ M2.Y```(-$Q"&`0CQ```"#!*.0````!F;$J#;V)*.0`` M``!G*B`Y`````&<62'D`````0J2CD` M````9Q9(>0````!"IR\`8?____YH4$]83V`,2'@`"F'____^6%A/4X-*.0`` M``!F!D*Y```(,+:Y`````&RV(#D```@TL+D```@\;Q9*.0````!F%DJY```` M`&8&(\````@\2CD`````9TPO.0``"#PO.0``"#@O.0````!A_____?HD`"\" M8?____WP+P!%^0```H).DM[\`!1*@&\&0J=.DF`62'D`````0J3G5(5BQ/2.<^,"`N``@CP```"$0C MP```"$`J.0``"#`H.0``"#1*N0````!G``%`2CD`````9QP@>0``"#@@"&P" M7H#F@"(`YX&1P2(()`#4@6`&)#D```@X(GD```@X(CD```@PLHEN/"`);`)> M@"8`YH,@`6P"7H#F@"!#D`D\`@"='`8#`@>0`` M"#B1^0``"#!@(B`!D(FT@&T62CD`````9@A*N0````!G!B0`($)@!"!"4D@F M.0``"#0B>0``"#PB`Y*):@)$@='!(`+0B;'`;@Q*N0````!F*+:);R1(>O[L M0JOZ80J(CD```@X(`%L`EZ`)`#F@B`"YX`F09?`(`O4@&`& M)#D```@X('D```@PD?D```@X2CD`````9@A*.0````!F$"PY```(-+RY```( M/&T``*Y*.0````!G$"9Y```(-+?Y```(/&P``/`@`E*`L(AM'BPY```(,+RY M```(.&]P2CD`````9FA*N0````!F8"`Y`````&<42'K]O$*G+P!A____^U10 M3UA/8`I(>``-80#]I%A/2CD`````9RP@.0````!G%$AZ_8Y"IR\`8?____LF M4$]83V`*2'@`"F$`_7983U*Y```(-$*Y```(,"9Y```(-+?Y```(/&Q:4KD` M``@T(#D`````9Q1(>OU(0JOS0 M0J0``"#"Q^0``"#ANNF`H4T@C MR```"#1(>OR:0JON80J0``"#"W^0``"#ANQBPY```(,+RY M```(.&P``*9*N0````!G4$JY```(1&<(4[D```A`8&8D>0`````@.0``"#0@ M:@`4(G`,`"!Y```(,!0PF`!)PB("`H$```"`$"H`#0*`````@+"!9@HO`F'_ M___XK&`D(#D`````9Q1(>OK\0J0``"#!'Z``!(\L```@P2KD```A`;0X@"%*`L+D```@X;0#_7DJY```(1&<, M(\4```@P(\0```@T(#D```A`3.X,?/_D3EY.=4A6+$](YS@`)"X`""@N``PF M.0````"V@FX.(`),0P@`3``X`)2#8`)"@R`"T(1,1"@!D('0@TSN`!S_]$Y> M3G4``$`H(RECP```Q0```!]```"$````'Z```(0````@`` M``Y0```"&```!$````(N```(4````D0```A````"2```"$````).```(0``` M`E(```A````"9@``"$````)N```(0````I````A````"E@``"$````*<```( M0````J(```A````"J```$U````*R```44````KH```A````"U@``"$````+< M```(0````N(```A````#`@``%%````,:```(0````R````A````#,```%5`` M``,X```64````TH```A````#4```"$````-H```-4````WH``!-0```#A@`` M"$````.,```(0````Y@``!=0```#H```"$````.H```+4````\````U0```# MU@``"$````/<```+4````^0```A````#\```#5````/X```(0```!`8``!10 M```$#@``"$````0L```(0```!#(```A````$.```"$````0^```84```!$8` M``90```$3@``"$````14```(0```!%X``!E0```$9@``"$````1L```(0``` M!'X```A````$A```"$````2,```54```!)0``!90```$G```!U````3"```9 M4```!,H```I0```$\```"$````3V```(0```!/P```A````%`@``"$````4* M```(0```!1````I0```%-@``"$````5````84```!4@```90```%4```"$`` M``56```(0```!5P```A````%9```&E````5V```(0```!8(```A````%B``` M%E````6N```(0```!;0```A````%P```"$````7,```-4```!=P```A````% MY@``"$````7L```(0```!?0``!10```%_@``"$````8$```(0```!A8```A` M```&)```"$````8L```<4```!E(```A````&6@``"$````9@```(0```!FX` M``10```&=@``%E````9^```54```!H8``!Q0```&K```"$````:R```(0``` M!KH```A````&P```%E````;F```(0```!NP```A````&]```"$````;Z```( M0```!P0``!U0```'#```"$````<4```(0```!QP``!Y0```'(@``"$````

,```(0```!Y(```A````'G@``"$`` M``>H```(0```![````A````'M@``"$````>\```(0```!]P```10````&@`` M`=`````Z```#T````+X```G0````S@``"-````#H```)T````/@```C0```! MF```"=````&H```(T````@8```_0```"$```$-````(X```)T````GH```C0 M```#@```"=````/0```)T```!*P```G0```$V@``"=````4@```)T```!6X` M`!#0```%F```"=````72```)T```!CP```G0```&E@``"=````;0```)T``` M!U0```C0```';```"=`````$!0`````````````+`0`````````````5!0`` M`````$@````<`0`````````````F`0`````````````L`0`````````````P M`0`````````````X`0`````````````\`0````````````!&`0`````````` M``!-`0````````````!1`0````````````!8`0````````````!<`0`````` M``````!@`0````````````!D`0````````````!K`0````````````!S!0`` M`````H(```!Y!0```````F````""`0````````````"&`0````````````"* M`0````````````".`0````````````"2`0````````````"6`0`````````` M``"<`0````````````"@`0````````````"D!0``````!\H```"L`0`````` M``````"P`0````````0```"V`0````````````"^`0````````````#"7VUV M8W5R`%]C=7)S97-?4`!?9F=O=&\`7V-U@$````````"````?@$````````"````@@$````````"````A@$````````" M````B@$````````"````C@$````````"````D@$````````"````E@$````` M```"````F@$````````"````G@$````````"````H@$````````"````I@$` M```````"````J@$````````$````K@$````````$````L@$````````$```` MM@$````````$````N@$````````$````O@$````````$````P@$````````$ M````Q@$````````$````R@$````````$````S@$````````$````T@$````` M```$````U@$````````$````V@$````````$````W@$````````$````X@$` M```````$````Y@$````````$````Z@$````````$````[@$````````$```` M\@$````````$````]@$````````$````^@$````````$````_@$````````$ M```!`@$````````$```!!@$````````$```!"@$````````$```!#@$````` M```$```!$@$````````$```!%@$````````$```!&@$````````$```!'@$` M```````$```!(@$````````$```!)@$````````$```!*@$````````$```! M+@$````````$```!,@$````````$```!-@$````````$```!.@$````````$ M```!/@$````````$```!0@$````````$```!1@$````````$```!2@$````` M```$```!3@$````````$```!4@$````````$```!5@$````````$```!6@$` M```````$```!7@$````````$```!8@$````````$```!9@$````````$```! M:@$````````$```!;@$````````$```!<@$````````$```!=@$````````$ M```!>@$````````$```!?@$````````$```!@@$````````$```!A@$````` M```$```!B@$````````$```!DP$````````$```!G`$````````$```!I0$` M```````$```!L`$````````$```!NP$````````$```!QP$````````"```! MRP$````````"```!SP$````````"```!U0$````````"```!X`$````````" M```!Z0$````````"```!\0$```````!0```!^@$````````$```"`0$````` M```$```"!P$````````$```"$5]?96-H;VET`%]?5]C:`!? M````"0`````````,``````` M```@`````$A6+$](YP`X)FX`"&'_____\DJ+9@IA_____^AP_V!.-%,@:P`4 M,FL`!B1PK`!#\IC_(`DP:P`"U3G5`*",I9&5L971E;&XN8PDU+C,@ M*$)E0!?=&]U8VAL:6YE`%]?:61?(&L`%"`P+`!G%"\`8?____^$6$]2@C!K``2QPF[B+RL` M&$7Y`````$Z2+RL`'$Z2(&L`(%!/M\AG+B0H`"`O"&$`_U`@0EA/M\AF[F`: M(&L`(+?H`"!G"B!H`""WZ``@9O8A:P`@`"`O*P`48?____\D8?____\>0H!, M[@P$__1.7DYU``!`*",I9&5L=VEN+F,)-2XS("A"97)K96QE>2D@-B\S,"\X M.`````"2```#4`````P```'0````(````]`````F```$T````#````30```` M3````=````!6```$T````'P```/0````W````]````#B```$T`````0%```` M``````````P!`````````````!8%````````/@```"`!`````````````"8! M`````````````#!?9&5L=VEN`%]C=7)S97-?4`!?_``D('D````` M2HAG+DHH``UL($AY`````$*G+SD`````3I(@>0`````":/]_``Q03UA/$_P` M`0````!A_____WXD;O_\3EY.=0``0"@C*65N9'=I;BYC"34N,R`H0F5R:V5L M97DI(#8O,S`O.#@`````#@```E`````@```$4````"@```50````+@``!E`` M```V```$4````#X```=0````2@``"%````!:```$4````&(```E0````:@`` M"%````!\```*4`````@```'0````&@```]````""```+T`````0%```````` M``````P!`````````````!8!`````````````"`!`````````````"3G5`*",I M97)A3G4``$`H(REF=6QL;F%M92YC"34N,R`H0F5R:V5L97DI(#8O M,S`O.#@````````$!0`````````````.7V9U;&QN86UE`&=E=&-H+F\@("`@ M("`@("`X,#0R-C``#0J=.DE(#WOP`&&'_____=D7Y M`````$Z2($`@4"!0L?D`````9RY.DB!`(%!*D&<43I(@0")0('D`````(E&S MZ``D9Q!A_____SP@0""\`#T``6!"1?D`````3I(@0")0(&D`"$GH__\C3``( M4TA*B&P23I(@0"\08?____\(6$\4`&`43I(@0"!0(F@`!!014J@`!&`"4,)A M_____NA*.0````!G4#)K``(P:P`*2'"8`#)3,&L`"$APF``O.0````!A____ M_KY03UA/``#0J=.DM[\ M`!AA_____EX0`DG`3.X<#/_L3EY.=4`H(REG971C:"YC"34N-2`H0F5R:V5L M97DI(#8O,S`O.#@``````$X```-0````5@``!%````!@```$4````&X```50 M````D```!E````">```'4````+8```=0````U```!E````$>```#4````3P` M``I0```!6```"E````%Z```$4````8@```50````$````=````!"```"T``` M`(H```+0````Q```"-````#X```)T````1@```'0```!0@``"]````%>```, SHAR_EOF : || echo 'restore of vw_curses/lib/libcurses.a failed' fi echo 'End of archive part 4' echo 'File vw_curses/lib/libcurses.a is continued in part 5' echo 5 > _sharseq.tmp exit 0