|
|
1.1 ! root 1: # include "curses.ext" ! 2: # include <signal.h> ! 3: # include <sys/param.h> ! 4: ! 5: extern char *getenv(); ! 6: ! 7: /* ! 8: * This routine initializes the current and standard screen. ! 9: * ! 10: * 5/19/83 (Berkeley) @(#)initscr.c 1.3 ! 11: */ ! 12: WINDOW * ! 13: initscr() { ! 14: ! 15: reg char *sp; ! 16: int tstp(); ! 17: ! 18: # ifdef DEBUG ! 19: fprintf(outf, "INITSCR()\n"); ! 20: # endif ! 21: if (My_term) ! 22: setterm(Def_term); ! 23: else { ! 24: if (isatty(2)) ! 25: _tty_ch = 2; ! 26: else { ! 27: for (_tty_ch = 0; _tty_ch < NOFILE; _tty_ch++) ! 28: if (isatty(_tty_ch)) ! 29: break; ! 30: } ! 31: gettmode(); ! 32: if ((sp = getenv("TERM")) == NULL) ! 33: sp = Def_term; ! 34: setterm(sp); ! 35: # ifdef DEBUG ! 36: fprintf(outf, "INITSCR: term = %s\n", sp); ! 37: # endif ! 38: } ! 39: _puts(TI); ! 40: _puts(VS); ! 41: # ifdef SIGTSTP ! 42: signal(SIGTSTP, tstp); ! 43: # endif ! 44: if (curscr != NULL) { ! 45: # ifdef DEBUG ! 46: fprintf(outf, "INITSCR: curscr = 0%o\n", curscr); ! 47: # endif ! 48: delwin(curscr); ! 49: } ! 50: # ifdef DEBUG ! 51: fprintf(outf, "LINES = %d, COLS = %d\n", LINES, COLS); ! 52: # endif ! 53: if ((curscr = newwin(LINES, COLS, 0, 0)) == ERR) ! 54: return ERR; ! 55: curscr->_clear = TRUE; ! 56: if (stdscr != NULL) { ! 57: # ifdef DEBUG ! 58: fprintf(outf, "INITSCR: stdscr = 0%o\n", stdscr); ! 59: # endif ! 60: delwin(stdscr); ! 61: } ! 62: stdscr = newwin(LINES, COLS, 0, 0); ! 63: return stdscr; ! 64: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.