* Copyright (c) 1983 Regents of the University of California.
* Redistribution and use in source and binary forms are permitted
* provided that the above copyright notice and this paragraph are
* duplicated in all such forms and that any documentation,
* advertising materials, and other materials related to such
* distribution and use acknowledge that the software was developed
* by the University of California, Berkeley. The name of the
* University may not be used to endorse or promote products derived
* from this software without specific prior written permission.
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
static char sccsid
[] = "@(#)ttinit.c 3.20 (Berkeley) %G%";
struct tt_tab tt_tab
[] = {
{ "tvi925", 6, tt_tvi925
},
{ "wyse75", 6, tt_wyse75
},
{ "wyse60", 6, tt_wyse60
},
{ "zentec", 6, tt_zentec
},
{ "generic", 0, tt_generic
},
register struct tt_tab
*tp
;
* Set output buffer size to about 1 second of output time.
tt_obe
= tt_ob
+ MIN(wwbaud
/10, sizeof tt_ob
);
* Use the standard name of the terminal (i.e. the second
for (p
= wwtermcap
; *p
&& *p
!= '|' && *p
!= ':'; p
++)
for (q
= p
; *q
&& *q
!= '|' && *q
!= ':'; q
++)
if (q
!= p
&& (t
= malloc((unsigned) (q
- p
+ 1))) != 0) {
for (tp
= tt_tab
; tp
->tt_name
!= 0; tp
++)
if (strncmp(tp
->tt_name
, wwterm
, tp
->tt_len
) == 0)
if ((*tp
->tt_func
)() < 0) {
tt
.tt_scroll_bot
= tt
.tt_nrow
- 1;
if (ioctl(0, TIOCGWINSZ
, (char *)&winsize
) >= 0 &&
winsize
.ws_row
!= 0 && winsize
.ws_col
!= 0) {
tt
.tt_nrow
= winsize
.ws_row
;
tt
.tt_ncol
= winsize
.ws_col
;