Annotation of 42BSD/usr.lib/libcurses/initscr.c, revision 1.1

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: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.