Annotation of 42BSD/usr.lib/lib2648/ttyinit.c, revision 1.1.1.1

1.1       root        1: /*     ttyinit.c       4.1     83/03/09        */
                      2: /*
                      3:  * sgtty stuff
                      4:  */
                      5: 
                      6: #include <sgtty.h>
                      7: 
                      8: struct sgttyb  _ttyb;
                      9: struct tchars  _otch, _ntch;
                     10: int    _normf;
                     11: 
                     12: /*
                     13:  * Routines for dealing with the unix tty modes
                     14:  */
                     15: 
                     16: #include "2648.h"
                     17: 
                     18: ttyinit()
                     19: {
                     20:        if (strcmp(getenv("TERM"), "hp2648") == 0)
                     21:                _on2648 = 1;
                     22:        ioctl(fileno(stdin), TIOCGETP, &_ttyb);
                     23:        ioctl(fileno(stdin), TIOCGETC, &_otch);
                     24:        _ntch = _otch;
                     25:        _ntch.t_quitc = _ntch.t_startc = _ntch.t_stopc = -1;
                     26:        _normf = _ttyb.sg_flags;
                     27:        _ttyb.sg_flags |= CBREAK;
                     28:        _ttyb.sg_flags &= ~(ECHO|CRMOD);
                     29:        ioctl(fileno(stdin), TIOCSETN, &_ttyb);
                     30:        ioctl(fileno(stdin), TIOCSETC, &_ntch);
                     31:        gdefault();
                     32:        zoomn(1);
                     33:        zoomon();
                     34:        kon();
                     35:        rboff();
                     36:        _cursoron = 1;  /* to force it off */
                     37:        _escmode = NONE;
                     38:        curoff();
                     39:        clearg();
                     40:        gon();
                     41:        aoff();
                     42: }
                     43: 
                     44: done()
                     45: {
                     46:        goff();
                     47:        koff();
                     48:        aon();
                     49:        sync();
                     50:        escseq(NONE);
                     51:        lowleft();
                     52:        printf("\n");
                     53:        fflush(stdout);
                     54:        _ttyb.sg_flags = _normf;
                     55:        ioctl(fileno(stdin), TIOCSETN, &_ttyb);
                     56:        ioctl(fileno(stdin), TIOCSETC, &_otch);
                     57: }

unix.superglobalmegacorp.com

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