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.11 */ 27# # -------------------------------- 28# 29# concept: (HUMAN DESIGNED SYSTEMS) 30# 31# Manufacturer: HUMAN DESIGNED SYSTEMS 32# Class: III 33# 34# Info: 35# There seem to be a number of different versions of the C108 PROMS 36# (with bug fixes in its Z-80 program). 37# 38# The first one that we had would lock out the keyboard of you 39# sent lots of short lines (like /usr/dict/words) at 9600 baud. 40# Try that on your C108 and see if it sends a ^S when you type it. 41# If so, you have an old version of the PROMs. 42# 43# You should configure the C108 to send ^S/^Q before running this. 44# It is much faster (at 9600 baud) than the c100 because the delays 45# are not fixed. 46# new status line display entries for c108-8p: 47# is3 - init str #3 - setup term for status display - 48# set programmer mode, select window 2, define window at last 49# line of memory, set bkgnd stat mesg there, select window 0. 50# 51# tsl - to status line - select window 2, home cursor, erase to 52# end-of-window, 1/2 bright on, goto(line#0, col#?) 53# 54# fsl - from status line - 1/2 bright off, select window 0 55# 56# dsl - disable status display - set bkgnd status mesg with 57# illegal window # 58# 59# There are probably more function keys that should be added but 60# I don't know what they are. 61# 62c108|concept108|c108-8p|concept108-8p|concept 108 w/8 pages, 63 is3=\EU\E z"\Ev^A\177 !p\E ;"\E z \Ev ^A\177p\Ep\n, 64 rmcup=\Ev ^A\177p\Ep\r\n, use=c108-4p, 65c108+acs|alternate charset defns for c108, 66 acsc=l\\qLkTxUmMjE, rmacs=\Ej , smacs=\Ej!, 67c108-4p-acs|c108-4p w/ acs, 68 use=c108+acs, use=c108-4p, 69c108-8p-acs|c108-8p w/ acs, 70 use=c108+acs, use=c108-8p, 71c108-rv-8p-acs|c108-rv-8p w/ acs, 72 use=c108+acs, use=c108-rv-8p, 73c108-4p|concept108-4p|concept 108 w/4 pages, 74 hs, eslok, dch1=\E\s1$<16*>, 75 tsl=\E z"\E?\E^E\EE\Ea %+ , fsl=\Ee\E z , dsl=\E ;\177, 76 is3=\EU\E z"\Ev\177 !p\E ;"\E z \Ev ^A p\Ep\n, 77 xon, is1=\EK\E!\E F, 78 smcup=\EU\Ev 8p\Ep\r\E^U, rmcup=\Ev ^A p\Ep\r\n, 79 cvvis=\EW, cnorm=\Ew, 80# Info: 81# No delays needed on c108 because of ^S/^Q handshaking 82# 83 pb@, cr=^M, ind=^J, 84 cup=\Ea%p1%?%p1%{95}%>%t^A%{96}%-%;%' '%+%c%p2%?%p2%{95}%>%t^A%{96}%-%;%' '%+%c, 85 use=c100, 86c108-rv|c108-rv-8p|concept 108 w/8 pages in reverse video, 87 smcup=\EU\Ev 8p\Ep\r, rmcup=\Ev ^B p\Ep\r\n, use=c108-rv-4p, 88c108-rv-4p|concept108-rv-|concept108rv4p|concept 108 w/4 pages in reverse video, 89 flash=\EK$<50>\Ek, is1=\Ek, smso=\EE, rmso=\Ee, 90 use=c108-4p, 91c108-rv-4p-acs|c108-rv-4p w/ acs, 92 use=c108+acs, use=c108-rv-4p, 93c108-na|c108-na-8p|c108-8p-na|concept108-na-|concept108na8p|concept 108 w/8 pages no arrows, 94 kf7=\E;, kf8=\E<, kf9=\E=, 95 smkx@, rmkx@, use=c108-8p, 96c108-na-acs|c108-na w/ acs, 97 use=c108+acs, use=c108-na, 98c108-rv-na|c108-rv-na-8p|c108-8p-rv-na|concept 108 8 pages no arrows rev video, 99 kf7=\E;, kf8=\E<, kf9=\E=, 100 smkx@, rmkx@, use=c108-rv-8p, 101c108-rv-na-acs|c108-na w/ acs, 102 use=c108+acs, use=c108-rv-na, 103c108-w|c108-w-8p|concept108-w-8|concept108-w8p|concept 108 w/8 pages in wide mode, 104 is1=\E F\E", 105 smcup=\EU\Ev 8^AD\Ep\r, rmcup=\Ev ^A0^AD\Ep\r\n, 106 cols#132, use=c108-8p, 107c108-w-acs|c108-w w/ acs, 108 use=c108+acs, use=c108-w, 109# Info: 110# Concept 100: 111# These have only window relative cursor addressing, not screen 112# relative. To get it to work right here, smcup/rmcup (which 113# were invented for the # concept) lock you into a one page 114# window for screen style programs. 115# 116# To get out of the one page window, we use a clever trick: 117# we set the window size to zero ("\Ev " in rmcup) which the 118# terminal recognizes as an error and resets the window to all 119# of memory. 120# 121# This trick works on c100 but does not on c108, sigh. 122# 123# Some tty drivers use cr3 for concept, others use nl3, hence 124# the delays on cr and ind below. This padding is only needed at 125# 9600 baud. One or the other is commented out depending on 126# local conventions. 127# 128# 2 ms padding on rmcup isn't always enough. 6 works fine. Maybe 129# less than 6 but more than 2 will work. 130# 131# Note: can't use function keys f7-f10 because they are 132# indistinguishable from arrow keys (!), also, del char and 133# clear eol use xon/xoff so they probably won't work very well. 134# 135# Also note that we don't define insrt/del char/delline/eop/send 136# because they don't transmit unless we reset them - I figured 137# it was a bad idea to clobber their definitions. 138# 139# The mc5 sequence changes the escape character to ^^ so that 140# escapes will be passed through to the printer. Only trouble 141# is that ^^ won't be - ^^ was chosen to be unlikely. 142# Unfortunately, if you're sending raster bits through to be 143# plotted, any character you choose will be likely, so we lose. 144# 145c100|concept100|concept|c104|c100-4p|hds concept 100, 146 is2=\EU\Ef\E7\E5\E8\El\ENH\E\0\Eo&\0\Eo'\E\Eo!\0\E^G!\E^HA@ \E4#:"\E:a\E4#;"\E:b\E4#<"\E:c, 147 is1=\EK, is3=\Ev $<6>\Ep\n, 148# cr=^M, ind=^J$<9>, 149 cr=$<9>^M, ind=^J, 150 bel=^G, cud1=^J, clear=\E?\E^E$<2*>, 151 smcup=\EU\Ev 8p\Ep\r\E^U$<16>, rmcup=\Ev $<6>\Ep\r\n, 152 il1=\E^R$<3*>, am, cub1=^H, ed=\E^E$<16*>, el=\E^U$<16>, 153 cup=\Ea%p1%' '%+%c%p2%' '%+%c, cols#80, dch1=\E^Q$<16*>, dl1=\E^B$<3*>, 154 rmir=\E\s\s, eo, smir=\E^P, ip=$<16*>, lines#24, mir, cuf1=\E=, 155 ht=\t$<8>, kbs=^h, ul, cuu1=\E;, smul=\EG, rmul=\Eg, 156 xenl, flash=\Ek$<20>\EK, pb#9600, vt#8, 157 smul=\EG, rmul=\Eg, smso=\ED, rmso=\Ed, 158 dim=\EE, rev=\ED, blink=\EC, prot=\EI, invis=\EH, sgr0=\EN@, 159 rep=\Er%p1%c%p2%' '%+%c$<.2*>, smkx=\EX, rmkx=\Ex, 160 kcuu1=\E;, kcud1=\E<, kcub1=\E>, kcuf1=\E=, khome=\E?, kcbt=\E', 161 kf1=\E5, kf2=\E6, kf3=\E7, kf4=\E8, kf5=\E9, 162 kf6=\E:a, kf7=\E:b, kf8=\E:c, 163 kich1=\E^P, krmir=\E\0, kdch1=\E^Q, kil1=\E^R, kdl1=\E^B, 164 kel=\E^S, ked=\E^C, kpp=\E., knp=\E-, kind=\E[, kri=\E\\, 165 khts=\E], kctab=\E_, 166# Info: 167# \EQ"\EY(^W (send anything from printer to host, for xon/xoff) 168# cannot be # in is2 because it will hang a c100 with no printer 169# if sent twice. 170# 171 mc5=\EQ"\EY(^W\EYD\Eo ^^, mc4=^^o \E\EQ!\EYP^W, 172c100-rv|c100-rv-4p|c100-rv-4p-pp|concept100-rv|c100 rev video, 173 is1=\Ek, flash=\EK$<20>\Ek, cvvis@, cnorm@, 174 smso=\EE, rmso=\Ee, use=c100, 175c100-rv-na|c100-rv-4p-na|c100 with no arrows, 176 smkx@, rmkx@, use=c100-rv, 177oc100|oconcept|c100-1p|old 1 page concept 100, 178 in, is3@, use=c100, 179# Info: 180# 181# ht through el included to specify padding needed in raw mode. 182# 183avt-ns|concept avt with status lins disabled, 184 am, eo, mir, ul, xenl, xon, 185 cols#80, it#8, lines#24, lm#192, 186 bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, 187 clear=\E[H\E[J$<38>, cnorm=\E[=119l, cr=\r, 188 csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\b, 189 cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C, 190 cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, 191 cvvis=\E[=119h, dch1=\E[P, dim=\E[1!{, 192 dl=\E[%p1%dM$<4*>, dl1=\E[M$<4>, ed=\E[J$<96>, 193 el=\E[K$<6>, home=\E[H, hpa=\E[%p1%{1}%+%dG, 194 ht=\t$<4>, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, 195 il=\E[%p1%dL$<4*>, il1=\E[L$<4>, ind=\n$<8>, 196 invis=\E8m, ip=$<4>, is1=\E[=103l\E[=205l, 197 is2=\E[1*q\E[2!t\E[7!t\E[=4;101;119;122l\E[=107;118;207h\E)1\E[1Q\EW\E[!y\E[!z\E>\E[0:0:32!r\E[0*w\E[w\E2\r\n\E[2;27!t, 198 kbs=\b, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, 199 kcuu1=\E[A, kdch1=\E^B\r, ked=\E^D\r, kf1=\EOP, 200 kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, 201 kich1=\E^A\r, kil1=\E^C\r, ll=\E[24H, mc0=\E[0i, 202 mc4=\E[4i, mc5=\E[5i, pfloc=\E[%p1%d;0u#%p2%s#, 203 pfx=\E[%p1%d;1u#%p2%s#, prot=\E[99m, rc=\E8, 204 rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM$<4>, 205 rmacs=^N$<1>, rmcup=\E[w\E2\r\n, rmir=\E4l, 206 rmkx=\E[!z\E[0;2u, rmso=\E[7!{, rmul=\E[4!{, sc=\E7, 207 sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, 208 sgr0=\E[m, smacs=^O$<1>, smcup=\E[=4l\E[1;24w\E2\r, 209 smir=\E1, smkx=\E[1!z\E[0;3u, smso=\E[7m, smul=\E[4m, 210 tbc=\E[2g, vpa=\E[%p1%{1}%+%dd, 211avt-rv-ns|concept avt in reverse video mode/no status line, 212 is1=\E[=103l\E[=205h, flash=\E[=205l$<50>\E[=205h, use=avt-ns, 213avt-w-ns|concept avt in 132 column mode/no status line, 214 is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w, use=avt-ns, 215avt-w-rv-ns|concept avt in 132 column mode/no status line, 216 is1=\E[=103h\E[=205h, smcup=\E[H\E[1;24;1;132w, 217 flash=\E[=205l$<50>\E[=205h, use=avt-ns, 218# Info: 219# Concept AVT with status line. We get the status line using the 220# "Background status line" feature of the terminal. We swipe the 221# first line of memory in window 2 for the status line, keeping 222# 191 lines of memory and 24 screen lines for regular use. 223# The first line is used instead of the last so that this works 224# on both 4 and 8 page AVT's. (Note the lm#191 or 192 - this 225# assumes an 8 page AVT but lm isn't currently used anywhere.) 226# 227avt+s|concept avt status line changes, 228 is3=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n, 229 tsl=\E[2;1!w\E[;%p1%dH\E[2K, fsl=\E[1;1!w, eslok, hs, 230 dsl=\E[0*w, lm#191, smcup=\E[2;25w\E2\r, rmcup=\E[2w\E2\r\n, 231 .wind=\E[%i%p1%{1}%+%d;%p2%d;%p3%{01}%+%d;%p4%{01}%+%dw, 232avt|c5|avt-s|conceptavt|concept-avt| avt w/4 or 8 pages/80 columns, 233 use=avt+s, use=avt-ns, 234avt-rv|avt-s-rv|avt-rv-s|concept avt in reverse video w/status line, 235 is1=\E[=103l\E[=205h, flash=\E[=205l$<50>\E[=205h, 236 use=avt+s, use=avt-ns, 237avt-w|avt-w-s|concept avt in 132 column mode w/with status line, 238 is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w, 239 use=avt+s, use=avt-ns, 240avt-w-rv|avt-rv-w|avt-w-s-rv|avt-w-rv-s|avt 132 cols w/status line, 241 is1=\E[=103h\E[=205h, smcup=\E[H\E[1;24;1;132w, 242 flash=\E[=205l$<50>\E[=205h, 243 use=avt+s, use=avt-ns, 244# HDS 200 terminals 245# 246# if=hds give 3 screens of 24 lines each 247# sets up for 3 inputs. F10 selects input channel 1 248# F11 selects input channel 2 249# F12 selects input channel 3 250# if=hds3 give 3 screens-> F10 17 lines F12 has 7 lines and F11 has 24 lines 251# sets up for 3 inputs. F10 selects input channel 1 252# F11 selects input channel 3 253# F12 selects input channel 2 254# 255# 256hds200|generic hds 200, 257 am, xenl, mir, ul, xon, km, nxon, hs, 258 cols#80, lines#24, xmc#1, it#8, wsl#60, 259 bel=^G, cr=\r, clear=\E[H\E[J, 260 el=\E[K, ed=\E[J, cup=\E[%i%p1%02d;%p2%02dH, 261 cud1=\n, home=$<8*>\E[H, cub1=\b, 262 cnorm=\E[=119l, cuf1=\E[C, cuu1=\E[A, 263 cvvis=\E[=119h, dch1=\E[P, dl1=\E[M, 264 smir=\E1, smso=\E[7m, smul=\E[4m, 265 rmir=\E1, rmso=\E[m, rmul=\E[m, 266 is1=\E[1*q\E[2!t\E[7!t\E[=4;101;103;119l\E[=107;118;207h\E)1\E[1Q\EW\E[0:0:32!r\E2\r\n, if=/usr/share/lib/tabset/hds, il1=\E[L, 267 kbs=\b, nel=\r\n, ind=\n, 268 kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, 269 kcuu1=\E[A, khome=\E[H, 270# 271# 272hds17|hds 17, 273 lines#17, 274 bel=^G, cr=\r, cud1=\n, 275 cub1=\b, if=/usr/share/lib/tabset/hds3, kbs=\b, 276 kcud1=\n, kcub1=\b, nel=\r\n, 277 ind=\n, use=hds200, 278hds24|hds 24, 279 lines#24, 280 bel=^G, cr=\r, cud1=\n, 281 cub1=\b, if=/usr/share/lib/tabset/hds3, kbs=\b, 282 kcud1=\n, kcub1=\b, nel=\r\n, 283 ind=\n, use=hds200, 284hds7|hds 7, 285 lines#7, 286 bel=^G, cr=\r, cud1=\n, 287 cub1=\b, if=/usr/share/lib/tabset/hds3, kbs=\b, 288 kcud1=\n, kcub1=\b, nel=\r\n, 289 ind=\n, use=hds200, 290hds-w|hds wide, 291 cols#132, 292 bel=^G, cr=\r, cud1=\n, 293 cub1=\b, kbs=\b, kcud1=\n, 294 kcub1=\b, nel=\r\n, ind=\n, 295 use=hds200, 296hds17-w| hds 17 wide, 297 cols#132, 298 bel=^G, cr=\r, cud1=\n, 299 cub1=\b, kbs=\b, kcud1=\n, 300 kcub1=\b, nel=\r\n, ind=\n, 301 use=hds17, 302hds24-w|hds 24 wide, 303 cols#132, 304 bel=^G, cr=\r, cud1=\n, 305 cub1=\b, kbs=\b, kcud1=\n, 306 kcub1=\b, nel=\r\n, ind=\n, 307 use=hds24, 308hds7-w|hds 7 wide, 309 cols#132, 310 bel=^G, cr=\r, cud1=\n, 311 cub1=\b, kbs=\b, kcud1=\n, 312 kcub1=\b, nel=\r\n, ind=\n, 313 use=hds7, 314