APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

Where can I get a Linux terminfo for SCO Unix "scoansi" or vice-versa ?

When I telnet from a SCO machine to a Linux machine, resetting erase and intr is only the beginning of what I need to do to avoid driving myself crazy. If I'm using Linux as my deskop, the problem will be reversed when I access customer's SCO machines from that box.

Admittedly, it's SCO's fault. It would have been smarter to make the SCO console and xterms act like a vt100 as Linux and Mac do. If you'd like to explore some of the details and history of all this, Linux and SCO key mappings are discussed here, including some opinions by Linus Torvalds.

If coming from SCO to Linux, you may find a scoansi-old and scoansi-new terminfo definition. Which one you would use depends upon whether you have "old" sco (pre 5.0.6) or not.

That's just the start of possible confusion. That's why there is so much information posted below: what you need depends upon what you have and even upon the particular application you want to use. Termcap and terminfo definitions are what controls your experience.

(Don't understand terminfo? See Termcap and Terminfo.)

Thomas E. Dickey offers this in ncurses 5.0 (See Ncurses FAQ).

Thomas gave me permission to extract the terminfo source and make it available here; you can just "tic" this on any Linux box if all you need is a better scoansi terminfo definition.

 # SCO console and SOS-Syscons console for 386bsd
 # (scoansi: had unknown capabilities
 #      :Gc=N:Gd=K:Gh=M:Gl=L:Gu=J:Gv=\072:\
 #      :GC=E:GD=B:GH=D:GL=\64:GU=A:GV=\63:GR=C:
 #      :G1=?:G2=Z:G3=@:G4=Y:G5=;:G6=I:G7=H:G8=<:\
 #      :CW=\E[M:NU=\E[N:RF=\E[O:RC=\E[P:\
 #      :WL=\E[S:WR=\E[T:CL=\E[U:CR=\E[V:\
 # I renamed GS/GE/HM/EN/PU/PD/RT and added klone+sgr-dumb, based
 # on the <smacs>=\E[12m  -- esr)
 # klone+sgr-dumb is an error since the acsc does not match -TD
 # In this description based on SCO's keyboard(HW) manpage list of default function key
 # values:
 #      F13-F24 are shifted F1-F12
 #      F25-F36 are control F1-F12
 #      F37-F48 are shift+control F1-F12
 scoansi|SCO Extended ANSI standard crt, 
        OTbs, am, eo, xon, 
        colors#8, cols#80, it#8, lines#25, pairs#64, 
        blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J, 
        cub1=\E[D, cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, 
        cuu1=\E[A, dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, 
        ht=^I, ich1=\E[@, il1=\E[L, ind=\E[S, invis=\E[8m, kbeg=\E[E, 
        kbs=^H, 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, kf13=\E[Y, kf15=\E[a, kf16=\E[b, kf17=\E[c, 
        kf18=\E[d, kf19=\E[e, kf2=\E[N, kf20=\E[f, kf21=\E[g, 
        kf22=\E[h, kf23=\E[i, kf24=\E[j, kf25=\E[k, kf26=\E[l, 
        kf27=\E[m, kf28=\E[n, kf29=\E[o, kf3=\E[O, kf30=\E[p, 
        kf31=\E[q, kf32=\E[r, kf33=\E[s, kf34=\E[t, kf35=\E[u, 
        kf36=\E[v, kf37=\E[w, kf38=\E[x, kf39=\E[y, kf4=\E[P, 
        kf40=\E[z, kf41=\E[@, kf42=\E[[, kf43=\E[\\, kf44=\E[], 
        kf45=\E[\^, kf46=\E[_, kf47=\E[`, kf48=\E[{, 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, op=\E[37;40m, rev=\E[7m, 
        ri=\E[T, rmacs=\E[10m, rmso=\E[m, rmul=\E[m, 
        setab=\E[4%p1%dm, setaf=\E[3%p1%dm, 
        sgr0=\E[0;10m, smacs=\E[12m, smso=\E[7m, smul=\E[4m, 



Brian White offered this:

Here is what I installed on my sco box to allow me to work from my linux box.
It is still a work in progess, since I don't telnet from linux to sco that
often, but it's pretty good.


#	Constructed via infocmp on real linux box, added mc4,mc5,smpch
#	brian@aljex.com
linux|linux console, 
	am, bce, eo, mir, msgr, xenl, xon, 
	colors#8, it#8, pairs#64, 
	bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, 
	clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, 
	csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C, 
	cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, 
	dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, 
	ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, 
	flash=\E[?5h\E[?5l$<200/>, home=\E[H, hpa=\E[%i%p1%dG, 
	ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, 
	il1=\E[L, ind=^J, invis=\E[8m, kb2=\E[G, kbs=\177, kcbt=\E[Z, 
	kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, 
	kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~, 
	kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, 
	kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, 
	kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D, 
	kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, 
	khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kspd=^Z, 
	nel=^M^J, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, 
	rmacs=\E[10m, rmir=\E[4l, rmpch=\E[10m, rmso=\E[27m, 
	rmul=\E[24m, rs1=\Ec\E]R, sc=\E7, setab=\E[4%p1%dm, 
	sgr0=\E[0;10m, smacs=\E[11m, smir=\E[4h, smpch=\E[11m, 
	smso=\E[7m, smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR, 
	u7=\E[6n, u8=\E[?6c, u9=\E[c, vpa=\E[%i%p1%dd, mc5=\E[5i, mc4=\E[4i,

# pulled from real linux box, added is,PN,PS
# brian@aljex.com
linux|linux console, cp437 font:\

# paste this into /etc/profile on a sco box for linux terminal compatibility
# brian@aljex.com
case $TERM in
	stty intr "^c"
	stty erase "^?"
	tput smpch
export TERM

copy these to the sco box and run the following commands:

tic terminfo-lnx-on-sco
cat termcap-lnx-on-sco >>/etc/termcap
cat profile-lnx-on-sco >>/etc/profile

exit and log back in to see the effects.

Conversely, here are the equivalent snippets that I install on linux boxes
so I can telnet to them from sco boxes. This I do more often. (from scoansi
terminal emulators like facetwin actually)


#	constructed via infocmp on real sco 5.0.5 box, added mc4,mc5
#	brian@aljex.com
scoansi|ansic|cansi|SCO Ansi standard console,
	am, bce, eo, xon,
	colors#8, cols#80, it#8, lines#25, pairs#64,
	bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
	civis=\E[=14;12C, clear=\E[2J\E[H, cnorm=\E[=10;12C,
	cr=\r, cub1=\b, cud1=\E[B, cuf1=\E[C,
	cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M,
	ed=\E[m\E[J, el=\E[m\E[K, home=\E[H, ht=\t, ich1=\E[@,
	il1=\E[L, ind=\E[S, invis=\E[8m, kLFT=\E[d, kRIT=\E[c,
	kbs=\b, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
	kcuu1=\E[A, kdch1=^_, 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,
	op=\E[37;40m, rev=\E[7m, ri=\E[T, rmacs=\E[10m,
	rmso=\E[m, rmul=\E[m, setb=\E[4%p1%dm,
	setf=\E[3%p1%dm, sgr0=\E[10;0m, smacs=\E[12m,
	smso=\E[7m, smul=\E[4m, mc4=\E[4i, mc5=\E[5i, 

# pulled from real sco box, added PN,PS
# brian@aljex.com
scoansi|ansic|cansi|SCO Ansi standard crt:\

# paste this into /etc/profile on a linux box for sco terminal compatibility
# brian@aljex.com
case $TERM in 
	stty erase "^H"
	stty intr "^?"
	stty susp ""
	stty eol ""
	stty rprnt ""
	stty werase ""
	stty eol2 ""
export TERM

Also see Linux shell colors; shell ls colorization

Bruce Garlock sent this email:

A while ago, I asked you about linux to SCO terminal emulation, and
there really was not a good answer.  I see that it was one of the FAQ's
on your site, and I tried the various termcap files, etc...  I could
never get it working 100%, though.

I was just emailed a beta linux version of "Powerterm" from www.ericson.com. I am very impressed.
We use the Windows version of Powerterm, and the linux version is almost an 
exact copy.  All the F keys work, and the colors too!  I'm not sure if you 
would be interested in something like this, or not.

- Bruce

Got something to add? Send me email.

(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

-> (SCO Unix) Where can I get a Linux terminfo for 'scoansi' or vice-versa ?

Printer Friendly Version

Have you tried Searching this site?

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us

Printer Friendly Version

Computers are like Old Testament gods; lots of rules and no mercy. (Joseph Campbell)






Unix/Linux Consultants

Skills Tests

Unix/Linux Book Reviews

My Unix/Linux Troubleshooting Book

This site runs on Linode