1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License, Version 1.0 only 6# (the "License"). You may not use this file except in compliance 7# with the License. 8# 9# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10# or http://www.opensolaris.org/os/licensing. 11# See the License for the specific language governing permissions 12# and limitations under the License. 13# 14# When distributing Covered Code, include this CDDL HEADER in each 15# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16# If applicable, add the following below this CDDL HEADER, with the 17# fields enclosed by brackets "[]" replaced with your own identifying 18# information: Portions Copyright [yyyy] [name of copyright owner] 19# 20# CDDL HEADER END 21# 22# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T 23# All Rights Reserved 24 25 26#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.6 */ 27# # -------------------------------- 28# 29# heath: HEATHKIT and ZENITH 30# 31# Manufacturer: HEATHKIT and ZENITH 32# Class: I 33h19-a|heath-ansi|heathkit-a|heathkit h19 ansi mode, 34 cr=^M, cud1=^J, ind=^J, bel=^G, il1=\E[1L$<1*>, am, cub1=^H, ed=\E[J, 35 el=\E[K, clear=\E[2J, cup=\E[%i%p1%d;%p2%dH, cols#80, 36 dch1=\E[1P, dl1=\E[1M$<1*>, cud1=\E[1B, 37 rmir=\E[4l, home=\E[H, smir=\E[4h, lines#24, mir, 38 cuf1=\E[1C, smacs=\E[10m, rmacs=\E[11m, msgr, ht=^I, it#8, 39 rmso=\E[0m, smso=\E[7m, cuu1=\E[1A, cvvis=\E[>4h, cnorm=\E[>4l, 40 kbs=^h, kcuu1=\E[1A, kcud1=\E[1B, kcub1=\E[1D, kcuf1=\E[1C, 41 khome=\E[H, 42 kf1=\EOS, kf2=\EOT, kf3=\EOU, kf4=\EOV, kf5=\EOW, lf6=blue, 43 lf7=red, lf8=white, kf6=\EOP, kf7=\EOQ, kf8=\EOR, 44 ri=\EM, is2=\E<\E[>1;2;3;4;5;6;7;8;9l\E[0m\E[11m\E[?7h, 45h19-bs|heathkit w/keypad shifted, 46 smkx=\Et, rmkx=\Eu, use=h19-b, 47h19-smul|heathkit w/keypad shifted/underscore cursor, 48 smkx=\Et, rmkx=\Eu, use=h19-u, 49h19|heath|h19-b|heathkit|heath-19|z19|zenith|heathkit h19, 50 cr=^M, cud1=^J, ind=^J, bel=^G, il1=\EL$<1*>, am, cub1=^H, 51 ed=\EJ, el=\EK, clear=\EE, cup=\EY%p1%' '%+%c%p2%' '%+%c, cols#80, 52 dch1=\EN, dl1=\EM$<1*>, cud1=\EB, rmir=\EO, home=\EH, smir=\E@, 53 lines#24, mir, cuf1=\EC, smacs=\EF, rmacs=\EG, msgr, ht=^I, it#8, 54 ri=\EI, rmso=\Eq, smso=\Ep, cuu1=\EA, cvvis=\Ex4, cnorm=\Ey4, 55 kbs=^h, kcuu1=\EA, kcud1=\EB, kcub1=\ED, kcuf1=\EC, khome=\EH, 56 kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV, kf5=\EW, 57 lf6=blue, lf7=red, lf8=white, kf6=\EP, kf7=\EQ, kf8=\ER, 58 hs, eslok, tsl=\Ej\Ex5\EY8%p1%' '%+%c\Eo\Eo, fsl=\Ek\Ey5, 59h19-u|heathkit with underscore cursor, 60 cvvis@, cnorm@, use=h19-b, 61# Info: 62# This still doesn't work right - something funny is going on 63# with return # and linefeed in the reach program. Apparently 64# cr acts like crlf and lf is ignored. There is a "literal end 65# of line mode" which works right, but this will cause cr's to 66# appear in files that are spooled. This description assumes 67# "normal end of line mode". 68# 69reach|h89|h89 running reach, 70 cr@, cud1=\EB, ind=\r\l, is2=\Ey3\Ev, use=h19-b, 71alto-h19|altoh19|altoheath|alto-heath|alto emulating heathkit h19, 72 lines#60, il1=\EL, dl1=\EM, use=h19, 73# Info: 74# The major problem with the Z29 is that it requires more 75# padding than the Z19. Once again, here's a little termcap 76# entry for it that will do the trick. 77# 78# The problem declaring an H19 to be synonomous with a Z29 is that 79# it needs more padding. It especially loses if a program attempts 80# to put the Z29 into insert mode and insert text at 9600 baud. It 81# even loses worse if the program attempts to insert tabs at 9600 82# baud. Adding padding to text that is inserted loses because in 83# order to make the Z29 not die, one must add so much padding that 84# whenever the program tries to use insert mode, the effective 85# rate is about 110 baud. 86# 87# What program would want to put the terminal into insert mode 88# and shove stuff at it at 9600 baud you ask? 89# 90# Emacs. Emacs seems to want to do the mathematically optimal 91# thing in doing a redisplay rather than the practical thing. 92# When it is about to output a line on top of a line that is 93# already on the screen, instead of just killing to the end of 94# the line and outputing the new line, it compares the old line 95# and the new line and if there are any similarities, it 96# constructs the new line by deleting the text on the old line 97# on the terminal that is already there and then inserting new 98# text into the line to transform it into the new line that is 99# to be displayed. The Z29 does not act kindly to this. 100# 101# But don't cry for too long.... There is a solution. You can make 102# a termcap entry for the Z29 that says the Z29 has no insert mode. 103# Then Emacs cannot use it. "Oh, no, but now inserting into a 104# line will be really slow", you say. Well there is a sort of a 105# solution to that too. There is an insert character option on 106# the Z29 that will insert one character. Unfortunately, it 107# involves putting the terminal into ansi mode, inserting the 108# character, and changing it back to H19 mode. All this takes 12 109# characters. Pretty expensive to insert one character, but it 110# works. Either Emacs doesn't try to use its inserting hack when 111# it's only given an insert character ability or the Z29 doesn't 112# require padding with this (the former is probably more likely, 113# but I haven't checked it out). 114# 115z29|zenith29|z29b|, 116 cr=^M, cud1=^J, ind=^J, bel=^G, is2=\E<\E[?2h\Ev, il1=\EL$<1>, am, 117 cub1=^H, ed=\EJ$<14>, el=\EK$<1>, clear=\EE$<14>, 118 cup=\EY%p1%' '%+%c%p2%' '%+%c, 119 cols#80, dch1=\EN$<0.1*>, dl1=\EM$<1>, cud1=\EB, home=\EH, 120 ich1=\E<\E[1@\E[?2h$<1>, lines#24, cuf1=\EC, 121 rmacs=\EF, smacs=\EG, ind=\n$<2>, msgr, ht=^I, ri=\EI$<2>, rmso=\Eq, 122 smso=\Ep, cuu1=\E$<1>A, cvvis=\Ex4, cnorm=\Ey4, kbs=^h, kcuu1=\EA, 123 kcud1=\EB, kcub1=\ED, kcuf1=\EC, khome=\EH, kf1=\ES, 124 kf2=\ET, kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, 125 kf9=\E0I, kf0=\E~, lf0=home, 126 cbt=\E-, smul=\Es8, rmul=\Es0, 127