Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Oct 96 11:42:50 -0700
From:      Randall Raemon <delta1@netcom.com>
To:        questions@freebsd.org
Subject:   Re: vt100 mysteries 
Message-ID:  <199610201842.LAA16891@netcom5.netcom.com>

next in thread | raw e-mail | index | archive | help
In message <199610201644.CAA24862@mail.zip.com.au> 
"Sue Blake" writes 

> What I want to do:
> Telnet (or dial even) in to my shell account and use apps there,
> like I used to do from DOS dial-in or win/os2 PPP-telnet.
> 
> What I'm working with:
> The ISP runs Linux, I'm set up there as vt100 and that seems
> necessary for things like pine, lynx, irc, joe, tin, etc to work. My
> shell on the linux system is bash, and here it's tcsh, but I'm happy
> to use any shell. I'm not using xwindows at all but would consider
> beating my ancient monitor into submission to do so if and only if
> it's the only way to achieve a real solution. (Text mode is easier
> on the eyes.) UserPPP seems to be working fine straight out of the 
> handbook/faq. The same apps (joe editor, lynx, tin, pine, ircII) work 
> fine if I run my own copy here, which I don't want to do.

You would remind me of this... I hit exactly the same
situation. My dialup ISP is to a Unix shell account, and dialing thru
a FreeBSD system causes all sorts of strange display problems. Most
notably, editing and fullscreen displays are next to impossible. (The
Pine mailer editor "pico" would work, but vi wouldn't.)

I found there are two solutions: recompile your kernel to use the pcvt
console driver (which gives FreeBSD a vt100 look), or have your dialup
speak cons25 thru updating your termcap/terminfo information.

At the time, I elected to go the termcap/terminfo route. In
retrospect, I'm not sure if this has a lower learning curve than pcvt.
No matter, as here is what I did.

My ISP is netcom.com, running SunOS. Dialup shell account. I uploaded
the termcap entry from my BSD box to netcom. I ran that termcap entry
thru "infocmp" (see man pages) to produce a SunOS recognizable
terminfo entry. Then use "tic" to compile this terminfo entry. Modify
your .profile/.cshrc to have the following:

   export TERMCAP=$HOME/termcap
   export TERMINFO=$HOME/tic
   export TERM=cons25

On your ISP, you should be able to do something reasonable now. 

You may have to download the man pages to your BSD box in order to be
able to look at them (remember, ISP fullscreen apps are hosed). You
can look at downloaded manpages with "nroff -man thisfile | less" on
your BSD box.

This is the termcap entry I'm using on netcom (SunOS):
-------------------------------------------------------------------
cons25|ansis|ansi80x25:\
	:am:bw:eo:ms:bs:pt:\
	:co#80:li#25:kn#5:\
	:AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
	:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:UP=\E[%dA:al=\E[L:\
	:bt=\E[Z:cd=\E[J:ce=\E[K:ch=\E[%i%d`:cl=\E[H\E[J:\
	:cm=\E[%i%d;%dH:cv=\E[%i%dd:dc=\E[P:dl=\E[M:ho=\E[H:\
	:ic=\E[@:k1=\E[M:k2=\E[N:k3=\E[O:k4=\E[P:k5=\E[Q:\
	:k6=\E[R:k7=\E[S:k8=\E[T:k9=\E[U:kb=\b:kd=\E[B:\
	:kh=\E[H:kl=\E[D:kr=\E[C:ku=\E[A:nd=\E[C:se=\E[m:\
	:so=\E[7m:sr=\E[T:up=\E[A:nl=\E[B:ko=bt,do,nd,up,ho:
-------------------------------------------------------------------

This is the terminfo entry (again, SunOS):
-------------------------------------------------------------------
cons25|ansis|ansi80x25,
	am, bw, eo, msgr, npc,
	cols#80, it#8, lines#25,
	bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
	clear=\E[H\E[J, cr=\r, cub=\E[%p1%dD, cub1=\b,
	cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
	cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
	dch=\E[%p1%dP, dch1=\E[P, dim=\E[30;1m, dl=\E[%p1%dM,
	dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
	home=\E[H, hpa=\E[%i%p1%d`, ht=\t, ich=\E[%p1%d@,
	ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
	indn=\E[%p1%dS, kb2=\E[E, kbs=\b, kcbt=\E[Z,
	kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
	kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W, kf12=\E[X,
	kf2=\E[N, kf3=\E[O, kf4=\E[P, kf5=\E[Q, kf6=\E[R,
	kf7=\E[S, kf8=\E[T, kf9=\E[U, khome=\E[H, kich1=\E[L,
	knp=\E[G, kpp=\E[I, nel=\E[E, rev=\E[7m, ri=\E[T,
	rmso=\E[m, sgr0=\E[m, smso=\E[7m, vpa=\E[%i%p1%dd,
-------------------------------------------------------------------

There is still something that doesn't work quite right when an
application (e.g. lynx) tries to clear the screen. I have to do
a ctl-L to force a regenerated display. I think it's a netcom lynx
problem rather than a termcap/terminfo problem, but I'm not sure.
It's annoying, but liveable.

Good luck...

--
Randall Raemon
delta1@netcom.com




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199610201842.LAA16891>